Получить обложку альбома iTunes без запуска iTunes
Вопрос
В приложении Какао я ищу решение для извлечения обложек альбомов из iTunes без необходимости запуска и запуска самого iTunes в фоновом режиме.
Обычное и, возможно, единственное решение, Scripting Bridge и, по сути, AppleScript, запустит iTunes до выполнения каких-либо команд.
Обложка альбома - это единственная информация, которую нельзя получить при разборе iTunes Library.xml
. iTunes запутывает хранение иллюстраций для данного трека следующим образом: ~ / {Путь к библиотеке} / обложка альбома / Cache / D989408F65D05F99 / 04/13/04 / D989408F65D05F99-EB5B7A9086F4B4D4.itc
. / р>
Кто-нибудь знает методику создания обложек альбомов без запуска iTunes? Я всегда мог пойти другим путем, например, использовать сервис данных Amazon, но я бы предпочел локальное решение на основе iTunes.
Решение
Имена файлов представляют собой объединение идентификатора библиотеки (D989408F65D05F99) и идентификатора дорожки (EB5B7A9086F4B4D4). Структура каталогов происходит из идентификатора библиотеки и последних трех цифр идентификатора дорожки, преобразованных в десятичную, т.е. 4D4 становится 04, 13, 04.
Файлы .itc, похоже, имеют структуру типа RIFF / chunked. Есть немного о структуре файлов здесь .
Другие советы
iTunes 11+ (macOS 10.13+) представил iTunes Library Framework, которая также имеет эту возможность: вам больше не нужно анализировать iTunes Library.xml или читать папки хранения треков