3

致力于实现 mediamuxer 类。它接受来自 mediacodec 类的输入(一个音频和一个视频)。但是在尝试为“video/mp4”编码时抛出错误

代码:

String mime = MimeTypeMap.getSingleton()
                .getMimeTypeFromExtension("mp4");
        codec = MediaCodec.createEncoderByType(mime);

错误:

Unable to instantiate a decoder for type 'video/mp4'

请注意,错误是针对解码器的,调用是创建编码器。

我可能会在一分钟内弄清楚这一点,但它会为遇到此问题的任何其他人提供。

4

1 回答 1

6

经过大量摸索后,我发现它已记录在案,Android 推荐了媒体格式,但是按照dbrofadden的示例,MediaMuxer 采用以下类型的 MediaEncoder 输入来创建一个基本的 H.264 流并将其复用到一个 MP4 文件中:

private static final String VIDEO_MIME_TYPE = "video/avc";
private static final String AUDIO_MIME_TYPE = "audio/mp4a-latm";
于 2013-09-24T20:53:01.417 回答