Вот мой код:
Код: Выделить всё
import os
import sys
from PySide6.QtCore import QUrl
from PySide6.QtMultimedia import QMediaPlayer, QAudioOutput
from PySide6.QtWidgets import QMainWindow, QApplication, QPushButton
class MainWindow(QMainWindow):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
# self.setupUi(self)
self.playButton = QPushButton('Play')
self.player = QMediaPlayer()
self.audioOutput = QAudioOutput()
self.player.setAudioOutput(self.audioOutput)
self.player.errorOccurred.connect(self.error)
self.player.mediaStatusChanged.connect(self.status_changed)
self.playButton.pressed.connect(self.play)
self.setCentralWidget(self.playButton)
def play(self):
file_path = './resources/audio/City.wav'
absolute_path = os.path.abspath(file_path)
print(f'absolute_path: {absolute_path}')
self.player.setSource(QUrl(absolute_path))
self.player.play()
print(f'Volume: {self.audioOutput.volume()}')
print(f'Devices: {self.audioOutput.device()}')
print(f"player status: {self.player.mediaStatus()}")
def error(self, error):
print(f'Error: {error}')
def status_changed(self, status):
print(f'Status changed: {status}')
if __name__ == '__main__':
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec())
Код: Выделить всё
absolute_path: D:\pythonProject\winapp\resources\audio\City.wav
Volume: 1.0
Devices:
player status: MediaStatus.NoMedia
Я использую
PySide6 6.7.3,
Windows 11 22631.4169
Подробнее здесь: https://stackoverflow.com/questions/790 ... windows-11