.M3U вариант №
M3U (URL-адрес MP3) — это файл списка воспроизведения аудио, хранящийся с расширением .m3u. M3U не является аудиофайлом, он просто указывает на аудио, а иногда и на видеофайлы. M3U был разработан Fraunhofer для использования с программным обеспечением Winplay3. Он также поддерживается различными медиаплеерами и программным обеспечением.
Формат файла M3U
Официальной спецификации формата файла M3U не существует, это стандарт де-факто. M3U — это обычный текстовый файл, который использует расширение .m3u, если текст закодирован в кодировке локальной системы по умолчанию, отличной от Unicode, или с расширением .m3u8, если текст закодирован в UTF-8. Каждая запись в файле M3U может быть одной из следующих:
- Абсолютный путь к файлу
- Путь к файлу относительно файла M3U.
- URL-адрес
Расширенный M3U
В расширенном M3U вводятся дополнительные директивы, которые начинаются с «#» и заканчиваются двоеточием (:), если они имеют параметры. Ниже приведен список директив для расширенного M3U.
- #EXTM3U - это заголовок файла, указывающий на расширенный формат M3U, и он должен быть первой строкой файла.
- #EXTENC: - Кодировка текста. Это должна быть вторая строка файла.
- #EXTINF: - Используется для информации о треке и других дополнительных свойств.
- #PLAYLIST: - Название плейлиста
- #EXTGRP: - Начать группировку имен
- #EXTALB: - Информация об альбоме
- #EXTART: - Исполнитель альбома
- #EXTGENRE - Жанр альбома
- #EXTM3A - Список воспроизведения одного файла для треков или разделов альбома.
- #EXTBYT: - Размер файла в байтах.
- #EXTBIN: - Далее следуют двоичные данные.
- #EXTIMG: - Логотип, обложка или другие изображения.
ЗОЖ М3У
HLS (HTTP Live Streaming) был создан Apple для потоковой передачи аудио и радио на устройства iOS. Он основан на расширенном M3U в кодировке UTF-8. Он был стандартизирован IETF в 2017 году как RFC 8216. Теги списка воспроизведения HLS начинаются с «#EXT-X-». Ниже приведен список тегов для HLS.
- EXT-X-VERSION — указывает совместимую версию файла на основе носителя и его сервера.
- #EXT-X-START: - Указывает предпочтительную начальную точку для списка воспроизведения.
- #EXT-X-PLAYLIST-TYPE: - Предоставляет тип списка воспроизведения (EVENT или VOD).
- #EXT-X-TARGETDURATION: - указывает максимальную продолжительность сегмента.
- #EXT-X-MEDIA-SEQUENCE: - Указывает порядковый номер мультимедиа.
- #EXT-X-INDEPENDENT-SEGMENTS - указывает, что все выборки медиафайлов независимы и могут быть декодированы без других сегментов.
- #EXT-X-MEDIA: - Используется для связи списков воспроизведения мультимедиа, содержащих альтернативные исполнения одного и того же контента.
- #EXT-X-STREAM-INF: - Указывает Variant Stream, который является частью Renditions.
- #EXT-X-BYTERANGE: - Указывает, что медиасегмент представляет собой поддиапазон ресурса, идентифицируемого его URI.
- #EXT-X-DISCONTINUITY - указывает на разрыв между предыдущим и последующим сегментами мультимедиа.
- #EXT-X-DISCONTINUITY-SEQUENCE: - Позволяет синхронизировать различные версии одного и того же Вариантного потока или разных Вариантных потоков.
- #EXT-X-KEY: - Указывает, как расшифровывать сегменты мультимедиа.
- #EXT-X-MAP: - Указывает, как получить раздел инициализации носителя. Требуется проанализировать применимые сегменты мультимедиа.
- #EXT-X-PROGRAM-DATE-TIME: - связывает первую выборку медиасегмента с абсолютной датой и/или временем.
- #EXT-X-DATERANGE: - связывает диапазон данных.
- #EXT-XI-FRAMES-ONLY - Указывает, что каждый медиасегмент в списке воспроизведения описывает один I-кадр.
- EXT-XI-FRAME-STREAM-INF - Указывает, что файл списка воспроизведения содержит I-кадры мультимедийного представления.
- #EXT-X-SESSION-DATA: - позволяет отображать произвольные данные сеанса. переносится в основной список воспроизведения.
- #EXT-X-SESSION-KEY: - позволяет использовать ключи шифрования. Клиент может предварительно загрузить эти ключи без предварительного чтения списка воспроизведения.
- #EXT-X-ENDLIST - указывает, что в файл больше не будут добавляться медиасегменты.
Ниже приведен список типов интернет-медиа, используемых M3U:
- application/vnd.apple.mpegurl: это единственный зарегистрированный тип мультимедиа (зарегистрированный в 2009 г.) для M3U, который используется для ссылки на списки воспроизведения в приложениях HLS.
- Следующие типы интернет-носителей используются приложениями, отличными от HLS.
- application/mpegurl
- application/x-mpegurl
- audio/mpegurl
- audio/x-mpegurl
Пример M3U
Это пример файла M3U.
#EXTM3U
#EXTINF:111, Sample artist name - Sample track title
C:\Music\SampleMusic.mp3
#EXTINF:222,Example Artist name - Example track title
C:\Music\ExampleMusic.mp3