M3U - M3U

M3U
Расширения имени файла
.m3u, .m3u8
Тип интернет-СМИразные; видеть § Типы интернет-СМИ
изначальный выпускc. 1996 г.
Тип форматаПлейлист
Расширен доHTTP Live Streaming плейлист

M3U (URL-адрес MP3[1][2] или же Moving Picture Experts Group Audio Layer 3 Единый указатель ресурсов[3] полностью) - это компьютерный формат файла мультимедиа плейлист. Одним из распространенных способов использования формата файла M3U является создание файла списка воспроизведения с одной записью, указывающего на транслировать в Интернете. Созданный файл обеспечивает легкий доступ к этому потоку и часто используется при загрузке с веб-сайта, для отправки по электронной почте и для прослушивания Интернет-радио.

Хотя изначально он был разработан для аудиофайлов, таких как MP3, он обычно используется для направления медиаплеерам на аудио- и видеоисточники, включая онлайн-источники. M3U был первоначально разработан Фраунгофер для использования с их Winplay3 программного обеспечения,[4] но теперь этот формат поддерживают многочисленные медиаплееры и программные приложения.

Небрежное обращение с плейлистами M3U стало причиной уязвимости во многих музыкальных проигрывателях, таких как Медиаплеер VLC,[5] iTunes,[6] Winamp,[7] и много других.[8]

Формат файла

Формальной спецификации для формата M3U нет; это де-факто стандарт.

Файл M3U - это простой текст файл, определяющий расположение одного или нескольких файлов мультимедиа. Файл сохраняется в формате "m3u". расширение имени файла если текст закодирован в кодировке локальной системы по умолчанию, отличной от Unicode (например, Кодовая страница Windows ) или с расширением m3u8, если текст UTF-8 закодировано.[9]

Каждая запись имеет одну спецификацию. Спецификация может быть любой из следующих:

  • ан абсолютный локальный путь; например, C: My Music Heavysets.mp3
  • а локальный путь относительно расположения файла M3U; например Heavysets.mp3
  • а URL

Расширенный M3U

Файл M3U также может включать комментарии, перед которыми стоит символ «#». В расширенный M3U, «#» также вводит расширенные директивы M3U, которые заканчиваются двоеточием «:», если они поддерживают параметры.

Расширения M3U
ДирективаОписаниеПримерНеобходимыйСтандарт
# EXTM3Uзаголовок файла, должен быть первой строкой файла# EXTM3Uда
#EXTINF:информация о треке: время выполнения в секундах и отображение заголовка следующего ресурса#EXTINF: 123, Имя исполнителя - Название трека␤
исполнитель - title.mp3
Нетда
дополнительные свойства как пары ключ-значение#EXTINF: 123 logo = "cover.jpg", название трека␤
http://example.tv/live.strm
НетIPTV
# PLAYLIST:отображаемое название списка воспроизведения#PLAYLIST: Музыкальное ТВIPTV
#EXTGRP:начать именованную группировку#EXTGRP: зарубежные каналыНетIPTV
#EXTALB:информация об альбоме, в частности название#EXTALB: Название альбома (2009)AL[10], M3A[11]
#EXTART:исполнитель альбома#EXTART: РазноеAL[10], M3A[11]
#EXTGENRE:жанр альбома#EXTGENRE: Jazz FusionAL[10]
# EXTM3Aплейлист для треков или глав альбома в одном файле# EXTM3AM3A[11]
#EXTBYT:размер файла в байтах#EXTBYT: 34124НетM3A[11]
#EXTBIN:следуют двоичные данные, обычно объединенные в MP3#EXTBIN:НетM3A[11]
#EXTENC:кодировка текста, должна быть вторая строка файла#EXTENC: UTF-8Нет
#EXTIMG:обложка, логотип или другое изображение#EXTIMG: передняя обложка␤
cover.jpg
НетНет

Apple использовала расширенный формат M3U в качестве основы для своих HTTP Live Streaming (HLS)[12] который был стандартизирован в 2017 г. IETF в качестве RFC 8216.[13] В нем главный плейлист ссылается на списки воспроизведения сегментов, которые обычно содержат URL-адреса для коротких частей медиапотока. Некоторые теги применяются только к первому типу, а некоторые только к второму типу плейлистов, но все они начинаются с # EXT-X-.

Расширения HLS M3U
ДирективаПримерОписание
# EXT-X-START:СМЕЩЕНИЕ ВРЕМЕНИ = 0
# EXT-X-INDEPENDENT-SEGMENTSпереключить без параметров
# EXT-X-PLAYLIST-TYPE:VOD или же МЕРОПРИЯТИЕ
# EXT-X-TARGETDURATION:10в секундах
# EXT-X-VERSION:4
# EXT-X-MEDIA-SEQUENCE:0
# EXT-X-INDEPENDENT-SEGMENTSпереключить без параметров
# EXT-X-MEDIA:NAME = "английский", TYPE = AUDIO, GROUP-ID = "audio-stereo-64", 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:МЕТОД = НЕТ
# EXT-X-MAP:URI = MediaInitializationSection
# EXT-X-PROGRAM-DATE-TIME:2010-02-19T14: 54: 23.031 + 08: 00ISO 8601 формат
# EXT-X-DATERANGE:ID = foo
# EXT-X-I-FRAMES-ONLYi-frame переключить без параметров
# EXT-X-SESSION-DATA:DATA-ID = com.example.movie.title
# EXT-X-SESSION-KEY:
# EXT-X-ENDLISTсигнал конца списка без параметров

M3U8

В Unicode версия M3U - M3U8, в которой используется UTF-8 закодированные символы. Файлы M3U8 являются основой для HTTP Live Streaming (HLS) формат, первоначально разработанный яблоко для потоковой передачи видео и радио на iOS устройств, и который сейчас является популярным форматом для адаптивной потоковой передачи в целом.

Предложение 2015 года по формату списка воспроизведения HLS использует исключительно UTF-8 и не делает различий между расширениями имен файлов «m3u» и «m3u8».[14]

Типы интернет-СМИ

Единственный Тип интернет-СМИ зарегистрирован для M3U и M3U8 приложение / vnd.apple.mpegurl, зарегистрированный в 2009 году и относится только к формату списка воспроизведения, используемому в приложениях HLS.[15][16]

Текущее предложение для формата списка воспроизведения HLS признает два типа мультимедиа, которые он рассматривает как эквивалентные: приложение / vnd.apple.mpegurl и аудио / mpegurl.[14] Точно так же эти два типа рекомендуются для использования HLS Microsoft.[17]

Для приложений, не поддерживающих HLS, типы носителей не были стандартизированы или зарегистрированы в IANA, но ряд типов мультимедиа, тем не менее, связан с историческим и текущим использованием форматов M3U и M3U8 для общих списков воспроизведения:

  • приложение / mpegurl
  • приложение / x-mpegurl
  • аудио / mpegurl
  • аудио / x-mpegurl[1][2]

Эти типы плюс приложение / vnd.apple.mpegurl и приложение / vnd.apple.mpegurl.audio, поддерживаются для приложений HLS (например) Microsoft Windows 10[17] и Internet Explorer 9,[18] и LG WebOS.[19]

Примеры

Пример 1

Это пример расширенного файла M3U на платформе Windows. Sample.mp3 и Example.ogg - это файлы мультимедиа. 123 и 321 - длина в секундах.[20] Если мультимедийный файл является потоковым файлом, может использоваться длина -1 или 0, поскольку нет фактического заранее определенного значения длины. Значение после длины - это отображаемый заголовок, который обычно совпадает с расположением файла во второй строке. На Mac OS X и Linux платформы, Пути в Unix используются.

# EXTM3U #EXTINF: 123, Образец исполнителя - Образец заголовка C:  Documents and Settings  I  My Music  Sample.mp3 #EXTINF: 321, Пример исполнителя - Пример заголовка C:  Documents and Settings  I  My Music  Greatest Hits  Example.ogg
Пример 2

В этом примере показано, как создать файл m3u, связанный с указанным каталогом (например, флеш накопитель, или CD-ROM). Файл m3u должен содержать только одну строку: путь к каталогу. После запуска медиаплеер воспроизведет все содержимое каталога:

C:  Музыка
Пример 3

Вот еще один пример с использованием относительного формата. Файл M3U помещается в тот же каталог, что и музыка, и каталоги должны быть сохранены при перемещении списка воспроизведения на другое устройство, если используются подкаталоги. Этот метод более гибкий, поскольку он не полагается на неизменный путь к файлу.

Это тот же файл, что и выше, сохраненный как sample.m3u в C: Documents and Settings User My Music

# EXTM3U #EXTINF: 123, Образец исполнителя - Образец titleSample.mp3 #EXTINF: 321, Пример исполнителя - Пример заголовкаGreatest Hits  Example.ogg

Этот формат в M3U позволяет копировать на другое устройство для воспроизведения. Все упомянутые файлы и каталоги также должны быть скопированы.

Пример 4

Вот смешанный пример:

Альтернатива  Группа - Song.mp3Classical  Другая группа - Новая песня.mp3Stuff.mp3D:  More Music  Foo.mp3 ..  Other Music  Bar.mp3http: //www.example.com: 8000 / Listen.mp3http: / /www.example.com/~user/Mine.mp3

Примечания:

  • Альтернативный и классический - это подкаталоги каталога, в котором хранится этот список воспроизведения.
  • «Песня» и «Новая песня» находятся в подкаталогах каталога, в котором хранится этот список воспроизведения.
  • «Материал» находится в том же каталоге, в котором хранится список воспроизведения.
  • «Foo» находится в указанном (Windows) томе и каталоге, который может быть или не совпадать с каталогом, в котором находится список воспроизведения.
  • «Бар» находится в другом каталоге на том же уровне, что и каталог списка воспроизведения. Двойные точки относятся к родительскому каталогу каталога списков воспроизведения, затем к подкаталогу «Другая музыка», чтобы перейти к «Бар».
  • "Слушай" - это поток Shoutcast.
  • «Мой» - это MP3, хранящийся на веб-сервере.
Пример 5

Ссылки на другие списки воспроизведения M3U, например, обычно не поддерживаются должным образом.

AnotherPlayList.m3u
Пример 6

Ниже приведен пример файла списка воспроизведения M3U для "Банка мух "альбом"Алиса в цепях "который был создан Mp3tag со следующими пользовательскими настройками параметров:[21][22][23]

  • формат расширенной информации плейлиста = "% художник% -% название%"
  • формат файла плейлиста = "% artist% _% album% _00_Playlist.m3u"
  • тег в формат преобразования имени файла = "% artist% _% album% _ $ num (% track%, ​​2) _% title%"
 # EXTM3U #EXTINF: 419, Алиса в цепях - Гнилое яблоко Алиса в цепях_Банка с мухами_01_Rotten Apple.mp3 #EXTINF: 260, Алиса в цепях - Алиса в ореховой скорлупе в цепях_Банка с мухами_02_Nutshell.mp3 #EXTINF: 255, Алиса в цепях - I 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_ Wasp_Whale_0 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.

Linux
Windows

Медиаплееры

Мультиплатформенность
ПрограммаПлатформы
WindowsMacLinuxДругой
AmarokдаНетдаНет
ДерзкийдаНетдаНет
Баншидададада
Клементинадададада
Видео GNOMEНетНетдаНет
Кодидададада
MPlayerдададада
MPVдададада
Медиаплеер VLCдададада
iTunesдадаНетНет
Android
Mac
Nintendo
Windows

Смотрите также

Другие форматы файлов списков воспроизведения
  • ASX - Windows медиа
  • PLS - SHOUTcast
  • XSPF - Фонд Xiph.Org
  • WPL - Проигрыватель Windows Media

Рекомендации

  1. ^ а б Fraunhofer Gesellschaft, Fraunhofer Institut für Integrierte Schaltungen-A (1996-10-30). "WinPlay3 - Windows-проигрыватель ISO / MPEG Audio Layer 3 в реальном времени". Архивировано из оригинал на 1997-06-06. Получено 2018-01-21.
  2. ^ а б Gruett, Мэтт. "M3U-ФАЙЛЫ И ПОТОК". ШкафчикГном. Архивировано из оригинал 26 апреля 2001 г.
  3. ^ Нерон. «Nero MediaHome 4 - Руководство» (PDF). В архиве (PDF) из оригинала от 05.09.2015.
  4. ^ "WINAMP.COM | Документация Winamp". 6 июня 2002 г. Архивировано с оригинал на 2002-06-06.
  5. ^ "VideoLAN-SA-0804 (CVE-2007-6683)". 2008. Произвольная перезапись файлов и другие злоупотребления через плагины парсера M3U и браузеров.
  6. ^ «CVE-2012-0677: переполнение буфера на основе кучи в Apple iTunes до 10.6.3 позволяет удаленным злоумышленникам выполнять произвольные команды». cve.circl.lu.
  7. ^ "CVE-2000-0624: переполнение буфера в Winamp 2.64 и более ранних версиях позволяет удаленным злоумышленникам выполнять произвольные команды с помощью длинного #EXTINF: ext". www.cvedetails.com.
  8. ^ «247 результатов поиска». Пакетный шторм. Получено 2018-01-23.
  9. ^ «Nero 2015 Platinum - Системные требования». MP3 URL + UTF-8 (M3U8)
  10. ^ а б c "Список альбомов для Winamp". albumlist.sourceforge.net.
  11. ^ а б c d е "Данные". птичья клетка. Получено 2019-10-21.
  12. ^ «О формате общего мультимедийного приложения с HTTP Live Streaming | Документация для разработчиков Apple». developer.apple.com.
  13. ^ Р. Пантос; В. Мэй (август 2007 г.). «4.3 Теги списка воспроизведения». RFC 8216: HTTP Live Streaming. Страницы запроса комментариев Ietf (RFC) - Тест. IETF. ISSN  2070-1721.
  14. ^ а б Пантос, Роджер; Мэй, Уильям. «HTTP Live Streaming». tools.ietf.org.
  15. ^ «Типы СМИ». www.iana.org.
  16. ^ "Данные". Иана. Получено 2019-10-21.
  17. ^ а б «Упрощенная адаптивная потоковая передача видео: объявление о поддержке HLS и DASH в Windows 10 - IEBlog». blogs.msdn.microsoft.com.
  18. ^ "HTMLVideoElement". Веб-документы MDN.
  19. ^ «Архивная копия». Архивировано из оригинал на 2015-12-22. Получено 2015-12-12.CS1 maint: заархивированная копия как заголовок (связь)
  20. ^ «Примечание по применению DigiLinX - Создание списков воспроизведения для работы с Streaming Music Manager» (PDF). 2007-10-05.
  21. ^ «Справка Mp3tag - Конфигурация> Экспорт». help.mp3tag.de.
  22. ^ «Справка Mp3tag - Конфигурация> Список воспроизведения». help.mp3tag.de.
  23. ^ «Справка по Mp3tag - Скриптовые функции». help.mp3tag.de.
  24. ^ "Загрузка ..." astroplayer.com. Архивировано из оригинал 1 декабря 2009 г.
  25. ^ «Астро Плейер (стар.) - Сиденис ООО». Архивировано из оригинал 3 марта 2016 г.
  26. ^ ООО «Астро Плейер - Сиденис». Архивировано из оригинал 3 марта 2016 г.
  27. ^ "Музыкальный проигрыватель n7player - Приложения в Google Play". play.google.com.
  28. ^ «n7player 1.0 - Приложения в Google Play». play.google.com.
  29. ^ "Musicolet Music Player [Без рекламы] - Приложения в Google Play". play.google.com. Получено 2020-11-02.
  30. ^ Хиндли, Натан. «XMPlay 3.8.2». XMPlay. Un4seen Developments. Получено 11 июля 2016.

внешняя ссылка