全部指南

在檔案送上車機螢幕之前

iPhone 與 CarPlay 的影片格式。 在手機上分好,在車上螢幕放出來。

iPhone 與 CarPlay 的影片格式由手機決定,在畫面送上車上螢幕之前就分成兩條路線。MP4, M4V, MOV 與 M3U8 交給 iOS 內建的系統解碼器;MKV, AVI, WebM, FLV, TS, MTS, M2TS, WMV, MPG, MPEG, VOB 與 OGV 交給 Dashow 的額外解碼路線。其餘副檔名則在開啟檔案的當下,由內容本身決定走哪一條。

即將推出 App Store如何使用
產品示意圖,實際體驗依 App 與顯示裝置的相容性而異。
  • 01

    iPhone 原生的影片格式是 MP4, M4V, MOV 與 M3U8,另外十二種容器走額外解碼路線。

  • 02

    副檔名決定先由哪個解碼器開檔;裡面的編解碼器才決定你看到與聽到什麼。

  • 03

    透過 SMB 讀取的影片一律走額外解碼路線,不看副檔名。

如何使用

快速上手

  1. 01

    先看副檔名

    點後面的那幾個字母,說明檔案會先送到哪一個解碼器。

  2. 02

    在下面的表格找到它那一列

    路線表把每種影片格式歸到系統解碼器、額外解碼路線,或開檔時才決定的那一列。

  3. 03

    用 Dashow 開啟

    從「檔案」或「相簿」匯入,或直接瀏覽 NAS 上以 SMB 共用的資料夾。

  4. 04

    三種軌道都確認一次

    畫面、聲音與文字各自解碼,開播後三樣都看過聽過一遍。

iPhone 到底播得動哪些影片格式?

同一個資料夾、同一支手機,兩個檔案:一個開起來了,一個停在灰色畫面。差別很少出在手機。每支 iPhone 都內建了自己的影片解碼器,而那個解碼器只開啟固定的一組影片格式。Dashow 為它不碰的容器補上第二條解碼路線,再依副檔名替每個檔案選路。

Apple 說明媒體檔案無法開啟時,給的是一串可以嘗試的步驟,而不是一份格式清單。這一頁給的是清單。下面的表格就是 Dashow 實際使用的路線圖,讀自判斷副檔名的那段程式:四種副檔名走系統解碼器,十二種走額外路線。

副檔名只是路線提示,不是保證。

副檔名是提示。它告訴 App 該用哪個解碼器開檔,卻沒有說解碼器在裡面會找到什麼。容器是一層外包裝:一個 MKV 裝著一條影像軌、一條或多條音軌,通常還有字幕軌,每一條都各自編碼。改檔名只會改提示,不會改內容。

所以同樣的影片格式,兩個檔案在同一支手機上的表現會不一樣。每個檔案帶著自己的影像編解碼器、音訊編解碼器與文字軌,三者各自解碼。畫面可以先到,音軌卻安靜著,字幕軌則留在選單裡等你挑。三條軌道,三種結果。

MP4, M4V, MOV 與 M3U8 走系統解碼器。

四種副檔名交給 iOS 內建的解碼器:mp4, m4v, mov 與 m3u8。MP4 和 MOV 是近親。MOV 是 Apple 的 QuickTime 容器,MP4 由它標準化而來,所以 iPhone 相機錄下的片段,和你從網路上抓回來的檔案,常常裝著同一種 H.264 或 HEVC 影像,只是名字不同。

HEVC 也在這一列。Apple 自家相機預設就錄 HEVC,也就是 H.265,iOS 用處理 H.264 的同一個系統框架解碼它,所以手機拍的 4K 片段不必另外加什麼。M3U8 排在這一列的理由不同:HLS 是 Apple 的串流格式,iOS 原生就讀得懂 .m3u8 描述檔。

另外十二種容器,走額外解碼路線。

另外十二種影片格式走額外解碼路線:mkv, avi, webm, flv, ts, mts, m2ts, wmv, mpg, mpeg, vob 與 ogv。Dashow 為它們自備了一個解碼器。這些是下載、攝影機、電視側錄或舊備份最常產出的容器;檔案原樣進來,不必先轉檔,也不必再開一個 App 過一手。

有一條規則凌駕副檔名。透過 SMB 讀取的影片一律走額外解碼路線,不看副檔名,所以 NAS 上的 MP4 和它旁邊那個 MKV,開啟方式完全相同。沒有引擎要挑。Dashow 讀檔名、開檔案,發現內容另有需要時再換到另一條路線。

沒見過的副檔名,開檔當下就有答案。

兩列之外的影片格式,在開啟時決定。檔案自己回答。Dashow 把它打開,走讀得懂它的那一條,.divx, .rmvb,甚至完全沒有副檔名的檔案,都是這樣各憑內容處理。面對某一個特定檔案,最快的答案仍然是開起來看十秒。

有一個畫面會替你把檔案讀完。打開本機影片的「詳細資訊」,Dashow 會列出長度、解析度、影片編碼與音訊編碼、檔案大小,以及檔案內建的標題,每一項都在你需要時才從檔案讀出。容器在那裡不再只是三個字母:副檔名選了路線,編解碼器的名稱才是它一直沒說的事。

從你的檔案所在的那一列往下走。

表格停下的地方,有四頁接著寫。其中兩頁談容器。MKV 指南會打開一個 Matroska 檔案,說明它裝了什麼,再解釋同樣的位元組為什麼在某個 App 開得起來、換一個就不行。AVI 那一頁列出所有走額外解碼路線的舊容器,並說明傳輸串流為什麼和其他容器不一樣。

另外兩頁各自只處理一條軌道。有畫面沒聲音是音訊編解碼器的問題,有專頁回答。放在電影旁邊的外掛字幕則是命名問題:SRT 那一頁給出 .srt 或 .vtt 檔案必須取什麼名字,播放器才會把它和影片配成一對。就從你的影片所在的那一列開始。

每種副檔名走哪一條路線

每種副檔名走哪一條路線
路線副檔名為什麼走這一條
iOS 內建的解碼器mp4, m4v, mov, m3u8iOS 內建的解碼器直接開啟檔案
Dashow 的第二個解碼器十二個副檔名:mkv, avi, webm, flv, ts, mts, m2ts, wmv, mpg, mpeg, vob, ogvDashow 把這些容器交給自備的解碼器
開啟檔案時才決定其餘所有副檔名App 讀取檔案,走開得起來的那一條
透過 SMB 讀取的影片所有副檔名,包含 mp4網路共用一律走額外解碼路線
Apple:媒體檔案無法開啟或播放時Apple:iOS 的媒體框架Apple:HTTP 即時串流(HLS)

常見問題

想知道的,這裡有答案。

iPhone 可以播放 MKV 嗎?

可以,透過帶有第二條解碼路線的 App。MKV 會走 Dashow 的額外解碼路線,檔案原樣進來。容器裡的影像、音訊與字幕軌各自解碼,這也是為什麼一個 MKV 的表現會和另一個不同。

MOV 和 MP4 差在哪?

MOV 是 Apple 的 QuickTime 容器,MP4 由它標準化而來,兩者裝的資料非常接近,也都走系統解碼器。iPhone 相機錄下的片段是 MOV;同一段 H.264 或 HEVC 影像從網路上抓回來,通常是 MP4。

副檔名會決定影片能不能播放嗎?

它決定哪一個解碼器先開檔。你看到與聽到什麼,由裡面的編解碼器決定:影像軌、每一條音軌和任何文字軌都是分開編碼的。改檔名只改了路線提示,內容一個位元組也沒有動。

同樣格式的兩個檔案,為什麼表現不一樣?

影片格式講的是容器,不是編解碼器。副檔名相同的兩個檔案,可以裝著不同的影像編碼、不同的音訊編碼和不同的字幕格式。副檔名把兩者送上同一條解碼路線,接下來就看各自帶了什麼軌道。