Hướng dẫn how do i play music and stop in python? - làm cách nào để phát nhạc và dừng trong python?

Làm cách nào để dừng âm thanh phát thông qua mô -đun PlayAudio trong mã Python? Tôi đã chơi nhạc nhưng tôi không thể dừng âm nhạc đó. Làm thế nào tôi có thể ngăn chặn nó?

playsound.playsound("name_of_file")

Hướng dẫn how do i play music and stop in python? - làm cách nào để phát nhạc và dừng trong python?

Tomerikoo

16.8K16 Huy hiệu vàng39 Huy hiệu bạc57 Huy hiệu đồng16 gold badges39 silver badges57 bronze badges

hỏi ngày 23 tháng 7 năm 2019 lúc 7:24Jul 23, 2019 at 7:24

Hướng dẫn how do i play music and stop in python? - làm cách nào để phát nhạc và dừng trong python?

2

Bạn có thể sử dụng mô -đun đa xử lý để phát âm thanh làm quá trình nền, sau đó chấm dứt nó bất cứ lúc nào bạn muốn:

import multiprocessing
from playsound import playsound

p = multiprocessing.Process(target=playsound, args=("file.mp3",))
p.start()
input("press ENTER to stop playback")
p.terminate()

Hướng dẫn how do i play music and stop in python? - làm cách nào để phát nhạc và dừng trong python?

Artemis

2.4777 Huy hiệu vàng20 Huy hiệu bạc35 Huy hiệu Đồng7 gold badges20 silver badges35 bronze badges

Đã trả lời ngày 12 tháng 4 năm 2020 lúc 21:40Apr 12, 2020 at 21:40

Hướng dẫn how do i play music and stop in python? - làm cách nào để phát nhạc và dừng trong python?

1

Playsound là một mô -đun chức năng duy nhất phát âm thanh, và không có gì khác. Có vẻ như điều đó có nghĩa là nó cũng không ngừng phát âm thanh. Từ tài liệu của riêng họ:

Mô -đun chơi chỉ chứa một thứ - hàm (cũng được đặt tên) chơi.

Cá nhân, tôi thích sử dụng pyaudio. Mã sau đây được điều chỉnh từ ví dụ ở đây. Mã phát âm thanh và có thanh không gian được đặt làm nút tạm dừng/chơi.

import pyaudio
import wave
import time
from pynput import keyboard

paused = False    # global to track if the audio is paused
def on_press(key):
    global paused
    print (key)
    if key == keyboard.Key.space:
        if stream.is_stopped():     # time to play audio
            print ('play pressed')
            stream.start_stream()
            paused = False
            return False
        elif stream.is_active():   # time to pause audio
            print ('pause pressed')
            stream.stop_stream()
            paused = True
            return False
    return False


# you audio here
wf = wave.open('audio\\songs\\And_Your_Bird_Can_Sing_mp3_2_wav.wav', 'rb')

# instantiate PyAudio
p = pyaudio.PyAudio()

# define callback
def callback(in_data, frame_count, time_info, status):
    data = wf.readframes(frame_count)
    return (data, pyaudio.paContinue)

# open stream using callback
stream = p.open(format=p.get_format_from_width(wf.getsampwidth()),
                channels=wf.getnchannels(),
                rate=wf.getframerate(),
                output=True,
                stream_callback=callback)

# start the stream
stream.start_stream()

while stream.is_active() or paused==True:
    with keyboard.Listener(on_press=on_press) as listener:
        listener.join()
    time.sleep(0.1)

# stop stream
stream.stop_stream()
stream.close()
wf.close()

# close PyAudio
p.terminate()

Đã trả lời ngày 5 tháng 8 năm 2019 lúc 0:56Aug 5, 2019 at 0:56

Trên Windows, hãy thử: import winsound

winsound.PlaySound(r'C:\sound.wav', winsound.SND_ASYNC)

Dừng phát lại:

winsound.PlaySound(None, winsound.SND_PURGE)

Đã trả lời ngày 5 tháng 8 năm 2019 lúc 1:44Aug 5, 2019 at 1:44

Hướng dẫn how do i play music and stop in python? - làm cách nào để phát nhạc và dừng trong python?

Ben Rauziben RauziBen Rauzi

5054 Huy hiệu bạc12 Huy hiệu đồng4 silver badges12 bronze badges

#pip install pygame
from pygame import mixer
import time
mixer.init() #Initialzing pyamge mixer

mixer.music.load('lovingly-618.mp3') #Loading Music File

mixer.music.play() #Playing Music with Pygame

time.sleep(5)


mixer.music.stop()

Đã trả lời ngày 20 tháng 4 năm 2021 lúc 19:35Apr 20, 2021 at 19:35

1

Đây là một cách dễ dàng hơn nhiều:

wmp = win32com.client.dynamic.Dispatch("WMPlayer.OCX")
wmp.settings.autoStart = True
wmp.settings.volume = 100
wmp.URL = file
while globals()["allowSound"]:
    PumpWaitingMessages()

Bạn có thể thay đổi Globals () ["cho phép"] từ một luồng khác và đặt nó thành sai khi âm thanh đã kết thúc (bạn có thể có độ dài của âm thanh với wmp.durationstring)

Dưới đây là một số thông tin khác về điều này: Windows Media Player Com Tự động hóa hoạt động từ VBS nhưng không phải từ Python

Mặc dù điều này không sử dụng mô -đun Playsound nhưng nó là một sự thay thế tốt.

Đã trả lời ngày 17 tháng 3 năm 2021 lúc 20:46Mar 17, 2021 at 20:46

Hướng dẫn how do i play music and stop in python? - làm cách nào để phát nhạc và dừng trong python?

0

Sau khi thực hiện thành công chương trình, tệp âm thanh sẽ bắt đầu phát. Bây giờ bấm vào thiết bị đầu cuối, một khi bạn thấy con trỏ, nhập Ctrl+C, nó sẽ đưa bạn ra khỏi thiết bị đầu cuối và âm thanh cũng sẽ ngừng phát.

Hướng dẫn lập trình được sử dụng:

from playsound import playsound

playsound('//path//to//a//sound//file//you//want//to//play.mp3')

Tomerikoo

16.8K16 Huy hiệu vàng39 Huy hiệu bạc57 Huy hiệu đồng16 gold badges39 silver badges57 bronze badges

Đã trả lời ngày 15 tháng 6 năm 2021 lúc 8:42Jun 15, 2021 at 8:42

1

Dễ dàng ...... trên tab Terminal của bạn, hãy tìm tùy chọn Kill (Xóa) ở phía bên tay phải. Nhấp vào tùy chọn Xóa và nó sẽ ngừng phát

Đã trả lời ngày 16 tháng 7 lúc 6:07Jul 16 at 6:07

Hướng dẫn how do i play music and stop in python? - làm cách nào để phát nhạc và dừng trong python?