Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Qt. Аудио-плеер. Проблема с плейлистом. Проблема с метаданными (metadata) 
V
    Опции темы
maks991
Дата 17.12.2010, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 8.8.2010

Репутация: нет
Всего: нет



Итак, во-первых, есть такая функция:

Код

void MainWindow::addFileAction()
{
    QStringList fileNames = QFileDialog::getOpenFileNames(
        this,
        tr("Open Audio File"),
        QDesktopServices::storageLocation(QDesktopServices::MusicLocation),
        tr("Audio Files (*.mp3 *.wav)"));

    if (fileNames.empty())
    {
        return;
    }

    foreach (QString fileName, fileNames)
    {
        metaInformator->setCurrentSource(MediaSource(fileName));
        QMap<QString, QString> metaData = metaInformator->metaData();

        QString title = metaData.value("TITLE");
        QString artist = metaData.value("ARTIST");
        QString album = metaData.value("ALBUM");

        int n = playlistTable->rowCount();
        playlistTable->insertRow(n);
        QTableWidgetItem *titleItem = new QTableWidgetItem(title);
            titleItem->setFlags(titleItem->flags() ^ Qt::ItemIsEditable);
        QTableWidgetItem *artistItem = new QTableWidgetItem(artist);
            artistItem->setFlags(artistItem->flags() ^ Qt::ItemIsEditable);
        QTableWidgetItem *albumItem = new QTableWidgetItem(album);
            albumItem->setFlags(albumItem->flags() ^ Qt::ItemIsEditable);

        playlistTable->setItem(n, 0, titleItem);
        playlistTable->setItem(n, 1, artistItem);
        playlistTable->setItem(n, 2, albumItem);
    }
}


Итак. Например, я в диалоге выбора файла выбираю файл music1.mp3, нажимаю открыть. В таблице playlistTable добавляется одна пустая строка. Затем выбираю три файла каких-нибудь - мне добавляется 3 строки, НО в каждой из них находятся теги файла misic1.mp3 ! Ничего не понимаю.
Я проверял, выводил значения списка fileNames, все строки там нормально добавляются. Вобщем я нашёл такой косяк, что какая-то фигня с извлечением тегов...помогите, пожалуйста, решить проблему. Заранее спасибо.
metaInformator - это объект класса MediaObject из модуля Phonon.

Добавлено через 3 минуты и 9 секунд
Короче говоря, когда я загружаю файл первый, теги вообще не извлекаются...мне эта мапа выдаёт пустые строки по указанным ключам :(

Это сообщение отредактировал(а) maks991 - 17.12.2010, 18:05
PM MAIL   Вверх
maks991
Дата 17.12.2010, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 8.8.2010

Репутация: нет
Всего: нет



Всё, сделал. Вопрос закрыт.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.1043 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.