Leer las etiquetas ID3 de un archivo MP3 en AS3

Posted by admin | AS3, Class, Flash | Thursday 18 January 2007 2:48 am

Los archivos de audio en formato MP3 pueden contener metadatos con la información relacionada al nombre de la canción, del disco, del año, etc... Estos metadatos son necesários para poder catalogar los archivos de audio en programas como iTunes. Este sistema de etiquetado de archivos MP3 es lo que se denomina ID3.

La clase ID3Info contiene las propiedades de los metadatos ID3, que son los siguientes:

album : String // El nombre del álbum.
artist : String // El nombre del grupo/cantante.
comment : String // El comentario añadido.
genre : String // El estilo de música
songName : String // El nombre de la canción.
track : String // El número de track.
year : String // El año del disco.

Implementaremos la lectura de estos metadatos ID3 a la clase creada anteriormente.

package {
    import flash.display.Sprite;
    import flash.net.URLRequest;
    import flash.media.Sound;
    import flash.media.SoundLoaderContext;
    import flash.media.ID3Info
    import flash.events.Event;
    //--------------------------
    public class Sonido extends Sprite {       
        private var so:Sound;
        private var url:URLRequest;
        private var buffer:SoundLoaderContext;
        private var ini:Number;
        private var loop:Number;
        //----------------------
        public function Sonido(qUrl:String, qBuffer:Number, qIni:Number, qLoop:Number){
            url = new URLRequest(qUrl);
            buffer = new SoundLoaderContext(qBuffer*1000);
            ini = qIni*1000;
            loop = (qLoop>= 0) ? qLoop : int.MAX_VALUE;
            so = new Sound(url, buffer);
            so.play(ini, loop);
            so.addEventListener(Event.ID3, onID3);
        }
        public function onID3(event:Event):void{
            var soInfo:ID3Info = ID3Info(so.id3);
            trace("artist: " + soInfo.artist);
            trace("track: " + soInfo.track);
            trace("comment: " + soInfo.comment);
            trace("songName: " + soInfo.songName);
            trace("album: " + soInfo.album);   
            trace("genre: " + soInfo.genre);
            trace("year: " + soInfo.year);
        }
    }
}

Comparte:
  • Meneame
  • Twitter
  • Facebook
  • LinkedIn
  • Google Bookmarks
  • del.icio.us
  • Technorati
  • email
  • Print

Post relacinonados:

  1. Reproducir audio en AS3
  2. Clase para transiciones de fotos
  3. Botones con parámetros en Actionscript 3
  4. Eventos click y doble click en un botón con Actionscript 3
  5. Clase para cargar contenido externo en Actionscript 3

2 Comments »

  1. Comment by ALEJANDRO — 6 September, 2010 @ 6:44 pm

    hola, hice un componente para escuchar mp3 pero tengo un raro problema con la lectura de los ID3
    el componente funciona bien cuando esta todo en la misma direccion pero:
    el componente esta en una ip y los mp3 en otra
    reproduce el mp3 pero no puedo acceder a los ID3
    el parametro que quiero leer el TLEN que seria el largo del tema en mseg.
    Alguien sabe algo de porque no funciona?

  2. Comment by Junior — 16 December, 2008 @ 11:43 am

    Hola,

    Tengo un reproductor sansa, en el cual tengo demasiado audios en el y hay algunos que al no tener nombre de album asignado estan en albumes que no le corresponden en el album unknown asignado por el equipo.

    En fin me gustaria asignarle un nombre de album a aquellos que no lo tienen ya que es mas fácil para agrupar los archivos de audios que tengo.

    Por favor, les agradeceria su ayuda al respect. Bye.

RSS feed for comments on this post. TrackBack URI

Leave a comment

Get Adobe Flash playerPlugin by wpburn.com wordpress themes