FTL*_*lph 10 android video-encoding android-hardware galaxy-tab mediacodec
编辑:
似乎问题是这个设备不需要16个维度的多个...但是32的倍数.事实是,我仍然不知道如何确定什么量化为有问题的设备.这似乎使用qcom(我已经看到在Android 4.X上有问题,但这是Android 5.1.1).
我正在Android应用中编码视频.我正在使用Android MediaCodec这样做,将每帧的RGB转换为YUV并传入像素.
我使用的代码已经存在了一段时间,并且适用于我遇到过的任何设备.
一位用户带着一个错误报告来找我说他们的MP4很奇怪.该设备是三星T337A(Galaxy Tab 4).
这是MP4出口的样子:
注 - 出于任何奇怪的原因,它不会在所有分辨率下发生.它确认发生在768x432和1280x720,但不会发生在640x352(例如我的应用程序确保所有分辨率都可以被16整除).
在Nexus 5X(使用相同的半平面YUV格式)上,输出适用于所有分辨率.
所以这是该设备的东西,也许是我不知道的其他设备?
我查看了所有输出,它看起来正常并且与我上面提到的Nexus 5X相同(100%的时间都可以工作).
正在使用的MediaCodecInfo是OMX.qcom.video.encoder.avc,使用的颜色格式是2135033992(这是COLOR_FormatYUV420Flexible).所以基本上没什么奇怪的.
代码有点广泛,我会在必要时发布,但只是寻找为什么会发生这种情况的一般想法.我知道它是否更常见,但相同的代码适用于大量其他设备,所以一些时髦的东西正在发生......
| 归档时间: |
|
| 查看次数: |
322 次 |
| 最近记录: |