Потоковое аудио с помощью PythonPython

Программы на Python
Anonymous
Потоковое аудио с помощью Python

Сообщение Anonymous »

Чтобы помочь мне понять потоковое аудио, я хочу реализовать очень простой проигрыватель интернет-радио, используя pyqt, привязки Python к классам Qt.
Следующий код создает соответствующее окно но звука нет.

Код: Выделить всё

from PyQt5.QtWidgets    import QApplication, QMainWindow
from PyQt5.QtMultimedia import QMediaContent, QMediaPlayer

class MainWindow(QMainWindow):
def __init__(self, \*args, \*\*kwargs):
super().__init__(\*args, \*\*kwargs)

self.player = QMediaPlayer(None, flags = QMediaPlayer.StreamPlayback)
media = QUrl("http://wsdownload.bbc.co.uk/worldservice/meta/live/shoutcast/mp3/eieuk.pls")
content = QMediaContent(media)
self.player.setMedia(content)
self.player.play()

if __name__ == '__main__':
app = QApplication(sys.argv)
window = MainWindow(windowTitle = "Simple internet radio")
window.show()
sys.exit(app.exec\_())
Я могу воспроизвести поток из адресной строки браузера. Также плеер работает, если я подменяю аудиопоток локальным файлом, как в:

Код: Выделить всё

media = QUrl.fromLocalFile('\~/bbc.mp3')
Я делаю вывод, что проблема именно в потоковом режиме. Я уверен, что мне что-то не хватает (например, буферизация), но мне не удалось найти работающий пример в Интернете. Документация Qt по потоковой передаче очень скудна.
Может кто-нибудь сказать мне, чего мне не хватает?

Подробнее здесь: https://stackoverflow.com/questions/785 ... ith-python

Вернуться в «Python»