2011-01-30 21 views
6

Puedo escuchar con éxito una transmisión de audio con la interfaz MediaPlayer, pero ¿cómo puedo obtener propiedades de la transmisión como la velocidad de bits actual o el texto de transmisión (muchas transmisiones como las radios en línea incluyen la pista que se reproduce actualmente)?Android: MediaPlayer, ¿Cómo obtener propiedades de una transmisión de audio?

Traté de encontrar esta información, pero no pude, si estas cosas son posiblemente hay una lista en algún lugar en el sitio de desarrollo de Android donde se enumeran las diversas 'propiedades' disponibles?

Respuesta

3

En primer lugar, el sitio DEV de Android es el sitio con toda la información de la clase, pero a veces es difícil encontrar lo que necesita. En ese caso, verificar el origen de Java de la clase puede ser bastante útil.

Desde una vista rápida en el SDK, hay una interfaz onInfoListener, que puede implementar en una clase que se extiende a MediaPlayer. Eso necesita que tenga public boolean onInfo(MediaPlayer mp, int what, int extra) implementado. http://developer.android.com/reference/android/media/MediaPlayer.OnInfoListener.html indica que hay un what = MEDIA_INFO_METADATA_UPDATE.

Pero - control de Google para que daría la idea de que esto nunca se llamó: -/ por lo que finalmente está en su propia con eso ...

+3

Según tengo entendido, el InfoListener solo se notifica cuando los retrasos de la transmisión. El "qué" devuelto es solo un número entero, no hay mucho lugar para artista, título, etc. – rds

0

que podría estar haciendo esto más difícil de lo que debe ser , pero puede decodificar un cuadro del Stream con Jlayer o alguna otra biblioteca de decodificación de MP3 para obtener la información que está buscando. No estoy seguro si hay una manera de hacer esto solo con el SDK de Android.

-2

Si su transmisión es una transmisión de shoutcast/icecast, puede utilizar la clase de utilidad en http://code.google.com/p/streamscraper/ para extraer los metadatos, incluido el título de la canción. Alternativamente, puede construir su propio extractor de metadatos. Eche un vistazo a http://www.smackfu.com/stuff/programming/shoutcast.html para más información.

+0

Este proyecto es inútil, considerando que shoutcast ofrece un servicio web liviano en 'http://yp.shoutcast.com/Metadata_Info1. php? surl = '. Definitivamente es excesivo y crea muchas dependencias – rds

Cuestiones relacionadas