Музыкальный плеер - проблема с пропуском песен + пауза и т. Д.

Я делал программу для музыкального плеера, чтобы попрактиковаться в использовании Tkinter для моего NEA (Alevel Computer Science Project). У меня есть функция случайного воспроизведения в программе, но я не могу найти способ приостановки / пропуска песен.
Пример кода: (очевидно, я импортировал tkinter, random и winsound, также у меня есть больше песен)

def song1():
    print('song name - song artist')
    winsound.PlaySound(r"song address",winsound.SND_FILENAME)
def shuffle():
    ShuffleButton.grid_remove()
    playlist=list(range(1,NumberOfSongs+1))
    random.shuffle(playlist)
    print(playlist)
    i=int(0)
    while i<=NumberOfSongs:
        if playlist[i]==1:
            song1()
            i=i+1

Кстати, я знаю, что, возможно, есть гораздо более простой способ сделать музыкальный проигрыватель, но я действительно могу понять этот путь.

1 ответ

Замещать SND_FILENAME с SND_ASYNC это позволит вам изменить песню во время воспроизведения.

Когда используешь SND_ASYNC функция shuffle должна быть изменена так, чтобы песня играла - это можно сделать с помощью time.sleep(LengthOfSongInSeconds) под winsound.PlaySound(r"SongAddress",SND_ASYNC) это позволит песне играть до следующего (el)if playlist[i]==x: будет играть следующую песню в списке. Я знаю, что будет более эффективный способ, позволяющий полностью воспроизвести песню, и я работаю над ее решением.

Другие вопросы по тегам