Итак, моя конечная игра получает обложку альбома из моих аудиофайлов. Я использую taglib и C++. Я нашел информацию о том, как извлекать данные встроенного изображения, но кажется, что Windows Media Player не внедряет сам образ. вместо этого он сохраняет jpg под названием что-то вроде AlbumArt_ {E3208100-4FAA-4030-BB9D-6DA5F9D93D18} _Large.jpg. очевидно, что он использует guid, который, по моему мнению, сохраняет в теге PRIV. мой вопрос к вам, как я могу добраться до него? Я думал, что-то вроде этого может работать:Извлечение GUID из файла MP3 с помощью TagLib
ID3v2::PrivateFrame* privFrame = static_cast<ID3v2::PrivateFrame*>(*privIter);
if(privFrame != NULL)
{
std::string owner = privFrame->owner().toCString();
if (owner == "WM/WMCollectionID" || owner == "WM/WMCollectionGroupID")
{
const char* data = privFrame->render().data();
GUID guid;
memcpy(&guid.Data1, data, sizeof(long));
}
}
но данные, похоже, ничего полезного. есть идеи?
так, я не получаю никаких ударов на это, и я не найти какие-либо хорошие ресурсы в Интернете, поэтому я рассматриваю чтение данных вручную с good'ol fstream. кто-нибудь знает какие-либо ресурсы для этого? мне нужно будет сначала проверить, что файл содержит теги id3v2, а затем читать каждый, пока я не найду тот, который я ищу. подробности о спецификации, а также любые извлеченные уроки будут очень полезными. – mike