Russian Qt Forum

Qt => Вопросы новичков => Тема начата: Witcher от Июль 24, 2011, 13:15



Название: Mp3 тэги
Отправлено: Witcher от Июль 24, 2011, 13:15
Какими способами можно вытащить их из файла?, хранятся они в последних 128-ми байтах MP3-файла, подскажите команду для открытия файла и вытаскивания этих самых 128-ми байтов..


Название: Re: Mp3 тэги
Отправлено: LisandreL от Июль 24, 2011, 13:48
QFile::seek


Название: Re: Mp3 тэги
Отправлено: LisandreL от Июль 24, 2011, 13:56
Можно ради интереса поковыряться в исходниках http://code.google.com/p/qtagger/


Название: Re: Mp3 тэги
Отправлено: Witcher от Июль 24, 2011, 14:23
благодарю, посмотрю что получится)


Название: Re: Mp3 тэги
Отправлено: Witcher от Июль 24, 2011, 16:28
Сделал так

Код:
void MainWindow::Tags(char *tracktag){

    QFile file(tracktag);
    file.open(QIODevice::ReadOnly);
    file.seek(file.size()-128);
    QTextCodec::setCodecForCStrings( QTextCodec::codecForName("windows-1251") );
    QByteArray title = file.readAll();
     ///

}

Получаю только

TAGНазвание трека

а иногда вообще пустую строку
По идее после TAG должен идти id , но почемуто его нет, в стандартном плеере убунту все норм отображается, может что-то я не правильно делаю?

}


Название: Re: Mp3 тэги
Отправлено: LisandreL от Июль 24, 2011, 17:45
1) Вы уверены, что там cp1251 везде, а не utf-8?
2) Вы уверены, что там везде 128-байтный ID3v1, а не 227-байтный?
3) Вы уверены, что там вообще не ID3v2?

По идее после TAG должен идти id , но почемуто его нет
А вы как это определяете? Если пытаетесь вывести, как строчку, то оно дойдёт до '\0' и на этом успокоится.


Название: Re: Mp3 тэги
Отправлено: Witcher от Июль 24, 2011, 18:17
Да там везде 128, utf-8 не даст требуемого результата(получим тоже самое, только русские символы не отобразятся нормально), третье тоже отпадает. Выводил и как строку и как массив символов, результат одинаковый.


Название: Re: Mp3 тэги
Отправлено: LisandreL от Июль 24, 2011, 18:36
Выводил и как строку и как массив символов, результат одинаковый.
Покажите вывод.

Да там везде 128
«а иногда вообще пустую строку» с большой вероятностью говорит об обратном.


Название: Re: Mp3 тэги
Отправлено: Fess от Июль 24, 2011, 18:37
Советую вам все же не велосипедить, а воспользоваться готовым решением:
http://developer.kde.org/~wheeler/taglib.html - основа QTagger
http://id3lib.sourceforge.net/
или им подобными.
С использованием одной библиотеки вы разберетесь быстрее, чем с форматом файлов и кучей кодировок.


Название: Re: Mp3 тэги
Отправлено: Witcher от Июль 24, 2011, 18:47
Короче все дело в "/0", разобрался сейчас переделаю.
Всех благодарю за советы)