С кодом, который у меня есть прямо сейчас, я МОГУ успешно воспроизводить данные .mp3 из файлов. Однако мне нужно воспроизвести те же данные, используя QtCore.QBuffer (НЕ из файла). Когда я использую пример документов, он выдает неожиданный тип QBuffer! Однако ...... это то, что он ДОЛЖЕН видеть, согласно документам.
Но............... выдает:
TypeError: Phonon.MediaObject.setCurrentSource(Phonon.MediaSource): аргумент 1 имеет неожиданный тип «QBuffer»
Я использую код (1):
someBuffer = QtCore.QBuffer() someBuffer.writeData(TrackData) mediaObject.setCurrentSource(someBuffer)
Я также пробовал (2):
someBuffer = QtCore.QBuffer() mediaObject.setCurrentSource(someBuffer) someBuffer.writeData(TrackData)
и (3):
someBuffer = QtCore.QBuffer() someBuffer.writeData(TrackData) mediaObject.setCurrentSource(Phonon.MediaSource(someBuffer))
The last example (3) throws an different ERROR and wipes my Gui off screen ;-)
ASSERT: "d->connected" in file /builddir/build/BUILD/phonon-4.5.1/phonon/streaminterface.cpp, line xxxx
Примечания:
TrackData содержит данные mp3 и ВОСПРОИЗВОДИТСЯ ОК, когда я записываю его в файл и использую его в качестве ресурса для mediaObject.setCurrentSource(Phonon.MediaSource()) Я также экспериментировал с QByteArray, но это приводит к той же «неожиданной ошибке QBuffer». Точнее все, что я подаю setCurrentSource, не принимается. Пробовал строку (ошибки неожиданного типа String), пробовал QBuffer (ошибки неожиданный тип QBuffer), пробовал QByteArray (ошибки неожиданный тип QByteArray).
Кстати: я запускаю Qt, PyQt в Linux.
Любые идеи??