• 大小: 35.86MB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-01-29
  • 语言: 其他
  • 标签: ffmpeg  ffmpeg资料  

资源简介

ffmpeg资料(全) ,整理了把网上可以找到的关于ffmpeg的大部分资料;

资源截图

代码片段和文件信息

#include 
#include “stdlib.h“
#include “avcodec.h“
#include “avformat.h“
#include “avutil.h“
#include “flvdec.h“

bool GetNextframe(AVFormatContext *pFormatCtx AVCodecContext *pCodecCtx int videoStream AVframe *pframe)
{
    static AVPacket packet;
    static int      bytesRemaining=0;
    static uint8_t  *rawData;
    static bool     fFirstTime=true;
    int             bytesDecoded;
    int             frameFinished;
    // First time we‘re called set packet.data to NULL to indicate it
    // doesn‘t have to be freed
    if(fFirstTime)
    {
        fFirstTime=false;
        packet.data=NULL;
    }
    // Decode packets until we have decoded a complete frame
    while(true)
    {
        // Work on the current packet until we have decoded all of it
        while(bytesRemaining > 0)
        {
            // Decode the next chunk of data
            bytesDecoded=avcodec_decode_video(pCodecCtx pframe
                &frameFinished rawData bytesRemaining);
            // Was there an error?
            if(bytesDecoded < 0)
            {
                fprintf(stderr “Error while decoding frame\n“);
                return false;
            }
            bytesRemaining-=bytesDecoded;
            rawData+=bytesDecoded;
            // Did we finish the current frame? Then we can return
            if(frameFinished)
                return true;
        }
        // Read the next packet skipping all packets that aren‘t for this
        // stream
        do
        {
            // Free old packet
            if(packet.data!=NULL)
                av_free_packet(&packet);
            // Read new packet
            if(/*av_read_packet*/av_read_frame(pFormatCtx &packet)<0)
                goto loop_exit;
        } while(packet.stream_index!=videoStream);
        bytesRemaining=packet.size;
        rawData=packet.data;
    }
loop_exit:
    // Decode the rest of the last frame
    bytesDecoded=avcodec_decode_video(pCodecCtx pframe &frameFinished 
        rawData bytesRemaining);
    // Free last packet
    if(packet.data!=NULL)
        av_free_packet(&packet);
    return frameFinished!=0;
}

void Saveframe(AVframe *pframe int width int height int iframe)
{
    FILE *pFile;
    char szFilename[32];
    int  y;

    // Open file
    sprintf(szFilename “frame%d.ppm“ iframe);
    pFile=fopen(szFilename “wb“);
    if(pFile==NULL)
        return;
    // Write header
    fprintf(pFile “P6\n%d %d\n255\n“ width height);
    // Write pixel data
    for(y=0; y        fwrite(pframe->data[0]+y*pframe->linesize[0] 1 width*3 pFile);
    // Close file
    fclose(pFile);
}
int main(/*int argc char *argv[]*/)
{
    AVFormatContext *pFormatCtx;
unsigned int i;
    int              videoStream;
    AVCodecContext  *pCodecCtx;
    AVCodec         *pCodec;
    AVframe         *pframe; 
    AVframe         *pframeRGB;
    int            

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    I.A....      6197  2011-10-28 14:07  ffmpeg\a.cpp

     文件     192359  2007-07-13 23:18  ffmpeg\FFMpeg SDK 开发手册.pdf

    I.A....    251655  2011-10-28 14:04  ffmpeg\ffmpeg+tutorial\ffmpeg+tutorial.pdf

    I.A....   4561034  2011-10-28 14:02  ffmpeg\ffmpeg+tutorial\ffmpegtutorial.rar

    I.A....   3900263  2011-10-27 10:36  ffmpeg\FFmpeg-full-SDK-3.2.rar

     文件   11995722  2011-10-28 14:36  ffmpeg\ffmpeg_vc(ffplay).rar

    I.A....   1664523  2011-10-28 14:03  ffmpeg\ffmpeg_初级教程.rar

    I.A....    102265  2011-10-28 14:01  ffmpeg\ffmpeg添加到vc工程详解.pdf

    I.A....    220775  2011-10-28 14:06  ffmpeg\ffmpeg的编译,API以及相关应用等资料ffmpeg_related.rar

    I.A....   4867577  2011-10-28 14:06  ffmpeg\sjwffmpeg.rar

     文件     116634  2011-10-28 15:21  ffmpeg\TestFFmpeg\Debug\StdAfx.obj

     文件    1423235  2011-10-28 15:21  ffmpeg\TestFFmpeg\Debug\StdAfx.sbr

     文件    3728384  2011-10-28 15:25  ffmpeg\TestFFmpeg\Debug\TestFFmpeg.bsc

     文件      14771  2011-10-28 15:21  ffmpeg\TestFFmpeg\Debug\TestFFmpeg.obj

     文件    7265508  2011-10-28 15:21  ffmpeg\TestFFmpeg\Debug\TestFFmpeg.pch

     文件     312320  2011-10-28 15:25  ffmpeg\TestFFmpeg\Debug\TestFFmpeg.pdb

     文件       2588  2009-08-27 17:56  ffmpeg\TestFFmpeg\Debug\TestFFmpeg.res

     文件          0  2011-10-28 15:21  ffmpeg\TestFFmpeg\Debug\TestFFmpeg.sbr

     文件      52929  2011-10-28 15:25  ffmpeg\TestFFmpeg\Debug\TestFFmpegDlg.obj

     文件          0  2011-10-28 15:25  ffmpeg\TestFFmpeg\Debug\TestFFmpegDlg.sbr

     文件     263168  2011-10-28 15:25  ffmpeg\TestFFmpeg\Debug\vc60.idb

     文件     421888  2011-10-28 15:25  ffmpeg\TestFFmpeg\Debug\vc60.pdb

     文件        993  2007-08-09 10:23  ffmpeg\TestFFmpeg\include\adler32.h

     文件       9517  2007-08-09 09:33  ffmpeg\TestFFmpeg\include\allcodecs.h

     文件      95260  2009-08-27 13:06  ffmpeg\TestFFmpeg\include\avcodec.h

     文件      32928  2009-08-27 10:52  ffmpeg\TestFFmpeg\include\avformat.h

     文件       9406  2007-08-09 10:23  ffmpeg\TestFFmpeg\include\avio.h

     文件       3061  2007-08-09 10:23  ffmpeg\TestFFmpeg\include\avstring.h

     文件       6167  2007-08-12 10:23  ffmpeg\TestFFmpeg\include\avutil.h

     文件       1223  2007-08-09 10:23  ffmpeg\TestFFmpeg\include\base64.h

............此处省略57个文件信息

评论

共有 条评论