¿Hay algo en la arquitectura o API de Android que impida que las personas creen reproductores MP3 que lean letras incrustadas?

StackOverflow https://stackoverflow.com/questions/4271099

  •  28-09-2019
  •  | 
  •  

Pregunta

Cuando reproduzco ciertos archivos MP3 (como lecciones de JaponésPod101.com) en mi iPod Touch, las letras o transcripciones que están incrustadas en los archivos MP3 se muestran en el reproductor multimedia.Creo que las letras se almacenan como etiquetas ID3/ID4 en los metadatos MP3.

Considero que esta es una característica extremadamente útil y creo que no estoy solo.A pesar de eso, ni el reproductor multimedia estándar de Android ni ningún otro reproductor multimedia que haya descargado del Market parece admitir esto.Simplemente no he podido encontrar ninguna forma de obtener funciones en mi Nexus One.

Esta característica es tan importante para mí que estoy considerando aprender a desarrollar Android para poder escribir un reproductor multimedia simple que muestre letras o notas incrustadas.Sin embargo, el hecho de que nadie más parezca haber hecho esto me hace preguntarme: ¿es posible? ¿Hay algo en la arquitectura o API de Android que haga difícil o imposible leer y mostrar información de letras de archivos MP3? Odiaría profundizar en el proceso de aprendizaje y descubrir que lo que busco no se puede lograr fácilmente.(Quiero decir, si todo lo demás falla, supongo que podría escribir mi propio decodificador de MP3, pero eso es más problema del que estoy dispuesto a afrontar en este momento).

Ya hice esta pregunta en el Sitio Beta de Stack Exchange para entusiastas de Android, pero en retrospectiva decidí que era más una cuestión de programación y decidí que era mejor preguntar aquí.

¿Fue útil?

Solución

Sí, sin duda más que una cuestión de programación. Sólo a partir de mi breve experiencia de la lectura a través de la especificación ID3, creo que es, probablemente, sólo que la decodificación de etiquetas ID3 es un PITA completa. Estoy seguro de que se puede hacer, ya que hay aplicaciones disponibles de edición de etiquetas MP3 para Android (si algún apoyo o no a la letra, no sé).

ID3v2.3 parece tener soporte para ambos sincronizados y no sincronizados letras a través de los marcos de Sylt USLT de la cabecera. Me imagino que es simplemente una característica tan infrautilizado que no vale la pena el esfuerzo de más para hacerlo. MP3 comprados no llevan esta información (siempre me he preguntado por qué no?), Por lo que tendrían que ser añadido manualmente (o automáticamente a través de un API del servicio de letra, pero hay mucho más participan de codificación con eso).

Aquí es la especificación ID3v2.3 si desea buscar en ella más. .. (abandonar la esperanza todos los que entran aquí)

Otros consejos

El problema puede ser que la mayoría de la gente utiliza el incorporado en los mecanismos de reproducción de MP3, y esto puede apoyar ni la visualización de letras ni ser muy fácil de mantener sincronizado con otra cosa hacer visualización de letras.

Así que puede ser que algo tiene que ser escritos, que hace su propia decodificación MP3.

Lo más probable es que esto querría ser hecho en código nativo. Por otro lado, en la salida androide, de audio (y menos que se utilice, la pantalla de vídeo OpenGL) más o menos tiene que ser hecho desde Java. Así que usted está buscando en una buena cantidad de trabajo para decodificar datos con una biblioteca nativa y después para enviarla para su reproducción y visualización de Java.

Así que para responder a su pregunta - ¿es posible? Definitivamente

¿Es fácil gracias a las API de Android? - no es realmente

Me acaba de agregar una nueva solicitud de función que daría soporte Android para leer USLT en la etiqueta ID3. Esto permitirá a los reproductores de música partido nativas y 3 para mostrar letras. Si desea esta función, la estrella de la petición abajo, y publicar sus comentarios.

http://code.google.com/p/android/ temas / detalle? id = 32547

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top