• 使用ffmpeg步骤(转)


    av_register_all();//初始化ffmpeg库,如果系统里面的ffmpeg没配置好这里会出错
     if (isNetwork) {
         //需要播放网络视频
         avformat_network_init();
     }
     avformat_open_input();//打开视频文件
     avformat_find_stream_info();//查找文件的流信息
     av_dump_format();//dump只是个调试函数,输出文件的音、视频流的基本信息了,帧率、分辨率、音频采样等等
     for(...);//遍历文件的各个流,找到第一个视频流,并记录该流的编码信息
     sws_getContext();//根据编码信息设置渲染格式
     avcodec_find_decoder();//在库里面查找支持该格式的解码器
     avcodec_open2();//打开解码器
     pFrame=avcodec_alloc_frame();//分配一个帧指针,指向解码后的原始帧
     pFrameRGB=avcodec_alloc_frame();//分配一个帧指针,指向存放转换成RGB后的帧
     avpicture_fill(pFrameRGB);//给pFrameRGB帧加上分配的内存;
     while(true)
     {
         av_read_frame();//读取一个帧(到最后帧则break)
         avcodec_decode_video2();//解码该帧
         sws_getCachedContext()sws_scale();//把该帧转换(渲染)成RGB
         SaveFrame();//对前5帧保存成ppm图形文件(这个是自定义函数,非API)
         av_free_packet();//释放本次读取的帧内存
     }

      

  • 相关阅读:
    JS数组的相关方法
    JS字符串的相关方法
    重回我的园区
    STM32F405串口UART4波特率注意问题
    NXP MCU开始学习中
    锂电池测试
    FPGA与STM32并口通信
    NXP LPC4350绝对强悍,准备入手学习
    SDRAM+FPGA+MCU
    STM32+FPGA通信成功
  • 原文地址:https://www.cnblogs.com/xihong2014/p/6700218.html
Copyright © 2020-2023  润新知