使用Azure Media Service 製作視訊點播服務,在使用者端使用 Azure Media Player 播放器在 Edge 瀏覽器中播放視訊時候遇見無法播放的問題:
The video playback was aborted due to a corruption problem or because the video used features your browser did not support (0x20400003)
視訊播放已中止,原因是視訊損壞或瀏覽器不支援視訊使用的功能
但是在Google Chrome 瀏覽器中,它則能夠正常播放,對比截圖如下:
這是什麼情況呢?
使用AMP(Azure Media Player)播放器播放視訊遇見問題時,可以通過它的診斷紀錄檔(Diagnostics)來檢視具體的錯誤訊息.
第一步:進入AMP Demo站點(https://ampdemo.azureedge.net/azuremediaplayer.html ), 然後把視訊的manifest檔案URL放入到 頁面中的URL 輸入框中,點選Update Player。
第二步:點選Diagnostics按鈕,檢視其紀錄檔輸出,並且可以點選Download Verbose Log
在診斷紀錄檔中,發現在Edge中不能播放視訊的原因為:
[14:06:08.981] verbose: azureHtml5JS: workflowCoordinator: _setVideoElementSrcResolved
[14:06:08.981] verbose: azureHtml5JS: videoElementAdapter: Adapter buffer added: audio/mp4;codecs="mp4a.40.2" Adapter buffer total: 1
[14:06:08.982] error: azureHtml5JS: videoElementAdapter: Failed to add SourceBuffer to MediaSource: NotSupportedError: Failed to execute 'addSourceBuffer' on 'MediaSource': The type provided ('video/mp4;codecs="hev1.1.6.L93.90"') is unsupported.
[14:06:08.982] error: videojs: 2.3.11.2 (CODE:541065219 undefined) presentationWorkflowResolved: Failed to create source buffer for stream video, codec video/mp4;codecs="hev1.1.6.L93.90" [object Object]
[14:06:08.982] verbose: azureHtml5JS: workflowCoordinator: MediaSource.isTypeSupported() for video/mp4;codecs="hev1.1.6.L93.90"= false
而且,檢視視訊的mainfest檔案,其中也可以確認使用的 codecs 正是hev1.1.6.L93.90
據以上紀錄檔分析,報錯發生在載入 codec hev1.1.6.L93.90,錯誤資訊為「NotSupported」。
播放編解碼器(codecs = hev1.1.6.L93.90)需要使用HEVC Video. 因Google Chrome瀏覽器預設支援HEVC/H.265 video,但是在Edge瀏覽器中,預設不支援,需要安裝外掛 HEVC Video Extensions(https://apps.microsoft.com/store/detail/hevc-video-extensions-from-device-manufacturer/9N4WGH0Z6VHQ?hl=en-us&gl=us)
- 此外掛旨在利用某些較新裝置的硬體功能,以支援 4K 和超高清內容的裝置。
- 對於不具備 HEVC 視訊硬體支援的裝置,提供軟體支援,但播放體驗可能因視訊解析度和 PC 效能而異。
- 這些擴充套件還允許您在沒有基於硬體的視訊編碼器的裝置上編碼 HEVC 內容。
但是,當從Windows Store中安裝 HEVC Extensions時,會遇見無法安裝的問題:
替代從Windows Store(Windows應用商店)安裝HEVC外掛的辦法是:
1)網路中下載安裝原始檔,雙擊本地安裝。
2)如還不能播放,需要檢查 Edge瀏覽器設定,是否開啟「Use hardware acceleration when available」 設定。
3)重啟Edge,播放成功
【END】
當在複雜的環境中面臨問題,格物之道需:濁而靜之徐清,安以動之徐生。 雲中,恰是如此!