Rahul Sharma (Editor)

M3U

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Filename extensions
  
.m3u, .m3u8

Type of format
  
Playlist

Internet media type
  
various; see ยง Internet media types

Extended to
  
HTTP Live Streaming playlist

M3U is a computer file format for a multimedia playlist. One common use of the M3U file format is creating a single-entry playlist file pointing to a stream on the Internet. The created file provides easy access to that stream and is often used in downloads from a website, for emailing, and for listening to Internet radio.

Contents

Although originally designed for audio files, such as MP3, it is commonly used to point media players to audio and video sources, including online sources. M3U was originally developed by Fraunhofer for use with that company's Winplay3 software, but numerous media players and software applications now support the format.

File format

There is no formal specification for the M3U format; it is a de facto standard.

An M3U file is a plain text file that specifies the locations of one or more media files. The file is saved with the "m3u" filename extension if the text is encoded in the local system's default non-Unicode encoding (e.g., a Windows codepage), or with the "m3u8" extension if the text is UTF-8 encoded.

Each entry carries one specification. The specification can be any one of the following:

  • an absolute local pathname; e.g., C:My MusicHeavysets.mp3
  • a local pathname relative to the M3U file location; e.g. Heavysets.mp3
  • a URL.
  • Extended M3U

    The M3U file can also include comments, prefaced by the "#" character. In extended M3U, "#" also introduces extended M3U directives.

    The following are M3U extensions:

    M3U8

    The Unicode version of M3U is M3U8, which uses UTF-8-encoded characters. M3U8 files are the basis for the HTTP Live Streaming (HLS) format originally developed by Apple to stream video and radio to iOS devices, and which is now a popular format for Dynamic Adaptive Streaming over HTTP (DASH) in general.

    The current proposal for the HLS playlist format uses UTF-8 exclusively and does not distinguish between the "m3u" and "m3u8" file name extensions.

    Internet media types

    The only Internet media type registered for M3U and M3U8 is application/vnd.apple.mpegurl, registered in 2009 and only referring to the playlist format as used in HLS applications.

    The current proposal for the HLS playlist format acknowledges two media types which it treats as equivalent: application/vnd.apple.mpegurl and audio/mpegurl. Likewise, these are the two types recommended for HLS use by Microsoft.

    For non-HLS applications, no media types were standardized or registered with the IANA, but a number of media types are nonetheless associated with the historical and ongoing use of the M3U and M3U8 formats for general playlists:

  • application/mpegurl
  • application/x-mpegurl
  • audio/mpegurl
  • audio/x-mpegurl
  • These types, plus application/vnd.apple.mpegurl and application/vnd.apple.mpegurl.audio, are supported for HLS applications by (for example) Microsoft's Windows 10 and Internet Explorer 9, and LG's WebOS.

    Examples

    Example 1

    This is an example of an extended M3U file on the Windows platform. Sample.mp3 and Example.ogg are the media files. 123 and 321 are the lengths in seconds. A length of -1 or 0 may be used when the media file is a streaming file, as there is no actual, predefined length value. The value after the length is the title to be shown, which is generally the same as the location of the file which is on the second line. On the Mac OS X and Linux platforms, Unix paths are used.

    #EXTM3U #EXTINF:123, Sample artist - Sample title C:Documents and SettingsIMy MusicSample.mp3 #EXTINF:321,Example Artist - Example title C:Documents and SettingsIMy MusicGreatest HitsExample.ogg
    Example 2

    This example shows how to create an m3u file linking to a specified directory (for example, a flash drive, or CD-ROM). The m3u file should contain only one string: the path to the directory. After starting, the media player will play all contents of the directory:

    C:Music
    Example 3

    Here is another example, using relative format. The M3U file is placed in the same directory as the music, and directories must be preserved when moving the playlist to another device if subdirectories are used. This method is more flexible, as it does not rely on the file path staying the same.

    This is the same file as above, saved as sample.m3u in C:Documents and SettingsUserMy Music

    #EXTM3U #EXTINF:123, Sample artist - Sample title Sample.mp3 #EXTINF:321,Example Artist - Example title Greatest HitsExample.ogg

    This format in an M3U allows copying to another device for playback. All files and directories referred to must also be copied.

    Example 4

    Here is a mixed example:

    AlternativeBand - Song.mp3 ClassicalOther Band - New Song.mp3 Stuff.mp3 D:More MusicFoo.mp3 ..Other MusicBar.mp3 http://emp.cx:8000/Listen.pls http://www.example.com/~user/Mine.mp3

    Notes:

  • Alternative and Classical are sub-directories of the directory that this playlist is stored in.
  • "Song" and "New Song" are in sub-directories of the directory that this playlist is stored in.
  • "Stuff" is in the same directory that the playlist is stored in.
  • "Foo" is in the specified (Windows) volume and directory, which may or may not be the same directory the playlist is in.
  • "Bar" is in a different directory at the same level as the playlist directory. The double-dots reference the parent directory of the playlist directory, then into the sub-directory "Other Music" to reach "Bar".
  • "Listen" is a Shoutcast stream.
  • "Mine" is an MP3 stored on a web server.
  • Example 5

    References to other M3U playlists, for example, are generally not well-supported.

    AnotherPlayList.m3u
    Example 6

    The following is an example of a M3U playlist file for "Jar of Flies" album by "Alice in Chains" that was created by Mp3tag with the following custom option settings:

  • playlist extended info format = "%artist% - %title%"
  • playlist filename format = "%artist%_%album%_00_Playlist.m3u"
  • tag to filename conversion format = "%artist%_%album%_$num(%track%,2)_%title%"
  • #EXTM3U #EXTINF:419,Alice in Chains - Rotten Apple Alice in Chains_Jar of Flies_01_Rotten Apple.mp3 #EXTINF:260,Alice in Chains - Nutshell Alice in Chains_Jar of Flies_02_Nutshell.mp3 #EXTINF:255,Alice in Chains - I Stay Away Alice in Chains_Jar of Flies_03_I Stay Away.mp3 #EXTINF:256,Alice in Chains - No Excuses Alice in Chains_Jar of Flies_04_No Excuses.mp3 #EXTINF:157,Alice in Chains - Whale And Wasp Alice in Chains_Jar of Flies_05_Whale And Wasp.mp3 #EXTINF:263,Alice in Chains - Don't Follow Alice in Chains_Jar of Flies_06_Don't Follow.mp3 #EXTINF:245,Alice in Chains - Swing On This Alice in Chains_Jar of Flies_07_Swing On This.mp3

    Tag editors

    The following tag editor software allows users to edit the ID3 tags in MP3 files, and has support for creating M3U files.

    Windows
  • mp3tag, puddletag.
  • Linux
  • puddletag
  • Media players

    Android
  • Astro Player, N7Player, IPTV Extreme (for Video Playlist).
  • Linux
  • Clementine, VLC media player, Audacious, Amarok, Banshee
  • Mac
  • iTunes, VLC media player
  • Windows
  • Windows Media Player, foobar2000, VLC media player, iTunes, Winamp, Audacious, Totem, JuK, PotPlayer, MediaMonkey, XMPlay
  • References

    M3U Wikipedia