Музыкальный плеер - проблема с пропуском песен + пауза и т. Д.
Я делал программу для музыкального плеера, чтобы попрактиковаться в использовании 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:
будет играть следующую песню в списке. Я знаю, что будет более эффективный способ, позволяющий полностью воспроизвести песню, и я работаю над ее решением.