2013-09-24 35 views
2

正在努力實現媒體播放器類。它需要來自mediacodec類的輸入(一個音頻和一個視頻)。但是,試圖將編碼爲「視頻/ MP4」android媒體編解碼器無法實例化類型爲'video/mp4'的解碼器

代碼時拋出一個錯誤:

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

錯誤:

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

意識到錯誤是解碼器和呼叫建立編碼器。

我可能會在一分鐘內弄清楚這一點,但是對於遇到這種情況的任何人來說,這將是在這裏。

回答

6

很多摸索周圍,我發現它記錄在案,Android recomended media formats,但以下dbrofadden的例子後,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"; 
+1

需要使用如在所提及精確的字符串[Android開發支持](http://developer.android.com/reference/android/media/MediaCodec.html#createDecoderByType(java.lang.String中) )。像'「video/avc」' - H.264/AVC視頻 – Abhijeet

相關問題