How do play audio (playsound) in background of Python script?

可紊 提交于 2019-12-05 10:17:15

问题


I am just writing a small python game for fun and I have a function that does the beginning narrative.

I am trying to get the audio to play in the background but unfortunately the mp3 file plays first before the function continues.

How do I get it to run in the background?

import playsound

def displayIntro():
playsound.playsound('storm.mp3',True)
print('')
print('')
print_slow('The year is 1845, you have just arrived home...')

Also, is there any way of controlling the volume of the play sound module?

I should add that I am using a Mac, and I am not wedded to using playsound, it just seems to be the only module that I can get working.


回答1:


In windows:

Use winsound.SND_ASYNC to play them asynchronously

import winsound
winsound.PlaySound("filename", winsound.SND_ASYNC | winsound.SND_ALIAS )

To stop playing

winsound.PlaySound(None, winsound.SND_ASYNC)

In mac or other platforms: You can try this Pygame/SDL

pygame.mixer.init()
pygame.mixer.music.load("file.mp3")
pygame.mixer.music.play()



回答2:


Just change True to False (I use python 3.7.1)

import playsound
playsound.playsound('storm.mp3', False)
print ('...')



回答3:


Well you could just use pygame.mixer.music.play(x)

#!/usr/bin/env python3
# Any problems contact me on instagram @vulnerabilties
import pygame

pygame.mixer.init()
pygame.mixer.music.load('filename.extention')
pygame.mixer.music.play(999)
# YOUR CODE HERE



回答4:


There is a library In pygame called mixer and you can add a mp3 file to the folder with the python script inside and put code like this inside:

from pygame import mixer
mixer.init()
mixer.music.load("mysong.mp3")
mixer.music.play()

I hope you found my answer helpful




回答5:


Playsound has an option for running in the background -> additional argument to be set to 0:

playsound('xxxxx.mp3", **0**)



回答6:


from pygame import mixer

mixer.music.init()
mixer.music.load("audio.mp3") # Paste The audio file location 
mixer.play() 


来源:https://stackoverflow.com/questions/44472162/how-do-play-audio-playsound-in-background-of-python-script

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!