2015-10-19 131 views
4

Android SDK提供用於從MP4文件提取元數據的類MediaMetadataRetriever。有沒有辦法使用MediaCodec API(不帶ffmpeg)編輯MP4元數據字段?我的任務是重置rotation字段。使用MediaCodec API編輯MP4元數據

+1

MediaCodec不在該級別上運行。您需要更高級別的API,例如MediaMuxer,其中包含'setOrientationHint()'方法。該類僅用於創建文件,而不是編輯它們。 – fadden

+0

嗨@fadden,謝謝你的回答。你知道任何其他方式來編輯MP4元數據而不使用ffmpeg嗎? –

+0

嗨你找到解決方案嗎?我有同樣的問題 – iMDroid

回答

1

mp4parser似乎是你在找什麼,雖然我不確定旋轉字段位於MP4中的位置(我對文件佈局不夠了解)。如果您知道元數據存儲在哪個盒子(或「原子」)中,那麼MetaDataReadMetaDataInsert類是非常清晰的讀寫數據示例(它們專門用於iTunes「名稱」/「標題」字段,但是一旦你知道它應該在什麼位置,寫其他的元數據的方式也是一樣的)。希望這可以幫助!

+1

Hi @ monkey_05_06,謝謝你的回答。我嘗試過使用mp4parser來完成這個任務,但是我在理解元信息如何以MP4格式存儲以及如何安全地提取它時遇到了一些問題。所以,我發現了一個替代解決方案,如何重置旋轉,這裏是:http://stackoverflow.com/questions/33242851/change-rotation-in-mediaformat –