Расширения имени файла | . m3u,.m3u8 |
---|---|
Тип интернет-СМИ | различный; см. § Типы Интернет-СМИ |
Первый выпуск | c. 1996 г. |
Тип формата | Плейлист |
Расширен до | Плейлист HTTP Live Streaming |
M3U ( URL-адрес MP3 или унифицированный указатель ресурсов уровня 3 группы экспертов по движущимся изображениям ) - это компьютерный формат файла для мультимедийного списка воспроизведения. Одним из распространенных способов использования формата файла M3U является создание файла списка воспроизведения с одной записью, указывающего на поток в Интернете. Созданный файл обеспечивает легкий доступ к этому потоку и часто используется для загрузки с веб-сайта, для отправки по электронной почте и для прослушивания Интернет-радио.
Хотя изначально он был разработан для аудиофайлов, таких как MP3, он обычно используется для указания медиаплеерам на аудио- и видеоисточники, включая онлайн-источники. M3U был первоначально разработан Fraunhofer для использования с их программным обеспечением Winplay3, но теперь этот формат поддерживают многочисленные медиаплееры и программные приложения.
Небрежное обращение со списками воспроизведения M3U стало причиной уязвимостей во многих музыкальных проигрывателях, таких как медиаплеер VLC, iTunes, Winamp и многих других.
Формальной спецификации формата M3U нет; это стандарт де-факто.
Файл M3U - это простой текстовый файл, в котором указывается расположение одного или нескольких файлов мультимедиа. Файл сохраняется с расширением имени файла «m3u», если текст закодирован в кодировке локальной системы по умолчанию, отличной от Unicode (например, кодовая страница Windows ), или с расширением «m3u8», если текст закодирован в UTF-8.
Каждая запись имеет одну спецификацию. Спецификация может быть любой из следующих:
Каждая запись заканчивается разрывом строки, отделяющим ее от следующей. Кроме того, некоторые устройства принимают только разрывы строк, представленные как CR LF
, но не распознают одиночный LF
.
Файл M3U также может включать комментарии, предваряемые знаком «#». В расширенном M3U "#" также вводит расширенные директивы M3U, которые заканчиваются двоеточием ":", если они поддерживают параметры.
Директива | Описание | Пример | Необходимый | Стандарт |
---|---|---|---|---|
#EXTM3U | заголовок файла, должен быть первой строкой файла | #EXTM3U | 1 × | да |
#EXTINF: | информация о треке: время выполнения в секундах и отображение заголовка следующего ресурса | #EXTINF:123,Artist Name – Track Title artist - title.mp3 | Нет | да |
дополнительные свойства в виде пар ключ-значение | #EXTINF:123 logo="cover.jpg",Track Title | Нет | IPTV | |
#PLAYLIST: | отображаемый заголовок списка воспроизведения | #PLAYLIST:Music TV | 1 × | IPTV |
#EXTGRP: | начать именованную группировку | #EXTGRP:Foreign Channels | Нет | IPTV |
#EXTALB: | информация об альбоме, в частности название | #EXTALB:Album Title (2009) | 1 × | AL, M3A |
#EXTART: | исполнитель альбома | #EXTART:Various | 1 × | AL, M3A |
#EXTGENRE: | жанр альбома | #EXTGENRE:Jazz Fusion | 1 × | AL |
#EXTM3A | плейлист для треков или глав альбома в одном файле | #EXTM3A | 1 × | M3A |
#EXTBYT: | размер файла в байтах | #EXTBYT:34124 | Нет | M3A |
#EXTBIN: | следуют двоичные данные, обычно объединенные в MP3 | #EXTBIN: | Нет | M3A |
#EXTENC: | кодировка текста, должна быть вторая строка файла | #EXTENC: UTF-8 | 1 × | Нет |
#EXTIMG: | обложка, логотип или другое изображение | #EXTIMG: front cover cover.jpg | Нет | Нет |
Apple использовала расширенный формат M3U в качестве основы для своей HTTP-трансляции в реальном времени (HLS), которая была задокументирована в документе Independent Submission Stream RFC в 2017 году как RFC 8216. В нем основной список воспроизведения ссылается на списки воспроизведения сегментов, которые обычно содержат URL-адреса для коротких частей мультимедиа. транслировать. Некоторые теги применяются только к первому типу, а некоторые - только к второму типу плейлистов, но все они начинаются с #EXT-X-
.
Директива | Пример | Описание |
---|---|---|
#EXT-X-START: | TIME-OFFSET=0 | |
#EXT-X-INDEPENDENT-SEGMENTS | переключить без параметров | |
#EXT-X-PLAYLIST-TYPE: | VOD или EVENT | |
#EXT-X-TARGETDURATION: | 10 | в секундах |
#EXT-X-VERSION: | 4 | |
#EXT-X-MEDIA-SEQUENCE: | 0 | |
#EXT-X-INDEPENDENT-SEGMENTS | переключить без параметров | |
#EXT-X-MEDIA: | NAME="English", TYPE=AUDIO, GROUP-, LANGUAGE="en", DEFAULT=YES, AUTOSELECT=YES, URI="english.m3u8" | |
#EXT-X-STREAM-INF: | BANDWIDTH=1123000, CODECS="avc1.64001f,mp4a.40.2 | параметры имеют либо одно комбинированное значение, либо одно для каждого потока, разделенные запятыми. |
#EXT-X-BYTERANGE: | 1024@256000 | |
#EXT-X-DISCONTINUITY | переключить без параметров | |
#EXT-X-DISCONTINUITY-SEQUENCE: | 2 | |
#EXT-X-KEY: | METHOD=NONE | |
#EXT-X-MAP: | URI=MediaInitializationSection | |
#EXT-X-PROGRAM-DATE-TIME: | 2010-02-19T14:54:23.031+08:00 | Формат ISO 8601 |
#EXT-X-DATERANGE: | ID=foo | |
#EXT-X-I-FRAMES-ONLY | переключатель i-frame без параметров | |
#EXT-X-SESSION-DATA: | DATA-ID=com.example.movie.title | |
#EXT-X-SESSION-KEY: |
| |
#EXT-X-ENDLIST | сигнал конца списка без параметров |
Unicode версия M3U является M3U8, который использует UTF-8 закодированы символы. Файлы M3U8 являются основой для формата HTTP Live Streaming (HLS), первоначально разработанного Apple для потоковой передачи видео и радио на устройства iOS, и который в настоящее время является популярным форматом для адаптивной потоковой передачи в целом.
Предложение 2015 года по формату списка воспроизведения HLS использует исключительно UTF-8 и не делает различий между расширениями имен файлов «m3u» и «m3u8».
Единственный тип Интернет-носителя, зарегистрированный для M3U и M3U8 application/vnd.apple.mpegurl
, зарегистрирован в 2009 году и относится только к формату списка воспроизведения, используемому в приложениях HLS.
Текущее предложение по формату списка воспроизведения HLS признает два типа мультимедиа, которые рассматриваются как эквивалентные: application/vnd.apple.mpegurl
и audio/mpegurl
. Аналогичным образом, эти два типа рекомендуются для использования HLS корпорацией Майкрософт.
Для приложений, не относящихся к HLS, типы носителей не были стандартизированы или зарегистрированы в IANA, но, тем не менее, ряд типов носителей связан с историческим и текущим использованием форматов M3U и M3U8 для общих списков воспроизведения:
application/mpegurl
application/x-mpegurl
audio/mpegurl
audio/x-mpegurl
Эти типы, плюс application/vnd.apple.mpegurl
и application/vnd.apple.mpegurl.audio
, поддерживаются для приложений HLS (например) Microsoft Windows 10 и Internet Explorer 9 и LG WebOS.
Это пример расширенного файла M3U на платформе Windows. Sample.mp3 и Example.ogg - это файлы мультимедиа. 123 и 321 - длина в секундах. Если мультимедийный файл является потоковым файлом, может использоваться длина -1 или 0, поскольку нет фактического предопределенного значения длины. Значение после длины - это отображаемый заголовок, который обычно совпадает с расположением файла во второй строке. На платформах macOS и Linux используются пути Unix.
#EXTM3U #EXTINF:123, Sample artist - Sample title C:\Documents and Settings\I\My Music\Sample.mp3 #EXTINF:321,Example Artist - Example title C:\Documents and Settings\I\My Music\Greatest Hits\Example.ogg
В этом примере показано, как создать файл m3u, связанный с указанным каталогом (например, флэш-накопителем или компакт-диском). Файл m3u должен содержать только одну строку: путь к каталогу. После запуска медиаплеер воспроизведет все содержимое каталога:
C:\Music
Вот еще один пример с использованием относительного формата. Файл M3U помещается в тот же каталог, что и музыка, и каталоги должны быть сохранены при перемещении списка воспроизведения на другое устройство, если используются подкаталоги. Этот метод более гибкий, поскольку он не полагается на неизменный путь к файлу.
Это тот же файл, что и выше, сохраненный как sample.m3u в C: \ Documents and Settings \ User \ My Music \
#EXTM3U #EXTINF:123, Sample artist - Sample title Sample.mp3 #EXTINF:321,Example Artist - Example title Greatest Hits\Example.ogg
Этот формат в M3U позволяет копировать на другое устройство для воспроизведения. Все упомянутые файлы и каталоги также должны быть скопированы.
Вот смешанный пример:
Alternative\Band - Song.mp3 Classical\Other Band - New Song.mp3 Stuff.mp3 D:\More Music\Foo.mp3..\Other Music\Bar.mp3 http://www.example.com:8000/Listen.mp3 http://www.example.com/~user/Mine.mp3
Примечания:
Ссылки на другие плейлисты M3U, например, обычно не поддерживаются должным образом.
AnotherPlayList.m3u
Ниже приведен пример файла плейлиста M3U для альбома " Jar of Flies " от " Alice in Chains ", который был создан Mp3tag со следующими пользовательскими настройками параметров:
"%artist% - %title%"
"%artist%_%album%_00_Playlist.m3u"
"%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
Следующее программное обеспечение редактора тегов позволяет пользователям редактировать теги ID3 в файлах MP3 и поддерживает создание файлов M3U.
Программа | Платформы | |||
---|---|---|---|---|
Окна | macOS | Linux | Другой | |
Amarok | да | Нет | да | Нет |
Дерзкий | да | Нет | да | Нет |
Банши | да | да | да | да |
Клементина | да | да | да | да |
Видео GNOME | Нет | Нет | да | Нет |
Коди | да | да | да | да |
MPlayer | да | да | да | да |
MPV | да | да | да | да |
Медиаплеер VLC | да | да | да | да |
iTunes | да | да | Нет | Нет |
Включает M3U и M3U8