关闭

ffmpeg与新合成程序效率对比测试

发表于:2014-2-20 11:04

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Daisy_Echo    来源:51Testing软件测试网采编

  此合成程序是指的CUDA5.0所带的encoder与decoder两个软编和软解的样例代码进行合成为一个,直接把MPEG2文件转换成H264文件<原来的样例代码,编码是把yuv文件压缩成h264文件,解码是把mpeg2文件解压缩成yuv文件>
  找到了合成的程序崩溃原因,是new了一个新的数组以后,没有及时的delete,当数据量增大以后,由于循环调用,引起了内存分配不足,从而程序崩溃。
  解决方法:代码之前,用到内存拷贝时再new,拷贝完后紧接着delete,这样就解决了问题。
  测试了三组视频,
  这是周五测试的那次,有所补充和修改,其中Linux码率:200kb/s,  windows 码率4000kb/s, 结果如下:
  之所以文件大小不一样是因为比特率设置的不同,ffmpeg命令中如果不设置比特率,那么默认的是200kb/s,而windows编解码合成程序里面配置文件里设置的比特率是4000kb/s。
  先说一下比特率,比特率即码率,表示的是数据传输过程中单位时间传送的数据位数,常用的单位就是kbps,千位每秒。码率越大,表示精度越高,处理的文件感觉图像质量会越好点。但是码率与文件体积成正比,就是码率越大,处理后的图像占用空间越多,我们往往追求的是最少的码率表现最丰富的画面。
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号