不同版本有很大的区别,注意你的版本是不是最新版
解码优化:
1)对IDCT汇编化,并优化VLD的实现
2)根据ARM9 cache & cache line的大小做MB的分组,使得每次可以同时处理多个MB
即 对多个MB在一个循环内做VLD--->IDCT-->MC--.......
3)优化关键代码段的内存访问(MC)
4)不要使用FFmpeg内置的img_convert()做yuv2rgb转换
5)其他更深层次的优化细节可能告诉你,目前也没有用!
基于不同平台的优化,指令集优化,arm
http://blog.csdn.net/huyinguo/article/details/4721212
如何正确使用av_seek_frame实现视频拖放
time=5;//拖放到5秒的位置
我对MMX优化没有研究,不过/libavcodec/x86里有很多针对X86平台的汇编优化,或许你可以用到。另外,不要局限在FFMPEG, 现在GOOGLE推出的OPENCORE里的H264解码器效率比FFMPEG高很多,可以试试这个base :)
http://blog.csdn.net/lius1984/article/details/4167392
ffmpeg->neon->版本-》asm
yasm是汇编编译器,因为ffmpeg中为了提高效率用到了汇编指令,比如MMX和SSE。解决这个问题方面有两个:
1、在网上下载一个yasm.exe并安装在mingw/bin下面,编译代码时你注意看,会发现asm后缀的文件用的编译器是yasm,c文件用的是gcc;
2、不使用汇编指令,在配置时加上,即./configure--disable-yasm
3、yasm下载(非必须):
用mac下的MacPorts下载yasm,前提是系统已经安装了MacProts
Macports安装方法:http://www.ccvita.com/434.html
通过Macports下载并且安装yasm:
sudoportinstallyasm
yuv转rgb 如果在iPhone 3GS上,可以利用GPU做转换输出
版主找到可行的方法了吗?用opengl画图的话也得转换成rgb格式的吧,而且这个过程很耗时
不过一般LCD控制器支持输入数据是YUV420或YUV422,可以调用系统API来显示。比如Mac OS X的Core Image接口就能接受YUV420的数据类型
多重纹理,和纹理格式可以说没啥关联,这个要看具体的实现。你可以把YUV数据当作RGB载入GLSL,然后shader转换为RGB显示。
用查表法,把YUV转成RGB输出
YUV display in OpenGl
http://stackoverflow.com/questions/1106741/need-help-with-yuv-display-in-opengl
在任何平台上执行sws_scale函数都慢(相对来说)
我在ARM9上执行sws_scale更吓人,根本没法用,后面改用自己写的YUV2RGB函数转换有了一个质的飞越,但是还是达不到要求(解码花了四十多MS,转RGB模式带显示到SDL表面花了七十多MS),每秒能播个8-10帧,还是不带播声音的说。痛苦中,为啥FFMPEG不能发布一个已经优化了的转码版本,让我们这些莱鸟不要在ARM的优化上挣扎呀。
http://www.rosoo.net/a/201003/8943.html
http://blog.csdn.net/linzhiji/article/details/6750791
通过sdl显示视频的过程如下:SDL_Init -- SDL_SetVideoMode -- SDL_CreateYUVOverlay -- SDL_LockYUVOverlay-- SDL_DisplayYUVOverlay -- SDL_UnlockYUVOverlay 。
没有调用主线程去SDL_DisplayYUVOverlay.
sws_scale是新版ffmpeg的函数,替代了img_convert
分享到:
相关推荐
ffmpeg源码优化解码和输出,支持移动端、电脑端各种设备的编译脚本。
一个优秀的ffmpeg视频解码器源代码,编译方式:Release.x64版本。 .windows下播放网络视频流低延时 .解码器支持网络摄像头、本地视频文件、电脑自带usb摄像头、桌面抓取方法。 .视频解码处理过程已经经过硬解码,及...
该解决方案包含了使用FFmpeg进行封装格式处理的各种例子: simplest_ffmpeg_demuxer:视音频分离器。 simplest_ffmpeg_demuxer_simple:视音频分离器(简化版)。 simplest_ffmpeg_muxer:视音频复用器。 simplest_...
针对ffmpeg的ac3实时编码处理,并介绍如何优化嵌入式CPU性能
使用ffmpeg库把mp4视频文件保存为一帧一帧的JPG格式图片
实现了一路Qt + FFmpeg RTSP视频流的解码,调用FFmpeg API实现,版本为FFmpeg 4.1.2。实测视频延迟为200ms 以内,已达到商业使用标准。
qt整合ffmpeg实现点击按钮调用ffmpeg从音频设备中读取音频数据优化版
vs2013工程,基于最新的ffmpeg2.6 和 SDL2.0 开发的简单音视频播放器,同步问题有待大改动,参考:http://www.cnblogs.com/Bonker/p/3998836.html
提取FFmpeg中H264解码库的代码,支持多线程和MMX、SSE和AVX等优化。
ffmpeg 推流源码,vs>2012版本可直接编译, 推流接口已经封装好,推流库也是源码,可以自己优化封装库,对于学习推流技术和调用都是很好的资料
本文将介绍开发环境的搭建、FFmpeg库的集成和使用、录音和播放功能的实现方法,以及应用的测试和优化。最终的目标是开发一个功能完善、稳定可靠的音视频处理应用,为用户提供高质量的录音和播放体验。 关键词:iOS...
FFmpeg深度插件全面支持电脑、安卓和苹果手机,不是那种用ffmpeg.exe载入线程的,那种只支持电脑,而我这个是全面支持PC(Windows)、Android和IOS系统,并且优化了图像和码率,效果非常好,亲测完美兼容UNITY5.X到...
使用当前2020最新版ffmpeg编译好的lib包,vs2019可编译的ffmpeg.exe的源码.下载后可直接编译调试,了解ffmpeg.exe实现的原理。...built with 用于 x86 的 Microsoft (R) C/C++ 优化编译器 19.27.29112 版
C# .net6.0+FFmpeg对海康摄像机进行m3u8拉流转码..中间对视频的拉流优化和拉流过程中掉线都有优化处理
彳 抝 对硕 士 学 位 论 文多 媒体 平 台 下 的 编码优化研究华 耀 波电 路 与 系 统吴 宗 泽副 教 授电 子 与 信 息 学 院论 文 提 交日
搭建ffmpeg+nginx+yasm 流媒体服务器低延迟,最低延迟两三秒,文档已清晰注明安装部署步骤,基本无需修改,直接可以使用,本文采用rtsp转hls流进行播放
built with 用于 x86 的 Microsoft (R) C/C++ 优化编译器 19.27.29112 版 包含类库avcodec.lib、avdevice.lib、avfilter.lib、avformat.lib、avresample.lib、avutil.lib、postproc.lib、swresample.lib、swscale....
优化后的ffmpeg源代码上传,供大家学习
ffmpeg-3.2.2的优化,正对GPU做的OPENCL性能优化。主要实现对数字图像的编码压缩。
windows下mingw编译的ffmpeg ver3.4, 多个不同版本,有全功能版本的,还有优化过的只含解码器的版本。