《seo关键解码:网站营销与搜索引擎优化》下载(基于不同平台的优化,arm如何正确使用_seek)
优采云 发布时间: 2022-01-15 00:14《seo关键解码:网站营销与搜索引擎优化》下载(基于不同平台的优化,arm如何正确使用_seek)
不同版本有很大差异,注意你的版本是不是最新版
解码优化:
1)组装IDCT,优化VLD的实现
2)MB按照ARM9 cache & cache line的大小进行分组,这样可以同时处理多个MB
也就是做VLD--->IDCT-->MC--.......
一个周期内有多个 MB
3)优化关键代码段的内存访问(MC)
4)不要使用FFmpeg内置的img_convert()进行yuv2rgb转换
5)其他更深层次的优化细节可能会告诉你,但目前还不行!
基于不同平台的优化、指令集优化、arm
如何正确使用av_seek_frame实现视频拖拽
time=5;//拖放到5秒的位置
我还没有研究过 MMX 优化,但是 /libavcodec/x86 有很多针对 x86 平台的汇编优化,你可能可以使用。另外,不要局限于FFMPEG,GOOGLE推出的OPENCORE中的H264*敏*感*词*比FFMPEG效率高很多,你可以试试这个base :)
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 安装方法:
通过 Macports 下载并安装 yasm:
[普通]
sudoportinstallyasm
yuv转rgb 如果是iPhone 3GS,可以使用GPU进行转换输出
版主找到解决方法了吗?如果用opengl画图,就得转成rgb格式,这个过程很费时间
但是一般的LCD控制器支持YUV420或者YUV422输入数据,可以通过调用系统API来显示。比如Mac OS X的Core Image接口可以接受YUV420的数据类型
多个纹理与纹理格式无关,取决于具体实现。您可以将 YUV 数据作为 RGB 加载到 GLSL 中,然后着色器将其转换为 RGB 进行显示。
使用查表法将YUV转为RGB输出
OpenGl 中的 YUV 显示
sws_scale函数在任何平台上都很慢(相对而言)
我在 ARM9 上运行了 sws_scale,结果更加可怕,而且根本不起作用。后来改用自己写的YUV2RGB函数,有了质的飞跃,但还是达不到要求(解码转RGB用了40多毫秒)显示模式带用了70多毫秒到 SDL 表面),它可以每秒播放 8-10 帧,或者说没有声音。痛苦中,为什么FFMPEG不能发布已经优化好的转码版本,我们不要为ARM优化而挣扎。
通过sdl显示视频的过程如下: SDL_Init -- SDL_SetVideoMode -- SDL_CreateYUVOverlay -- SDL_LockYUVOverlay -- SDL_DisplayYUVOverlay -- SDL_UnlockYUVOverlay 。
主线程没有调用到SDL_DisplayYUVOverlay。
sws_scale是新版ffmpeg的一个函数,替代了img_convert
转载于: