從 Android 10 (API 級別 29) 以上版本開始,您可以使用
MediaCodecInfo
顯示轉碼器的詳細資訊:
isSoftwareOnly()
- 如果轉碼器僅在軟體中執行,則傳回 true。軟體轉碼器則不會 保證算繪效能。
isHardwareAccelerated()
- 如果轉碼器透過硬體加速,則傳回 true。
isVendor()
- 如果裝置供應商提供轉碼器,則傳回 true 或 false (如有提供) Android 平台提供的資源
isAlias()
MediaCodecList
可能包含與相同基礎轉碼器的其他項目 使用替代轉碼器名稱 (別名/別名)。如果 這個項目的轉碼器是其他轉碼器的別名。
此外,
MediaCodec.getCanonicalName()
敬上
會傳回透過別名建立的轉碼器的基礎轉碼器名稱。
成效重點
效能點是指轉碼器在特定
包括高度、寬度和畫面更新率例如:UHD_60
效能點
代表以 60 個影格轉譯的 UHD 超高畫質影片 (3840x2160 像素)
內建高可用性、全域同步一致性
以及每秒都有大量的輸入和輸出作業
方法
MediaCodecInfo.VideoCapabilities.getSupportedPerformancePoints()
敬上
會傳回
PerformancePoint
編碼器可轉譯或擷取的項目
您可以呼叫,檢查特定 PerformancePoint
是否涵蓋其他 PerformancePoint
PerformancePoint.covers(PerformancePoint)
。
舉例來說,UHD_60.covers(UHD_50)
會傳回 true。
系統會為所有硬體加速轉碼器提供效能點清單。 如果轉碼器即使未達到最低標準,這個欄位也可能是空白清單 效能點
請注意,已升級至 Android 10 (API 級別 29) 以上版本的裝置
更新供應商圖片不會取得效能點資料,因為
數據來自廠商 HAL在本例中,getSupportedPerformancePoints()
會傳回空值。