BEFORE IT REACHES THE DASHBOARD
Video formats for iPhone and CarPlay. Settled on the phone, shown on the screen.
Video formats for iPhone and CarPlay are settled by the phone, before the car display is involved. MP4, M4V, MOV and M3U8 reach the system decoder in iOS. MKV, AVI, WebM, FLV, TS, MTS, M2TS, WMV, MPG, MPEG, VOB and OGV reach Dashow’s additional decoding path. Anything else is decided when the file opens.
- 01
CarPlay video formats are settled on the phone: MP4, M4V, MOV and M3U8 go to the system decoder, twelve more containers to the additional decoding path.
- 02
An extension chooses which decoder opens first. The codecs inside decide what you see and hear.
- 03
A video reached over SMB always takes the additional decoding path, whatever its extension.
How it works
Your quick start
- 01
Read the extension
The letters after the dot say which decoder the file reaches first.
- 02
Find its row below
The routing table puts every video format on the system decoder, the additional decoding path, or the decided-on-opening row.
- 03
Play it on the phone
Import from Files or Photos, or browse the folder on your NAS over SMB, then confirm picture and sound.
- 04
Then choose the display
With the car connected and parked, select the display in Cast to Car and start.
Which video formats play on a CarPlay display?
A parked hour, a screen in the dash, and a file that will not open. Settle the file first. The format question and the CarPlay question are different ones: a file that opens on the phone has a picture ready for a car display while parked, and a file still at the decoder is a container question no screen can change.
Every iPhone carries a built-in video decoder. It opens a specific set of video formats, and Dashow adds a second decoding path for the containers it leaves alone. Apple’s support page for a media file that will not open covers the steps to try rather than the formats, so the table below gives the list, read from the code that routes each file by its extension.
The extension is a routing hint, not a promise.
An extension is a hint. It tells the app which decoder to open the file with, and nothing about what that decoder finds inside. A container is a wrapper: an MKV holds a video track, one or more audio tracks and often subtitle tracks, each encoded separately. Renaming the file changes the hint, not the contents.
This is why two files in the same video format behave differently on the same phone. Each carries its own combination of video codec, audio codec and text tracks, and each of those decodes on its own terms. The picture can arrive while an audio track stays quiet, or a text track sits in the menu waiting to be chosen. Three tracks, three outcomes.
MP4, M4V, MOV and M3U8 reach the system decoder.
Four extensions go to the decoder built into iOS: mp4, m4v, mov and m3u8. MP4 and MOV are close relatives. MOV is Apple’s QuickTime container and MP4 was standardized from it, so a clip recorded by the iPhone camera and a file downloaded from the web often hold the same H.264 or HEVC video under two different names.
HEVC belongs here. Apple’s own cameras default to HEVC, also called H.265, and iOS decodes it through the same system framework that handles H.264, so a 4K clip taken on the phone needs nothing added. M3U8 sits in this row for a different reason: HLS is Apple’s streaming format, and iOS reads the .m3u8 manifest natively.
Twelve more containers take the additional decoding path.
Twelve more video formats take the additional decoding path: mkv, avi, webm, flv, ts, mts, m2ts, wmv, mpg, mpeg, vob and ogv. Dashow carries a decoder of its own for them. These are the containers a download, a camcorder, a broadcast capture or an older archive tends to produce, and the file goes in as it is, with no conversion step and no second app to open it first.
One rule overrides the extension. A video reached over SMB always takes the additional decoding path, whatever its extension, so an MP4 on a NAS and the MKV beside it open the same way. There is no engine to choose. Dashow reads the name, opens the file, and moves to the other path when what it finds asks for it.
An unfamiliar extension is settled by opening the file.
A video format outside those two rows is settled on opening. The file answers for itself. Dashow opens it and takes the path that reads it, which is how a .divx, a .rmvb or a file carrying no extension at all gets handled on its own merits. For one specific file, the quickest answer is to open it and watch ten seconds on the phone.
One screen reads the file for you. Open a local video’s Details and Dashow lists the duration, the display dimensions, the video and audio codecs, the file size and the embedded title, each read from the file on demand. A container stops being three letters there. The extension picked the route; the codec names are what it never told you.
Where to go from the row your file sits in.
Four pages pick up where the table stops. Two of them are about containers. The MKV guide opens a Matroska file and names what it carries, then explains why the same bytes open in one app and not another. The AVI page names every older container that takes the additional decoding path, and shows why a transport stream behaves differently from the rest.
Two more handle a single track. A picture with silence is an audio-codec question, answered on its own page. A subtitle file beside the movie is a naming question: the SRT page gives the exact name a .srt or .vtt file must take to pair with the video. Start from the row your video format sits in; the car display shows what the decoder already produced.
Where each extension goes
| Route | Extensions | What sends it there |
|---|---|---|
| Built into iOS | mp4, m4v, mov, m3u8 | The decoder built into iOS opens the file |
| Dashow’s second decoder | mkv, avi, webm, flv, ts, mts, m2ts, wmv, mpg, mpeg, vob, ogv | Dashow routes these containers to its own decoder |
| Decided when the file opens | Every other extension | The app reads the file and takes the path that opens it |
| Any video reached over SMB | Every extension, including mp4 | A share always takes the additional decoding path |
Dashow.





