Pregunta

En una aplicación Cocoa, estoy buscando una solución para recuperar la carátula del álbum de iTunes sin requerir que iTunes se lance y se ejecute en segundo plano.

La solución habitual y quizás única, Scripting Bridge, e inherentemente AppleScript, lanzará iTunes antes de ejecutar cualquier comando.

La carátula del álbum es la única información que no se puede obtener al analizar iTunes Library.xml . iTunes ofusca el almacenamiento de ilustraciones de la siguiente manera, para una pista dada: ~ / {Library Path} / Album Artwork / Cache / D989408F65D05F99 / 04/13/04 / D989408F65D05F99-EB5B7A9086F4B4D4.itc .

¿Alguien sabe de una técnica para obtener la carátula del álbum sin iniciar iTunes? Siempre podría tomar una ruta diferente, como usar el servicio de datos de Amazon, pero preferiría una solución local basada en iTunes.

¿Fue útil?

Solución

Los nombres de archivo son una amalgama de la ID de la biblioteca (D989408F65D05F99) y la ID de la pista (EB5B7A9086F4B4D4). La estructura del directorio proviene de la ID de la biblioteca y los últimos tres dígitos de la ID de la pista se convierten en decimal, es decir, 4D4 se convierte en 04, 13, 04.

Los archivos .itc parecen tener una estructura de tipo RIFF / fragmentada. Hay un poco en la estructura de los archivos aquí .

Otros consejos

iTunes 11+ (macOS 10.13+) introdujo iTunes Library Framework que también tiene esta capacidad, ya no necesita analizar iTunes Library.xml o leer las carpetas de almacenamiento de las pistas

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