支援的格式

請參閱 ExoPlayer 支援的格式 網頁 媒體格式相同的載入、擷取和擷取限制 雖然 Transformer 並不支援 ExoPlayer 的隨附軟體解碼器模組

轉換器也需要 MediaCodec 進行編碼,且需為 Multix,或 mux:輸出媒體檔案,可限制支援的輸出格式。詳情請見 MediaCodec 視訊轉碼器 進一步瞭解編碼限制和 MediaMuxer 。僅限 Transformer 輸出 MP4 檔案。

根據預設,Transformer 會使用 MediaMuxer,但進行中 InAppMuxer 可選擇使用,避免 MediaMuxer 對 參考框架結構和支援的樣本格式預設的多工器會 在日後推出的版本中成為應用程式的多工器

圖片支援

轉換器會使用 BitmapFactory 來載入並解碼所有圖片資產,因此 Transformer 支援 BitmapFactory 的所有格式。詳情請見 圖片支援 。如果是多畫面格式 (例如 GIF),則請使用單一圖片 如果 DefaultAssetLoaderFactory 正確顯示,就會顯示來自容器的頁框

特殊格式

轉換器支援處理提供特殊用途的新媒體格式輸入 功能。

處理 HDR 影片

越來越多的裝置現在支援 HDR 影片 擷取,提供更生動且準確的資訊 色彩和亮度範圍

變壓器支援從 Android 13 (API 級別 33) 以上版本編輯 HDR 影片 安裝在需要編碼的裝置上編輯 HDR 影片時,不論使用任何 GL 影片效果需要處理 16 位元浮點色彩元件和 BT.2020。 色彩空間。HDR_MODE_KEEP_HDR 是建構項目時的預設模式 Composition。如果不支援 HDR 編輯功能,則會使用 Transformer 會改回使用 HDR_MODE_TONE_MAP_HDR_TO_SDR_USING_OPEN_GL

Android 支援將 HDR 轉換為 SDR (又稱為色調對應) 功能。 搭載必要解碼和 OpenGL 的裝置 (API 級別 29) 以上版本 聯絡。如果想將 HDR 媒體分享給其他應用程式或服務, 不支援擷取 HDR 內容如何使用 OpenGL 呼叫啟用色調對應功能 setHdrMode(HDR_MODE_TONE_MAP_HDR_TO_SDR_USING_OPEN_GL) 建立 Composition。從 Android 12 (API 級別 31) 以上版本,MediaCodec 也支援部分裝置 (包括所有執行中的裝置) 的色調對應功能 可拍攝 HDR 影片的 Android 13 以上版本。如要啟用色調對應功能,請使用 MediaCodec 呼叫 setHdrMode(HDR_MODE_TONE_MAP_HDR_TO_SDR_USING_MEDIACODEC)

處理慢動作媒體

慢動作影片會包含指示各片段速度的中繼資料 的編碼。壓平合併是指 和較慢動作的影片串流通訊 或慢速放慢速度,讓玩家即使在 就不會套用慢動作中繼資料

如要簡化慢動作串流,請使用 setFlattenForSlowMotion 建構工具 方法EditedMediaItem

Kotlin

val editedMediaItem =
    EditedMediaItem.Builder(inputMediaItem).setFlattenForSlowMotion(true).build()
val transformer =
    Transformer.Builder(context).addListener(transformerListener).build()
transformer.start(editedMediaItem, outputPath)

Java

EditedMediaItem editedMediaItem =
    new EditedMediaItem.Builder(inputMediaItem).setFlattenForSlowMotion(true).build();
Transformer transformer =
    new Transformer.Builder(context).addListener(transformerListener).build();
transformer.start(editedMediaItem, outputPath);

這樣一來,就能播放慢動作影片,不必擔心 處理這些特殊格式您只需要儲存並播放 影片的簡化版本,而非原始影片。