Obter ilustrações do álbum iTunes sem o iTunes executando
Pergunta
Em um aplicativo de cacau, eu estou procurando uma solução para recuperar capa do álbum do iTunes sem exigir iTunes próprio para ser lançado e executado em segundo plano.
O talvez única solução usual e, Scripting Bridge, e inerentemente AppleScript, vai lançar iTunes antes de executar qualquer comando.
Album obra de arte é a única informação que não pode ser obtida a partir de análise iTunes Library.xml
. iTunes ofusca o armazenamento de obras de arte da seguinte maneira, para uma determinada faixa:. ~/{Library Path}/Album Artwork/Cache/D989408F65D05F99/04/13/04/D989408F65D05F99-EB5B7A9086F4B4D4.itc
Alguém sabe de uma técnica para obter a arte do álbum sem lançar iTunes? Eu sempre poderia ir por um caminho diferente, como o uso de serviço de dados da Amazon, mas eu preferiria uma solução iTunes baseada local.
Solução
Os nomes de arquivos são uma amálgama do ID biblioteca (D989408F65D05F99) e ID da faixa (EB5B7A9086F4B4D4). A estrutura de diretórios vem do ID biblioteca e os três últimos dígitos do ID da faixa convertido em decimal, ou seja, 4D4 torna-se 04, 13, 04.
Os arquivos .itc parecem ter um / estrutura do tipo fragmentada RIFF. Há um pouco sobre a estrutura dos arquivos aqui .
Outras dicas
iTunes 11+ (MacOS 10.13+) introduziu iTunes Biblioteca Framework que tem essa capacidade, você também não precisa analisar o iTunes Library.xml mais ou ler as pastas de armazenamento das faixas