- 為什麼我無法透過試用版應用程式存取本機檔案?
- 為什麼在特定裝置上匯出失敗?
- 變壓器是否支援遠端媒體轉換 (或錄製)
- Transformer 是否支援 8K 輸入?
- Transformer 與平台相容的媒體轉碼有何關係?
- 如何縮短匯出延遲時間或增加處理量?
為什麼我無法透過試用版應用程式存取本機檔案?
Android 11 的限定範圍儲存空間強制執行措施 (API 級別 30) 禁止直接存取檔案系統。在 只要新增管理外部 IP 位址的 儲存空間權限,包括:
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
然後透過 ADB 授予權限:
adb shell appops set --uid androidx.media3.demo.transformer \ MANAGE_EXTERNAL_STORAGE allow
為什麼在特定裝置上匯出失敗?
請針對 Media3 相關問題回報問題 智慧手環,提供足夠的資訊 即可重現問題。可新增裝置相關問題的解決方法, 持續改善相容性
變壓器是否支援遠端媒體轉換 (或錄製)?
轉換器支援遠端漸進式串流,包括媒體檔案容器 例如 MP4
當網路狀況非常不良時,匯出作業可能會因為緩衝處理而失敗
遠端媒體的遠端媒體中觸發過長的觸發檢查
以找出管道停滯不前您可透過以下方式覆寫預設行為:
在 Transformer.Builder
上設定 maxDelayBetweenMuxerSamplesMs
:
Kotlin
Transformer.Builder(context) .setMaxDelayBetweenMuxerSamplesMs(C.TIME_UNSET) .build()
Java
new Transformer.Builder(context) .setMaxDelayBetweenMuxerSamplesMs(C.TIME_UNSET) .build();
傳入 C.TIME_UNSET
會完全移除逾時,但如果您的應用程式執行
遇到MediaCodec
困難的晶片組時,建議設定更大的非零
逾時。
轉換器是否支援 8K 輸入?
Transformer 以跨格式的方式執行,因此不受限制 處理 8 千部影片,但裝置上的硬體功能可能意味著 無法匯出。例如,即使裝置可拍攝 8K 內容 您可能會因為超過 可用的硬體轉碼器或 RAM 資源。
Transformer 與平台相容的媒體轉碼有何關係?
相容媒體轉碼 是 Android 12 (API 級別 31) 的 Android 平台功能,可在 媒體檔案,最長可達一分鐘。如果發生以下情況: 選擇使用這項功能,讀取格式不相容的媒體檔案 都會視需要進行轉碼,然後快取結果供日後讀取 作業。
Transformer 也支援 格式 轉換,但 可做為支援資料庫使用,而且應用程式可以完全掌控 以及轉碼作業
如何縮短匯出延遲時間或增加處理量?
轉換器仰賴 MediaCodec
來進行硬體加速解碼和
以及處理影片影格的 OpenGL。我們根據
轉換器的處理量上限因素是硬體
MediaCodec
編碼器處理量,適用於未產生繁重影響的用途
和資料處理之間這可能也會以相同方式影響其他導入作業。適用對象
例如,平台相容的轉碼功能
Transformer。
試用版應用程式的偵錯預覽功能會大幅降低處理量,因此請先關閉 透過預先發布版應用程式的發布子版本進行測試,取得 實現實際的效能概念