Hướng dẫn python play sound through microphone - python phát âm thanh qua micrô

Nếu bạn có nghĩa là cách chơi mp3 bằng cách sử dụng Python, thì đây là một câu hỏi rộng.

Có thể, không có bất kỳ sự phụ thuộc nào, vâng, nó là, nhưng nó không đáng. Chà, chơi âm thanh không nén là, nhưng mp3, tốt, tôi sẽ giải thích dưới đây.

Để phát dữ liệu âm thanh thô từ Python mà không cần cài đặt pyaudio hoặc pygame hoặc tương tự, trước tiên bạn phải biết nền tảng mà tập lệnh của bạn sẽ được chạy.

Sau đó thực hiện một bộ chức năng đẹp để chọn thiết bị âm thanh, thiết lập các thuộc tính như tốc độ mẫu, tốc độ bit, mono/stereo ..., cung cấp cho luồng vào thẻ âm thanh và dừng phát lại.

Nó không khó, nhưng để làm điều đó, bạn phải sử dụng CTYPE trên Windows, PyOBJC trên Mac và Linux là trường hợp đặc biệt vì nó hỗ trợ nhiều hệ thống âm thanh (có thể sử dụng ổ cắm để kết nối với Pulseaudio hoặc đường ống với một số quy trình như APlay/PAPLAY/MPEG123 ... hoặc khai thác gstreamer.).

Nhưng tại sao đi qua tất cả những điều này chỉ để tránh các phụ thuộc, khi bạn có các thư viện đẹp ngoài đó với các giao diện đơn giản để truy cập và sử dụng các thiết bị âm thanh.

Pyaudio là tuyệt vời.

Vâng, đó là mối quan tâm của bạn.

Nhưng, chơi MP3 mà không có thư viện bên ngoài, trong thời gian thực, từ Pure Python, tốt, điều đó không chính xác là không thể, nhưng rất khó để đạt được, và theo như tôi biết thậm chí không ai thử làm điều đó.

Có triển khai bộ giải mã MP3 Python thuần túy, nhưng nó chậm hơn 10 lần so với cần thiết để phát lại âm thanh thời gian thực. Nó có thể được tối ưu hóa cho gần như tốc độ tối đa, nhưng không ai quan tâm đến việc làm như vậy.

Nó chủ yếu có giá trị giáo dục và nó được sử dụng trong trường hợp bạn không cần tốc độ thời gian thực.

Đây là những gì bạn nên làm:

Cài đặt pygame và sử dụng nó để chơi trực tiếp mp3

or:

Cài đặt pyaudio và một số thư viện giải mã mp3, có khá nhiều trong số chúng trên pypi.python.org và sử dụng nó để giải mã mp3 và cung cấp đầu ra cho pyaudio.

Có một số khả năng khác, bao gồm cả pymedia, nhưng tôi xem xét đây là những giải pháp dễ nhất.

Được rồi, như chúng tôi đã làm rõ những gì bạn thực sự cần ở đây là câu trả lời.

Tôi sẽ để lại câu trả lời đầu tiên nguyên vẹn vì bạn cũng cần phần đó.

Bây giờ, bạn muốn phát âm thanh vào luồng ghi, để bất kỳ ứng dụng nào ghi lại đầu vào âm thanh ghi lại những thứ bạn đang phát.

Trên Windows, điều này được gọi là hỗn hợp âm thanh nổi và có thể được tìm thấy trong điều khiển âm lượng, dưới đầu vào âm thanh.

Bạn chọn Stereo Mix làm đầu vào mặc định của bạn. Bây giờ, khi bạn mở một ứng dụng ghi âm không chọn kênh đầu vào của nó, nhưng sử dụng ứng dụng đã chọn (ví dụ: Skype), nó sẽ ghi lại tất cả các loa của bạn và đi vào mic/dòng của bạn.

Tôi không chắc chắn 100% liệu tùy chọn này sẽ xuất hiện trên tất cả các cửa sổ hay đó là tính năng của thẻ âm thanh bạn có.

Tôi tích cực rằng thẻ âm thanh Creative và Realtek hỗ trợ nó.

Vì vậy, nghiên cứu này.

Để chọn tùy chọn đó từ Python, bạn phải kết nối với WinMM.Dll bằng cách sử dụng CTYPES và gọi chức năng thích hợp. Tôi không biết cái nào và với những lý lẽ.

Nếu tùy chọn này không có trong điều khiển âm lượng, không có gì cho nó ngoài việc cài đặt thẻ âm thanh ảo để thực hiện vòng lặp cho bạn.

Có thể có một phần mềm được đóng gói trong thư viện để bạn có thể sử dụng nó từ Python hoặc bất cứ điều gì.

Trên Linux, điều này sẽ dễ dàng sử dụng Pulseaudio. Tôi không biết làm thế nào, nhưng tôi biết rằng bạn có thể làm điều đó, chuyển hướng các luồng, v.v ... Có hướng dẫn ở đâu đó.

Sau đó, bạn có thể gọi lệnh đó từ Python, để đặt thành này và đặt lại trở lại bình thường.

Trên Mac, tốt, tôi thực sự không có ý tưởng, nhưng nó có thể là có thể.

Nếu bạn muốn MP3 của mình chỉ được phát vào luồng ghi và hoàn toàn không phải trên loa của bạn, trên Windows, bạn sẽ không thể làm điều đó nếu không có thiết bị âm thanh Loopback.

Trên Linux, tôi chắc chắn rằng bạn sẽ có thể làm điều đó và trên Mac thì có thể, nhưng Q.

Tôi hiện không có thời gian để đánh hơi xung quanh các thư viện, v.v. để cung cấp cho bạn một số mã hữu ích, vì vậy bạn sẽ phải tự làm. Nhưng tôi hy vọng hướng dẫn của tôi sẽ giúp bạn.

Bạn có thể chơi MP3 trực tiếp từ kịch bản Python. Cách dễ nhất để làm điều này là với máy trộn pygame được sử dụng như:
The easiest way to do this is with pygame mixer which is use like:

from pygame import mixer

def play_mp3(mp3filename):
    mixer.init()
    mixer.music.load(mp3filename)
    mixer.music.play()

Bài viết: 2929

Chủ đề: 1010

Tham gia: Mar 2019Mar 2019

Danh tiếng: 1 1

Tháng 4 năm 04-2019, 10:06 PM (Bài đăng này đã được sửa đổi lần cuối: Tháng 4 năm 04-2019, 10:06 PM bằng cách bị đẩy ra.) (This post was last modified: Apr-04-2019, 10:06 PM by ejected.)

. Cách dễ nhất để làm điều này là với máy trộn pygame được sử dụng như: ________ 0Larz60+ Wrote: you can play the mp3 directly from the python script.
The easiest way to do this is with pygame mixer which is use like:
from pygame import mixer

def play_mp3(mp3filename):
    mixer.init()
    mixer.music.load(mp3filename)
    mixer.music.play()

Đó không phải là những gì tôi đang cố gắng làm .....

Tôi cần thay đổi thiết bị đầu ra thành một cái gì đó khác sau đó là Windows mặc định.

Một cái gì đó như thế này: để tôi có thể thay đổi thiết bị phát lại

Hướng dẫn python play sound through microphone - python phát âm thanh qua micrô

Bài viết: 11.44211,442

Chủ đề: 435435

Tham gia: Tháng 9 năm 2016Sep 2016

Danh tiếng: 440 440

Có thể được thực hiện với selenium, bạn đã có một chút đường cong học tập phía trước, nhưng chỉ có một hướng dẫn tốt trên diễn đàn này, được thực hiện bởi Snippsat Scraping Part-1 Scraping Part-2 (trang : 1 2)
Web-Scraping part-1
Web-scraping part-2 (Pages: 1 2 )

Bài viết: 2929

Chủ đề: 1010

Tham gia: Mar 2019Mar 2019

Danh tiếng: 1 1

Tháng 4 năm 04-2019, 11:00 tối (Bài đăng này đã được sửa đổi lần cuối: Tháng 4-05-2019, 01:33 PM bằng cách bị đẩy ra.) (This post was last modified: Apr-05-2019, 01:33 PM by ejected.)

. Snippsat Xóa Web Part-1 Scraping Part-2 (trang: 1 2)Larz60+ Wrote: can be done with selenium, you've got a bit of a learning curve ahead of you, but there just happens to be a good tutorial on this forum, done by snippsat
Web-Scraping part-1
Web-scraping part-2 (Pages: 1 2 )

Người đàn ông tôi không cố gắng cạo web. Cho f *** sakes.

....Tui bỏ lỡ điều gì vậy?? Thực sự không có gì trong Phần 1 hoặc Phần 2 của các hướng dẫn về âm thanh/âm nhạc/chơi/thiết bị/ECT. Điều duy nhất âm thanh liên quan đến đó là web Scraping SoundCloud.com mà tôi không cố gắng làm bất cứ điều gì gần với điều đó.

Bài viết: 11.44211,442

Chủ đề: 435435

Tham gia: Tháng 9 năm 2016Sep 2016

Danh tiếng: 440 440

Là hình ảnh mà bạn hiển thị ứng dụng của mình? Và xin vui lòng kiềm chế sự thô tục. Nếu đó không phải là ứng dụng của bạn, cách duy nhất để tự động hóa việc thay đổi thiết bị phát lại (trừ khi bạn có mã nguồn) nếu sử dụng một số loại tự động hóa trình duyệt như Selenium hoặc mong đợi.
And please refrain from vulgarity.
If it's not your app, the only way to automate changing the playback device (unless you have source code)
if to use some sort of browser automation like selenium or expect.

Bài viết: 129

Chủ đề: 010

Tham gia: Tháng 10 năm 2021Mar 2019

Danh tiếng: 0 1

Tháng 10-16-2021, 05:19 PM (Bài đăng này đã được sửa đổi lần cuối: ngày 16-2021, 07:02 tối bởi Larz60+.)Larz60+ Wrote: Is the image that you show your application?
And please refrain from vulgarity.
If it's not your app, the only way to automate changing the playback device (unless you have source code)
if to use some sort of browser automation like selenium or expect.

Tôi vẫn đang tìm cách làm thế nào để đầu ra vào đầu vào (vì vậy nó có thể được chọn bởi Zoom, giả sử) có vẻ như OBS có thể làm điều này để nó có thể là một trường hợp tìm ra cách làm thế nào.

.

Tôi không biết làm thế nào khác để giải thích nó ... Tôi thực sự không. Tôi không có ý nghe thô lỗ hoặc xấu tính hoặc hạ mình hoặc bất cứ điều gì tôi hiểu các bạn chỉ đang cố gắng giúp tôi, nhưng có lẽ nếu các bạn không phải người Mỹ bản địa dịch nó sang ngôn ngữ mẹ đẻ của bạn? Một lần nữa không có nghĩa là âm thanh như một khuôn mặt phân hay bất cứ điều gì, nhưng có lẽ điều đó sẽ giúp ích?

from gtts import gTTS
from pygame import *


t2s = gTTS(text="This text", lang='en').save("lastplayed.mp3")
mixer.init()
mixer.music.load("lastplayed.mp3")
mixer.music.play()

while mixer.music.get_busy():
    time.Clock().tick(100)

Tôi muốn làm cho Lastplay.mp3 phát trong một thiết bị phát lại khác. Không phải Windows mặc định của tôi. Một cái khác ("cáp âm thanh VB" là thiết bị phát lại).

Bài viết: 11.44211,442

Chủ đề: 435435

Tham gia: Tháng 9 năm 2016Sep 2016

Danh tiếng: 440 440

Điều này sẽ đi vào thẻ âm thanh của bạn. Để thay đổi thiết bị đầu ra, bạn cần thay đổi trình điều khiển thẻ âm thanh của mình. Điều này thường được thực hiện tự động từ tai nghe đến loa, nhưng không liên quan gì đến Python. Có lẽ bạn không giải thích đúng.
to change output device, you need to change your sound card driver.
this is usually done automatically from headphone to speaker, but has nothing to do with python.
Perhaps you are not explaining properly.

Skaperen nặng giống như một con vịt
Weighs the Same as a Duck

Bài viết: 4.3504,350

Chủ đề: 1.3951,395

Tham gia: Tháng 9 năm 2016Sep 2016

Danh tiếng: 14 14

Tháng 4-05-2019, 04:35 AM (Bài đăng này đã được sửa đổi lần cuối: Tháng 4-05-2019, 04:38 AM bởi Skaperen.) (This post was last modified: Apr-05-2019, 04:38 AM by Skaperen.)

Khi bạn nói "đầu ra qua mic của tôi", bạn có nghĩa là gì? Bạn có nghĩa là làm cho một trò chơi mic như một loa? Bạn có nghĩa là tiêm âm thanh này ở đâu âm thanh mic? Nếu sau này, âm thanh mic sẽ đi đâu?


Và vâng, xin vui lòng tránh thô tục. Cháu trai 11 tuổi của tôi đôi khi đọc diễn đàn này.

Truyền thống là áp lực ngang hàng từ người chết

Bạn gọi ai đó nói ba ngôn ngữ là gì? Ba nhạc. Hai ngôn ngữ? Song ngữ. Một ngôn ngữ? Người Mỹ.

Bài viết: 2929

Chủ đề: 1010

Tham gia: Mar 2019Mar 2019

Danh tiếng: 1 1

Tháng 4-05-2019, 06:09 PM (Bài đăng này đã được sửa đổi lần cuối: Tháng 4-05-2019, 06:09 PM bằng cách bị đẩy ra.) (This post was last modified: Apr-05-2019, 06:09 PM by ejected.)

Tôi muốn văn bản để nói qua mic của mình để những người ở trong kênh giọng nói với tôi sẽ nghe văn bản để nói.

Tôi không biết làm thế nào khác để giải thích nó ... Tôi thực sự không. Tôi không có ý nghe thô lỗ hoặc xấu tính hoặc hạ mình hoặc bất cứ điều gì tôi hiểu các bạn chỉ đang cố gắng giúp tôi, nhưng có lẽ nếu các bạn không phải người Mỹ bản địa dịch nó sang ngôn ngữ mẹ đẻ của bạn? Một lần nữa không có nghĩa là âm thanh như một khuôn mặt phân hay bất cứ điều gì, nhưng có lẽ điều đó sẽ giúp ích?

Dưới đây là một số giải thích thay thế về những gì tôi muốn làm/được nói một chút khác biệt:

- Chơi một .mp3 thông qua micrô của tôi (trên Discord/TeamSpeak/Skype/các chương trình VOICE Comm khác) thay vì loa. - Phát A .mp3 thông qua Cáp âm thanh VB của tôi (đây là một thiết bị phát lại khác mà tôi có, khác sau đó là mặc định của tôi. [Xem ảnh chụp màn hình này: https://i.imgur.com/r5tuecr.png) - Play .mp3 Thông qua micrô của tôi (trên Discord/TeamSpeak/Skype/ECT) - phát .mp3 cho thiết bị ghi mặc định của tôi. Thay vì thiết bị phát lại. [https://imgur.com/a/phe7ze1] - Play .mp3 cho một thiết bị phát lại cụ thể. Không phải mặc định của tôi. . /Imvxrvo.png - Xem cách bạn có thể chọn một thiết bị phát lại cụ thể? Đây là những gì tôi muốn làm. Tôi muốn chọn một thiết bị phát lại cụ thể để sử dụng thay vì mặc định của mình.]
- play a .mp3 through my VB Audio Cable (which is a different playback device I have, OTHER THEN my default one. [see this screenshot: https://i.imgur.com/R5tUECr.png)
- play .mp3 music through my microphone (on Discord/TeamSpeak/Skype/ect)
- play .mp3 to my default RECORDING DEVICE. INSTEAD OF PLAYBACK DEVICE. [ https://imgur.com/a/Phe7zE1 ]
- play .mp3 to a SPECIFIC PLAYBACK DEVICE. NOT MY DEFAULT ONE. (while not changing it to default. For example, you know how you can change your recording device on Skype/TeamSpeak/Discord ect? Like that.) [Example of another program that does this: https://i.imgur.com/IMVXRvO.png - See how you can choose a specific playback device? This is what I want to do. I want to choose a specific playback device to use instead of my default one.]

- Thay đổi thiết bị đầu ra phát lại của Voice1.mp3 thành một thiết bị phát lại cụ thể. Không phải Windows mặc định của tôi một:

from gtts import gTTS

 
t2s = gTTS(text="Hello this is the text to play", lang='en')
t2s.save("voice1.mp3")

đối với một thiết bị khác sau đó là mặc định của tôi. (Một lần nữa về điều này: https://i.imgur.com/r5tuecr.png)

- Tạo trò chơi này Voice1.mp3 thông qua thiết bị ghi âm của tôi (micrô) thay vì thiết bị phát lại của tôi (đến một trong những điều này: https://i.imgur.com/AO4vx5p.png)INSTEAD OF MY PLAYBACK DEVICE (to one of THESE: https://i.imgur.com/AO4Vx5p.png)

from gtts import gTTs
 
t2s = gTTS(text="Hello this is the text to play", lang='en')
t2s.save("voice1.mp3")

Bất kỳ một trong những phương pháp đó trong các giải thích ở trên là đủ. Tôi không cần tất cả chúng. Chỉ cần một người nên làm việc.


. Nếu sau này, âm thanh mic sẽ đi đâu?Skaperen Wrote: to inject this sound where the mic sound is going? if the latter, where is the mic sound going?

Đúng. Đó là thứ tôi nghĩ. Âm thanh MIC sẽ đến bất kỳ phần mềm ghi âm/chương trình/trò chơi nào. (Ví dụ: cuộc gọi Skype. Bất kỳ chương trình nào ghi lại mic)


Vì vậy, tôi đã xoay sở để có được công việc này (có thể) nhưng bây giờ tôi đang gặp lỗi này. Làm thế nào để tôi có được pygame để sử dụng trình điều khiển âm thanh đó?

from gtts import gTTS
import os


t2s = gTTS(text="This text", lang='en').save("lastplayed.mp3")

from pygame import *
os.putenv('SDL_AUDIODRIVER', 'vbaudiovacwdm')
mixer.init()
mixer.music.load("lastplayed.mp3")
mixer.music.play()

while mixer.music.get_busy():
    time.Clock().tick(100)
C:\Users\Mario\PycharmProjects\N1\venv\Scripts\python.exe C:/Users/Mario/PycharmProjects/N1/venv/new.py
pygame 1.9.5
Traceback (most recent call last):
Hello from the pygame community. https://www.pygame.org/contribute.html
  File "C:/Users/Mario/PycharmProjects/N1/venv/new.py", line 9, in 
    mixer.init()
pygame.error: No available audio device

Process finished with exit code 1

Bài viết: 11

Chủ đề: 00

Tham gia: Tháng 10 năm 2021Oct 2021

Danh tiếng: 0 0

Tháng 10-16-2021, 05:19 PM (Bài đăng này đã được sửa đổi lần cuối: ngày 16-2021, 07:02 tối bởi Larz60+.) (This post was last modified: Oct-16-2021, 07:02 PM by Larz60+.)

from pygame._sdl2 import get_num_audio_devices, get_audio_device_name
from pygame import mixer

mixer.init()
# a list of alternative >OUTPUT< devices
print(list(get_audio_device_name(x, 0).decode() for x in range(get_num_audio_devices(0))))

#then....

mixer.init(devicename='one of the device names from above')
mixer.music.load("lastplayed.mp3")
mixer.music.play()

Tôi vẫn đang tìm cách làm thế nào để đầu ra vào đầu vào (vì vậy nó có thể được chọn bởi Zoom, giả sử) có vẻ như OBS có thể làm điều này để nó có thể là một trường hợp tìm ra cách làm thế nào.

.ejected Wrote: I want the text to speech to go through my mic so that people who are in a voice channel with me will hear the text to speech.

Tôi không biết làm thế nào khác để giải thích nó ... Tôi thực sự không. Tôi không có ý nghe thô lỗ hoặc xấu tính hoặc hạ mình hoặc bất cứ điều gì tôi hiểu các bạn chỉ đang cố gắng giúp tôi, nhưng có lẽ nếu các bạn không phải người Mỹ bản địa dịch nó sang ngôn ngữ mẹ đẻ của bạn? Một lần nữa không có nghĩa là âm thanh như một khuôn mặt phân hay bất cứ điều gì, nhưng có lẽ điều đó sẽ giúp ích?

Dưới đây là một số giải thích thay thế về những gì tôi muốn làm/được nói một chút khác biệt:

- Chơi một .mp3 thông qua micrô của tôi (trên Discord/TeamSpeak/Skype/các chương trình VOICE Comm khác) thay vì loa. - Phát A .mp3 thông qua Cáp âm thanh VB của tôi (đây là một thiết bị phát lại khác mà tôi có, khác sau đó là mặc định của tôi. [Xem ảnh chụp màn hình này: https://i.imgur.com/r5tuecr.png) - Play .mp3 Thông qua micrô của tôi (trên Discord/TeamSpeak/Skype/ECT) - phát .mp3 cho thiết bị ghi mặc định của tôi. Thay vì thiết bị phát lại. [https://imgur.com/a/phe7ze1] - Play .mp3 cho một thiết bị phát lại cụ thể. Không phải mặc định của tôi. . /Imvxrvo.png - Xem cách bạn có thể chọn một thiết bị phát lại cụ thể? Đây là những gì tôi muốn làm. Tôi muốn chọn một thiết bị phát lại cụ thể để sử dụng thay vì mặc định của mình.]
- play a .mp3 through my VB Audio Cable (which is a different playback device I have, OTHER THEN my default one. [see this screenshot: https://i.imgur.com/R5tUECr.png)
- play .mp3 music through my microphone (on Discord/TeamSpeak/Skype/ect)
- play .mp3 to my default RECORDING DEVICE. INSTEAD OF PLAYBACK DEVICE. [ https://imgur.com/a/Phe7zE1 ]
- play .mp3 to a SPECIFIC PLAYBACK DEVICE. NOT MY DEFAULT ONE. (while not changing it to default. For example, you know how you can change your recording device on Skype/TeamSpeak/Discord ect? Like that.) [Example of another program that does this: https://i.imgur.com/IMVXRvO.png - See how you can choose a specific playback device? This is what I want to do. I want to choose a specific playback device to use instead of my default one.]

- Thay đổi thiết bị đầu ra phát lại của Voice1.mp3 thành một thiết bị phát lại cụ thể. Không phải Windows mặc định của tôi một:

from gtts import gTTS

 
t2s = gTTS(text="Hello this is the text to play", lang='en')
t2s.save("voice1.mp3")
cho một thiết bị khác sau đó là thiết bị mặc định của tôi. (Một lần nữa về điều này: https://i.imgur.com/r5tuecr.png)

- Tạo trò chơi này Voice1.mp3 thông qua thiết bị ghi âm của tôi (micrô) thay vì thiết bị phát lại của tôi (đến một trong những điều này: https://i.imgur.com/AO4vx5p.png)INSTEAD OF MY PLAYBACK DEVICE (to one of THESE: https://i.imgur.com/AO4Vx5p.png)

from gtts import gTTs
 
t2s = gTTS(text="Hello this is the text to play", lang='en')
t2s.save("voice1.mp3")
any Một trong những phương pháp đó trong các giải thích ở trên là đủ. Tôi không cần tất cả chúng. Chỉ cần một người nên làm việc.Any ONE of those methods in the explanations above is enough. I don't need all of them. Just one should work.
. Nếu sau này, âm thanh mic sẽ đi đâu?Skaperen Wrote: to inject this sound where the mic sound is going? if the latter, where is the mic sound going?

Đúng. Đó là thứ tôi nghĩ. Âm thanh MIC sẽ đến bất kỳ phần mềm ghi âm/chương trình/trò chơi nào. . Làm cách nào để nhận được pygame để sử dụng trình điều khiển âm thanh đó? ________ 5
C:\Users\Mario\PycharmProjects\N1\venv\Scripts\python.exe C:/Users/Mario/PycharmProjects/N1/venv/new.py
pygame 1.9.5
Traceback (most recent call last):
Hello from the pygame community. https://www.pygame.org/contribute.html
  File "C:/Users/Mario/PycharmProjects/N1/venv/new.py", line 9, in 
    mixer.init()
pygame.error: No available audio device

Process finished with exit code 1



So I managed to get this to (maybe) work but now I'm getting this error. How do I get pygame to use that audio driver?
from gtts import gTTS
import os


t2s = gTTS(text="This text", lang='en').save("lastplayed.mp3")

from pygame import *
os.putenv('SDL_AUDIODRIVER', 'vbaudiovacwdm')
mixer.init()
mixer.music.load("lastplayed.mp3")
mixer.music.play()

while mixer.music.get_busy():
    time.Clock().tick(100)
C:\Users\Mario\PycharmProjects\N1\venv\Scripts\python.exe C:/Users/Mario/PycharmProjects/N1/venv/new.py
pygame 1.9.5
Traceback (most recent call last):
Hello from the pygame community. https://www.pygame.org/contribute.html
  File "C:/Users/Mario/PycharmProjects/N1/venv/new.py", line 9, in 
    mixer.init()
pygame.error: No available audio device

Process finished with exit code 1

Larz60+ Viết ngày 16-2021, 07:02 PM: Vui lòng đăng tất cả mã, đầu ra và lỗi (toàn bộ) giữa các thẻ tương ứng của chúng. Tham khảo chủ đề trợ giúp BBCode về cách đăng. Sử dụng nút "Post Post" để đảm bảo mã được trình bày như bạn mong đợi trước khi nhấn nút "Post Reply/thread". Đã sửa cho bạn lần này. Vui lòng sử dụng thẻ BBCode trên các bài đăng trong tương lai write Oct-16-2021, 07:02 PM:
Please post all code, output and errors (it it's entirety) between their respective tags. Refer to BBCode help topic on how to post. Use the "Preview Post" button to make sure the code is presented as you expect before hitting the "Post Reply/Thread" button.
Fixed for you this time. Please use bbcode tags on future posts