У меня есть код, который отображает в списке MP3-файлы, находящиеся в выбранной папке. Я хотел добавить возможность воспроизвести файл, путь к которому прописал в самом коде. Если нажать на кнопку, файл будет проигрываться, но в терминале VS Code начнется спам одного и того же сообщения: "QCoreApplication::exec: The event loop is already running". Если подождать еще немного, выйдет сообщение, что приложение не отвечает, скрин будет ниже. Я пробовал запускать отдельно код, отвечающий за воспроизведение файла, ошибок при этом не возникало. Пожалуйста, подскажите, где мог допустить ошибку
![5e0b219c97c62335302231.png](https://habrastorage.org/webt/5e/0b/21/5e0b219c97c62335302231.png)
import sys, os, pygame, mutagen.mp3, design
from PyQt5 import QtWidgets
class Browse(QtWidgets.QMainWindow, design.Ui_MainWindow):
def __init__(self):
super().__init__()
self.setupUi(self)
self.ButtonBrowse.clicked.connect(self.browse_folder)
self.ButtonPlay.clicked.connect(self.play_track)
def browse_folder(self):
self.listWidget.clear()
directory = QtWidgets.QFileDialog.getExistingDirectory(self, "Выберите папку")
if directory:
for file_name in os.listdir(directory):
if file_name.endswith(".mp3") | file_name.endswith(".wav"):
self.listWidget.addItem(file_name)
def play_track(self):
song_file = "C:\\Users\\101ap\\Desktop\\Player\\music\\LINKIN PARK\\Meteora\\13. Numb.mp3"
mp3 = mutagen.mp3.MP3(song_file)
pygame.mixer.init(frequency=mp3.info.sample_rate)
pygame.mixer.music.load(song_file)
pygame.mixer.music.play()
input()
def main():
app = QtWidgets.QApplication(sys.argv)
window = Browse()
window.show()
app.exec_()
if __name__ == '__main__':
main()