致力于实现mediamuxer类。它需要来自mediacodec类的输入(一个音频和一个视频)。但在尝试编码“video / mp4”时会抛出错误
代码:
String mime = MimeTypeMap.getSingleton()
.getMimeTypeFromExtension("mp4");
codec = MediaCodec.createEncoderByType(mime);
错误:
Unable to instantiate a decoder for type 'video/mp4'
注意错误是针对解码器的,并且调用是创建编码器。
我可能会在一分钟内解决这个问题,但是对于碰到这个问题的其他人来说,它会在这里。
答案 0 :(得分:6)
经过大量的摸索后,我发现它已记录在案Android recomended media formats,但在dbro和fadden的示例之后,MediaMuxer会采用以下类型的MediaEncoder输入来创建elmetary H.264流并将其复制到MP4文件中:
private static final String VIDEO_MIME_TYPE = "video/avc";
private static final String AUDIO_MIME_TYPE = "audio/mp4a-latm";