Phonon :: MediaSource, не может использовать ресурс в качестве источника медиа - PullRequest
1 голос
/ 01 марта 2011

в QT 4.6 я пытаюсь получить доступ к файлу wav в моем файле QResource, чтобы использовать его в качестве источника мультимедиа для проигрывателя мультимедиа, и он не работает:

Phonon::MediaObject *music;  
music=Phonon::createPlayer(Phonon::MusicCategory,Phonon::MediaSource(:/FPS_sounds/arming.wav));  
music->play();

Если я поставлю прямой путь, это сработает. Я успешно использовал ресурсы в других частях моей программы, так что, похоже, там нет проблем, и Qt doc говорит, что я могу использовать QResource для этого типа операций. Это ошибка или я что-то упустил?

1 Ответ

1 голос
/ 06 марта 2011

Этот тоже дал мне хорошую царапину. Но, о чудо, это можно легко реализовать с помощью временного файла:

  {
        QTemporaryFile f;
        f.open(); 
        QResource res(":/badger");
        f.write((char*)res.data(),res.size());
        f.flush();
        f.setAutoRemove(true);
        f.close();
        QString fn = f.fileName();
        QSound::play(fn);
    }
...