2016-09-29 152 views
1

我想使用mediaCodec从openGl ES表面创建mp4视频。我有一个eglSurface,并且该eglSurface的源表面是MediaCodec输入表面。Android MediaCodec配置错误,崩溃

对于eglSurface,我可以有不同的尺寸,当一个尺寸(宽度或高度)太大时:例如width = 5000和height = 512,MediaCodec崩溃。

这是一个崩溃日志

android.media.MediaCodec$CodecException: Error 0xfffffc0e 
at android.media.MediaCodec.native_configure(Native Method) 
at android.media.MediaCodec.configure(MediaCodec.java:588) 

....

在某些设备(银河S7边缘),它没有崩溃,但一代videoView后不播放视频。

对于小尺寸(例如与屏幕尺寸),它的所有设备

回答

3

你的纹理的宽度过大的工作是正确的。 AFAIK,最大纹理尺寸为4096x4096。而且可能会比取决于设备的要低。

检查这个答案: https://stackoverflow.com/a/4528043/1353758

+0

谢谢。还有一个问题。 mediaCodec是否支持奇数个宽度和高度? –