FFMPEG常见命令备忘

FFMPEG查看帮助信息,查看帮助信息后,可以查看支持编码器,解码器,协议等。

ffmpeg.exe -help

查看支持的编码器(也就是-vcodec后面可以接的参数):
ffmpeg -codecs

查看支持的封装格式(也就是-f后面可以接的参数):
ffmpeg -formats

查看支持的滤镜(也就是-vf后面可以接的参数):
ffmpeg -filters

如何提高解码速度:

1.GPU硬件解码

2.FFMPEG里面实现了多线程并行解码,设置多线程同时对多帧进行解码。包括帧级多线程解码和片级多线程解码。并行解码需要解决依赖问题。如同时对I帧和P帧解码,P帧依赖I帧,怎么办?FFMPEG采用的算法如下:

      1.每个线程解码玩一行最后宏块,更新解码高度H1

       2.B/P帧解码宏块时,需要把待解码宏块高度H2与H1比较,H2>=H1,线程阻塞等待。

       3.每个线程更新解码高度时,阻塞线程都进行高度比较。

代码中设置如下即可:

avcodec_alloc_context3(NULL);
avcodec_parameters_to_context(pCodecCtx, pFormatCtx->streams[Stream]->codecpar);
Codec = avcodec_find_decoder(pCodecCtx->codec_id);
 
pCodecCtx->thread_count = 4;
pCodecCtx->thread_type = FF_THREAD_FRAME;
//pCodecCtx->thread_type = FF_THREAD_SLICE;
 
avcodec_open2(pCodecCtx, pCodec, NULL);

        

 

 

Excel折线图分析数据:最近做视频编码质量评断,把YUV数据编码,然后比较不同编码参数下,视频编码质量。

1.编码YUV1数据,解码后得到YUV2数据,然后计算YUV1和YUV2的PSNR值。

2.计算结果保存到TXT文档中,然后在EXCEL中导入TXT文档。“数据”-->"自文本"。

3.编码YUV1数据,解码后得到YUV3数据,然后计算YUV1和YUV3的PSNR值。

4.计算结果保存到TXT文档中,然后在EXCEL中导入TXT文档。“数据”-->"自文本"。

5.选择需要制表的数据区域,“插入”-->"推荐图表",选择折线图即可。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值