MPL File Documentation
Summary
An AVCHD Playlist File is a small binary index created by an AVCHD camcorder (Sony, Panasonic, Canon and others). It is not video: it only stores the order of, and references to, the actual .MTS/.M2TS clips, plus clip metadata. Its MIME type is application/octet-stream. To watch your footage you open the .MTS clips themselves (VLC plays them free); the .mpl exists so the camera and editing software can navigate the recording. Copying only the .mpl gives you nothing playable — copy the whole AVCHD folder.
Technical details
| Feature | Value |
|---|---|
| Full name | AVCHD Playlist File |
| File extension | .mpl (also .mpls) |
| MIME type | application/octet-stream |
| Format type | Binary playlist / index (references clips, holds no A/V data) |
| Base format | Blu-ray MPLS playlist structure |
| Developer | AVCHD consortium (Sony & Panasonic) |
| Introduced | 2006 (AVCHD format) |
| Open standard | No — proprietary AVCHD/BDMV specification |
| Byte order | Big-endian |
| Magic number | 4D 50 4C 53 (“MPLS”) at offset 0, followed by a 4-byte version (e.g. “0100”/“0200”) |
| Typical filename | 00000.MPL in the PLAYLIST folder, with a parallel 00000.CPI clip-info file |
| Folder location | PRIVATE/AVCHD/BDMV/PLAYLIST/ |
| References | .MTS/.M2TS clips in the STREAM folder via CLIPINF (.cpi) |
| Contains video/audio | No — pure metadata; not playable on its own |
| Underlying video codec | H.264/AVC video with AC-3 audio in an MPEG-2 transport stream |
| Related extensions | .mts, .m2ts, .cpi, .bdmv, .mpls, .tod |
| Reference | en.wikipedia.org/wiki/AVCHD |
What is an MPL file?
An .mpl file is the playlist of AVCHD, the high-definition camcorder recording format co-developed by Sony and Panasonic in 2006 and used by most consumer and prosumer tapeless camcorders (Sony Handycam, Panasonic, Canon, JVC). AVCHD records video as H.264/AVC with AC-3 audio inside an MPEG-2 transport stream, stored as .MTS or .M2TS clip files. The .mpl files sit in the PLAYLIST folder of the AVCHD structure and are an adaptation of the Blu-ray MPLS playlist format.
The single most important fact about an .mpl is that it contains no audio and no video. It is pure metadata: an ordered list of which clips belong to a recording session and references pointing at them, so the camera’s built-in player and editing software can present a shoot as one continuous program even though it is physically split across several .MTS files. AVCHD splits long recordings at roughly the 2 GB FAT32 file-size limit, and the playlist is what stitches those pieces back into the right order. Double-clicking an .mpl does nothing useful because there is nothing to play; the footage is elsewhere.
The AVCHD folder structure and where the MPL lives
An AVCHD recording is not a single file but a fixed folder tree on the memory card, and every part has a role. The .mpl only makes sense inside this tree.
PRIVATE
└─ AVCHD
└─ BDMV
├─ index.bdmv top-level index of the disc/card
├─ MovieObject.bdmv navigation objects
├─ PLAYLIST
│ └─ 00000.MPL the playlist (this file) — ordered clip refs
├─ CLIPINF
│ └─ 00000.CPI clip info: timing and stream details per clip
└─ STREAM
└─ 00000.MTS the actual H.264/AC-3 video+audio
The pieces cross-reference by matching five-digit numbers. A playlist in PLAYLIST points at one or more clip-info files in CLIPINF, and each clip-info file describes exactly one stream file in STREAM. This is why copying only the .mpl, or only the STREAM folder, breaks playback: the reference chain is severed. When archiving camcorder footage you copy the whole AVCHD/BDMV folder tree, not selected files.
The MPLS header: tag, version and section offsets
An AVCHD .mpl uses the Blu-ray MPLS layout and begins with a fixed tag. The first four bytes are ASCII MPLS (4D 50 4C 53), followed immediately by a four-byte version string, commonly 0100 or 0200. All multi-byte values in the format are big-endian. After the version, the header stores the byte offsets of the three main sections that follow, so a reader jumps straight to each rather than scanning.
offset size field
0x00 4 type_indicator "MPLS"
0x04 4 version_number "0100" / "0200"
0x08 4 PlayList_start_addr offset to the PlayList section
0x0C 4 PlayListMark_start_addr offset to the marks (chapters)
0x10 ... AppInfoPlayList, then PlayList, then PlayListMark
The offsets matter because the format is designed so a player can skip sections it does not need. The version bytes are the one detail that varies between camcorder vendors and firmware, which is why the MPLS tag is a reliable identifier but the trailing version is not something to hard-code against.
The PlayList section: PlayItems and clip references
The heart of the file is the PlayList section. It opens with a length field and reserved bytes, then a count of PlayItems and a count of SubPaths, then the PlayItems themselves in order. Each PlayItem is one entry in the running order and points at a clip.
PlayList
length (4 bytes)
reserved (2 bytes)
number_of_PlayItems (2 bytes)
number_of_SubPaths (2 bytes)
PlayItem[0]
clip_information_file_name -> matches a .CPI in CLIPINF (e.g. "00000")
clip_codec_identifier ("M2TS")
IN_time / OUT_time the used portion of the clip on the timeline
...
PlayItem[1] ...
A PlayItem does not embed video. It names a clip-information file by its five-digit stem, which in turn identifies the stream file, and it carries an IN_time and OUT_time giving the segment of that clip used in this playlist. By reading the PlayItems in order and following each to its clip, a player reconstructs the full recording as one continuous sequence. The PlayListMark section that follows records chapter marks as timestamps into the playlist.
Playing the footage and importing into an editor
To simply watch camcorder footage, ignore the .mpl and open the .MTS/.M2TS clips in the STREAM folder directly. VLC plays AVCHD clips for free. The playlist becomes useful when you import into editing software: point CyberLink PowerDirector, Apple iMovie, Adobe Premiere or Sony’s Catalyst Browse at the whole AVCHD folder, and the importer reads the .mpl and .cpi index to reassemble the clips in the correct order and preserve their metadata. That is the difference between opening a bare clip and importing a project: the playlist restores the shoot’s structure.
The frequent request to “convert MPL to MP4” is really a request to convert the underlying clips, because the .mpl holds no video to convert. Re-encode the .MTS files with HandBrake or VLC to produce MP4, or import the AVCHD folder into an editor and export a single MP4 that respects the playlist order.
Not every MPL is an AVCHD playlist
The .mpl extension is reused by unrelated software. Older versions of Maplesoft Maple saved math worksheets as .mpl/.mws; some media players, DAWs and karaoke apps use .mpl for their own text or binary playlists; and Microchip’s MPLAB IDE used .mpl as a project library list. If a file did not come off a camcorder memory card and does not begin with the MPLS tag, it is probably one of these other formats rather than an AVCHD playlist. The closely related .mpls extension and the .bdmv index file are part of the same Blu-ray/AVCHD family.
Frequently asked questions
How do I play an MPL file?
You do not play the .mpl itself; it is only a playlist index with no video in it. Open the actual clips (.MTS/.M2TS) in the STREAM folder with VLC, or import the whole AVCHD folder into a video editor, which uses the .mpl to keep the clips in order.
How do I convert MPL to MP4?
Convert the underlying .MTS/.M2TS clips, not the .mpl (it contains no video). Use HandBrake or VLC to re-encode the clips to MP4; to merge them in playlist order, import the AVCHD folder into an editor and export one MP4.
I only copied the .mpl file — where is my video?
The video is in AVCHD/BDMV/STREAM as .MTS/.M2TS files; the .mpl only points to them. Re-copy the entire AVCHD folder tree from the memory card so the references are intact.
References
- Wikipedia — AVCHD (format and folder structure)
- MultimediaWiki — MPL / MPLS playlist format
- VideoLAN — VLC (plays AVCHD .MTS/.M2TS clips)
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.