奸商们总是想在超低端的机器上做出中高端机器的效果,例如最廉价的LCD想做出高级LCD高分辨率的效果,这回又想去掉了DSP想用软解码做成DSP硬解码的MP4的播放效果。巧妇难为无米之炊,虽然现在播放MP4只能是1帧/s地播放,效果很差,但也没有办法。奸商多次反复要求,我就多次反复强调修改不了,最终奸商总算接受了显示,改为专门做特制的MP4(尺寸小质量差不用resize的播放速度快一些),在销售机器时演示这些特定的MP4来忽悠老百姓。等老百姓买回家,就发现上当了。
奸商不要求,自己还是可以研究一下的。我做了如下试验性的优化:
1、找来一个简单的JPG解码文件,将其添加到工程中,然后编译使其通过。如果有变量名冲突,加上一个static就可以了。播放MP4文件,其实就是播放一帧帧的JPEG文件。
2、将原来代码中的Jpeg解码函数替换成新的解码函数。原来的解码函数只留了一个接口,解码函数实体在lib里。要保证真的能解码了,才进行下一步。
3、将新添加那个Jpeg解码文件的函数和变量名放到ram里,那里跑会快一些。
效果:快是快了一些,但也没有快多少,跟硬解码的差距还是很大的,这样添加也没啥意义。
Jpeg软解码确实不如硬解码强
Jpeg软解码确实不如硬解码强
...