M3U ( MP3 URL [1] [2] o Moving Picture Experts Group Audio Layer 3 Uniform Resource Locator [3] en su totalidad) es un formato de archivo de computadora para una lista de reproducción multimedia . Un uso común del formato de archivo M3U es crear un archivo de lista de reproducción de una sola entrada que apunte a una transmisión en Internet. El archivo creado proporciona un fácil acceso a esa transmisión y, a menudo, se utiliza en descargas desde un sitio web, para enviar por correo electrónico y para escuchar radio por Internet .
Extensiones de nombre de archivo | .m3u, .m3u8 |
---|---|
Tipo de medio de Internet | varios; ver § Tipos de medios de Internet |
Versión inicial | C. 1996 |
Tipo de formato | Lista de reproducción |
Extendido a | Lista de reproducción HTTP Live Streaming |
Aunque originalmente se diseñó para archivos de audio, como MP3 , se usa comúnmente para apuntar a los reproductores de medios a fuentes de audio y video, incluidas las fuentes en línea. M3U fue desarrollado originalmente por Fraunhofer para su uso con su software Winplay3 , [4] pero numerosos reproductores multimedia y aplicaciones de software ahora admiten el formato.
El manejo descuidado de las listas de reproducción M3U ha sido la causa de vulnerabilidades en muchos reproductores de música como el reproductor de medios VLC , [5] iTunes , [6] Winamp , [7] y muchos otros. [8]
Formato de archivo
No existe una especificación formal para el formato M3U; es un estándar de facto .
Un archivo M3U es un archivo de texto sin formato que especifica las ubicaciones de uno o más archivos multimedia. El archivo se guarda con la extensión de nombre de archivo "m3u" si el texto está codificado en la codificación no Unicode predeterminada del sistema local (por ejemplo, una página de códigos de Windows ), o con la extensión "m3u8" si el texto está codificado en UTF-8 . [9]
Cada entrada tiene una especificación. La especificación puede ser cualquiera de las siguientes:
- un nombre de ruta local absoluto ; por ejemplo, C: \ My Music \ Heavysets.mp3
- un nombre de ruta local relativo a la ubicación del archivo M3U; por ejemplo, Heavysets.mp3
- una URL
M3U extendido
El archivo M3U también puede incluir comentarios, precedidos por el carácter "#". En M3U extendido , "#" también introduce directivas M3U extendidas que terminan con dos puntos ":" si admiten parámetros.
Directiva | Descripción | Ejemplo | Requerido | Estándar |
---|---|---|---|---|
#EXTM3U | encabezado del archivo, debe ser la primera línea del archivo | #EXTM3U | 1 × | sí |
#EXTINF: | información de la pista: tiempo de ejecución en segundos y título de visualización del siguiente recurso | #EXTINF:123,Artist Name – Track Title | No | sí |
propiedades adicionales como pares clave-valor | #EXTINF:123 logo="cover.jpg",Track Title | No | IPTV | |
#PLAYLIST: | título de visualización de la lista de reproducción | #PLAYLIST:Music TV | 1 × | IPTV |
#EXTGRP: | comenzar la agrupación con nombre | #EXTGRP:Foreign Channels | No | IPTV |
#EXTALB: | información del álbum, título en particular | #EXTALB:Album Title (2009) | 1 × | AL, [10] M3A [11] |
#EXTART: | artista de un album | #EXTART:Various | 1 × | AL, [10] M3A [11] |
#EXTGENRE: | género de álbum | #EXTGENRE:Jazz Fusion | 1 × | AL [10] |
#EXTM3A | lista de reproducción de pistas o capítulos de un álbum en un solo archivo | #EXTM3A | 1 × | M3A [11] |
#EXTBYT: | tamaño del archivo en bytes | #EXTBYT:34124 | No | M3A [11] |
#EXTBIN: | A continuación, se muestran datos binarios, por lo general MP3 concatenados. | #EXTBIN: | No | M3A [11] |
#EXTENC: | codificación de texto, debe ser la segunda línea del archivo | #EXTENC: UTF-8 | 1 × | No |
#EXTIMG: | portada, logo u otra imagen | #EXTIMG: front cover | No | No |
Apple utilizó el formato M3U extendido como base para su HTTP Live Streaming (HLS) [12] que se documentó en un RFC de transmisión de envío independiente en 2017 como RFC 8216. [13] Allí, una lista de reproducción maestra hace referencia a listas de reproducción de segmentos que generalmente contienen URL. para partes cortas del flujo de medios. Algunas etiquetas solo se aplican al primer tipo y otras solo al último tipo de lista de reproducción, pero todas comienzan con #EXT-X-
.
Directiva | Ejemplo | Descripción |
---|---|---|
#EXT-X-START: | TIME-OFFSET=0 | |
#EXT-X-INDEPENDENT-SEGMENTS | alternar sin parámetros | |
#EXT-X-PLAYLIST-TYPE: | VOD o EVENT | |
#EXT-X-TARGETDURATION: | 10 | en segundos |
#EXT-X-VERSION: | 4 | |
#EXT-X-MEDIA-SEQUENCE: | 0 | |
#EXT-X-INDEPENDENT-SEGMENTS | alternar sin parámetros | |
#EXT-X-MEDIA: | NAME="English", 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 | los parámetros tienen un valor combinado o uno por flujo, separados por comas |
#EXT-X-BYTERANGE: | 1024@256000 | |
#EXT-X-DISCONTINUITY | alternar sin parámetros | |
#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 | Formato ISO 8601 |
#EXT-X-DATERANGE: | ID=foo | |
#EXT-X-I-FRAMES-ONLY | Alternar i-frame sin parámetros | |
#EXT-X-SESSION-DATA: | DATA-ID=com.example.movie.title | |
#EXT-X-SESSION-KEY: |
| |
#EXT-X-ENDLIST | señal de fin de lista sin parámetros |
M3U8
La versión Unicode de M3U es M3U8, que usa caracteres codificados en UTF-8 . Los archivos M3U8 son la base del formato HTTP Live Streaming (HLS) desarrollado originalmente por Apple para transmitir video y radio a dispositivos iOS , y que ahora es un formato popular para la transmisión adaptativa en general.
La propuesta de 2015 para el formato de lista de reproducción HLS utiliza UTF-8 exclusivamente y no distingue entre las extensiones de nombre de archivo "m3u" y "m3u8". [14]
Tipos de medios de Internet
El único tipo de medio de Internet registrado para M3U y M3U8 es application/vnd.apple.mpegurl
, registrado en 2009 y solo se refiere al formato de lista de reproducción que se utiliza en las aplicaciones HLS. [15] [16]
La propuesta actual para el formato de lista de reproducción HLS reconoce dos tipos de medios que trata como equivalentes: application/vnd.apple.mpegurl
y audio/mpegurl
. [14] Asimismo, estos son los dos tipos recomendados para el uso de HLS por Microsoft. [17]
Para las aplicaciones que no son HLS, no se estandarizaron ni registraron tipos de medios con la IANA , pero varios tipos de medios están asociados con el uso histórico y continuo de los formatos M3U y M3U8 para listas de reproducción generales:
application/mpegurl
application/x-mpegurl
audio/mpegurl
audio/x-mpegurl
[1] [2]
Estos tipos, más application/vnd.apple.mpegurl
y application/vnd.apple.mpegurl.audio
, son compatibles con las aplicaciones HLS por (por ejemplo) Windows 10 [17] e Internet Explorer 9, [18] de Microsoft y WebOS de LG . [19]
Ejemplos de
- Ejemplo 1
Este es un ejemplo de un archivo M3U extendido en la plataforma Windows. Sample.mp3 y Example.ogg son los archivos multimedia. 123 y 321 son las longitudes en segundos. [20] Se puede usar una longitud de -1 o 0 cuando el archivo multimedia es un archivo de transmisión, ya que no hay un valor de longitud predefinido real. El valor después de la longitud es el título que se mostrará, que generalmente es el mismo que la ubicación del archivo que está en la segunda línea. En las plataformas macOS y Linux , se utilizan rutas de Unix .
# EXTM3U #EXTINF: 123, artista de muestra - título de muestraC: \ Documents and Settings \ I \ My Music \ Sample.mp3 #EXTINF: 321, Artista de ejemplo - Título de ejemploC: \ Documents and Settings \ I \ My Music \ Greatest Hits \ Example.ogg
- Ejemplo 2
Este ejemplo muestra cómo crear un archivo m3u que se vincule a un directorio específico (por ejemplo, una unidad flash o un CD-ROM). El archivo m3u debe contener solo una cadena: la ruta al directorio. Después de comenzar, el reproductor multimedia reproducirá todos los contenidos del directorio:
C: \ Música
- Ejemplo 3
Aquí hay otro ejemplo, usando formato relativo. El archivo M3U se coloca en el mismo directorio que la música, y los directorios deben conservarse al mover la lista de reproducción a otro dispositivo si se utilizan subdirectorios. Este método es más flexible, ya que no depende de que la ruta del archivo permanezca igual.
Este es el mismo archivo que el anterior, guardado como sample.m3u en C: \ Documents and Settings \ User \ My Music \
# EXTM3U #EXTINF: 123, artista de muestra - título de muestraSample.mp3 #EXTINF: 321, Artista de ejemplo - Título de ejemploGrandes éxitos \ Example.ogg
Este formato en un M3U permite copiar a otro dispositivo para su reproducción. Todos los archivos y directorios mencionados también deben copiarse.
- Ejemplo 4
Aquí hay un ejemplo mixto:
Alternativa \ Banda - Song.mp3Classical \ Other Band - New Song.mp3Stuff.mp3D: \ Más música \ Foo.mp3.. \ Otra música \ Bar.mp3http://www.example.com:8000/Listen.mp3http://www.example.com/~user/Mine.mp3
Notas:
- Alternativa y Clásica son subdirectorios del directorio en el que está almacenada esta lista de reproducción.
- "Song" y "New Song" están en subdirectorios del directorio en el que está almacenada esta lista de reproducción.
- "Cosas" está en el mismo directorio en el que está almacenada la lista de reproducción.
- "Foo" está en el volumen y directorio especificado (Windows), que puede ser o no el mismo directorio en el que se encuentra la lista de reproducción.
- "Bar" está en un directorio diferente al mismo nivel que el directorio de la lista de reproducción. Los puntos dobles hacen referencia al directorio principal del directorio de la lista de reproducción, luego al subdirectorio "Otra música" para llegar a "Barra".
- "Escuchar" es una transmisión de Shoutcast.
- "Mine" es un MP3 almacenado en un servidor web.
- Ejemplo 5
Las referencias a otras listas de reproducción M3U, por ejemplo, generalmente no están bien respaldadas.
AnotherPlayList.m3u
- Ejemplo 6
El siguiente es un ejemplo de un archivo de lista de reproducción M3U para el álbum " Jar of Flies " de " Alice in Chains " que fue creado por Mp3tag con la siguiente configuración de opciones personalizadas: [21] [22] [23]
- formato de información extendida de la lista de reproducción =
"%artist% - %title%"
- formato de nombre de archivo de lista de reproducción =
"%artist%_%album%_00_Playlist.m3u"
- formato de conversión de etiqueta a nombre de archivo =
"%artist%_%album%_$num(%track%,2)_%title%"
# EXTM3U #EXTINF: 419, Alice in Chains - Manzana podrida Alice in Chains_Jar of Flies_01_Rotten Apple.mp3 #EXTINF: 260, Alice in Chains - Cáscara de nuez Alice in Chains_Jar of Flies_02_Nutshell.mp3 #EXTINF: 255, Alice in Chains - Me quedo lejos Alice in Chains_Jar of Flies_03_I Stay Away.mp3 #EXTINF: 256, Alice in Chains - Sin excusas Alice in Chains_Jar of Flies_04_No Excuses.mp3 #EXTINF: 157, Alice in Chains - Ballena y avispa 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
Software
Editores de etiquetas
El siguiente software de edición de etiquetas permite a los usuarios editar las etiquetas ID3 en archivos MP3 y tiene soporte para crear archivos M3U.
- Linux
- EasyTAG , puddletag .
- Ventanas
- Mp3tag , puddletag .
Reproductores multimedia
- Multiplataforma
Programa | Plataformas | |||
---|---|---|---|---|
Ventanas | Mac OS | Linux | Otro | |
Amarok | sí | No | sí | No |
Audaz | sí | No | sí | No |
Banshee | sí | sí | sí | sí |
Clementina | sí | sí | sí | sí |
Vídeos de GNOME | No | No | sí | No |
Kodi | sí | sí | sí | sí |
MPlayer | sí | sí | sí | sí |
mpv | sí | sí | sí | sí |
Reproductor de multimedia VLC | sí | sí | sí | sí |
iTunes | sí | sí | No | No |
- Androide
- Astro Player, [24] [25] [26] Kodi , N7Player, [27] [28] Musicolet [29]
- Mac OS
- Música
- Reproductor de Quicktime
- Nintendo
- New Nintendo 3DS (incluidas las variantes XL y 2DS XL ) con aplicación de navegador de Internet
- Nintendo Switch con la aplicación YouTube ( específica del sitio )
- Wii U con el navegador de Internet o la aplicación de YouTube
- Ventanas
- foobar2000 , JRiver Media Center , JuK , MediaMonkey , PotPlayer , Winamp , Windows Media Player , XMPlay [30]
Ver también
- Lista de editores de etiquetas
- Otros formatos de archivo de lista de reproducción
- ASX : medios de Windows
- PLS - SHOUTcast
- XSPF - Fundación Xiph.Org
- WPL - Reproductor de Windows Media
Referencias
- ↑ a b Fraunhofer Gesellschaft, Fraunhofer Institut für Integrierte Schaltungen-A (30 de octubre de 1996). "WinPlay3 - Reproductor de capa 3 de audio ISO / MPEG en tiempo real de Windows" . Archivado desde el original el 6 de junio de 1997 . Consultado el 21 de enero de 2018 .
- ^ a b Gruett, Matt. "ARCHIVOS M3U Y STREAMING" . LockerGnome . Archivado desde el original el 26 de abril de 2001.
- ^ Nerón. "Nero MediaHome 4 - Manual" (PDF) . Archivado (PDF) desde el original el 5 de septiembre de 2015.
- ^ "WINAMP.COM | Documentación de Winamp" . 6 de junio de 2002. Archivado desde el original el 6 de junio de 2002 .
- ^ "VideoLAN-SA-0804 (CVE-2007-6683)" . 2008.
Sobrescritura arbitraria de archivos y otros abusos a través del analizador M3U y complementos de navegadores.
- ^ "CVE-2012-0677: el desbordamiento del búfer basado en el montón en Apple iTunes antes de 10.6.3 permite a los atacantes remotos ejecutar comandos arbitrarios" . cve.circl.lu .
- ^ "CVE-2000-0624: El desbordamiento del búfer en Winamp 2.64 y versiones anteriores permite a los atacantes remotos ejecutar comandos arbitrarios a través de un largo #EXTINF: ext" . www.cvedetails.com .
- ^ "247 resultados de búsqueda" . Packet Storm . Consultado el 23 de enero de 2018 .
- ^ "Nero 2015 Platinum - Requisitos del sistema" .
URL MP3 + UTF-8 (M3U8)
- ^ a b c "Lista de álbumes de Winamp" . albumlist.sourceforge.net .
- ^ a b c d e "Datos" . birdcagesoft . Consultado el 21 de octubre de 2019 .
- ^ "Acerca del formato de aplicación Common Media con HTTP Live Streaming | Documentación para desarrolladores de Apple" . developer.apple.com .
- ^ R. Pantos; W. May (agosto de 2007). "4.3 Etiquetas de lista de reproducción" . RFC 8216: Transmisión en directo HTTP . Solicitud de páginas de comentarios (RFC): prueba . Editor de RFC. ISSN 2070-1721 .
- ^ a b Pantos, Roger; Mayo, William. "Transmisión en directo HTTP" . tools.ietf.org .
- ^ "Tipos de medios" . www.iana.org .
- ^ "Datos" . iana . Consultado el 21 de octubre de 2019 .
- ^ a b "Transmisión de video adaptativa simplificada: anunciando soporte para HLS y DASH en Windows 10 - IEBlog" . blogs.msdn.microsoft.com .
- ^ "HTMLVideoElement" . Documentos web de MDN .
- ^ "Copia archivada" . Archivado desde el original el 22 de diciembre de 2015 . Consultado el 12 de diciembre de 2015 .CS1 maint: copia archivada como título ( enlace )
- ^ "Nota de la aplicación DigiLinX: creación de listas de reproducción para trabajar con Streaming Music Manager" (PDF) . 2007-10-05.
- ^ "Ayuda Mp3tag - Configuración> Exportar" . help.mp3tag.de .
- ^ "Ayuda Mp3tag - Configuración> Lista de reproducción" . help.mp3tag.de .
- ^ "Ayuda Mp3tag - Funciones de scripting" . help.mp3tag.de .
- ^ "Cargando ..." astroplayer.com . Archivado desde el original el 1 de diciembre de 2009.
- ^ "Astro Player (antiguo) - Sidenis LLC" . Archivado desde el original el 3 de marzo de 2016.
- ^ "Astro Player - Sidenis LLC" . Archivado desde el original el 3 de marzo de 2016.
- ^ "Reproductor de música n7player - Aplicaciones en Google Play" . play.google.com .
- ^ "n7player 1.0 - Aplicaciones en Google Play" . play.google.com .
- ^ "Musicolet Music Player [sin anuncios] - Aplicaciones en Google Play" . play.google.com . Consultado el 2 de noviembre de 2020 .
- ^ Hindley, Nathan. "XMPlay 3.8.2" . XMPlay . Desarrollos invisibles . Consultado el 11 de julio de 2016 .
enlaces externos
- "Especificación de archivo no oficial M3U y PLS" . Foro . Grandes éxitos del soporte técnico. WinAmp. 2008 [2001].
- Gonze, Lucas (2003). "Encuesta de formatos de listas de reproducción" . Borrador .
- Mayo, W. (2017). Pantos, R. (ed.). "Especificación HTTP Live Streaming" . Borrador . IETF.
Incluye M3U y M3U8