से संगीत/अन्य ध्वनियों को बाधित करने के बिना मैं पाइथन में एक टाइमर पर काम कर रहा हूं जो प्रतीक्षा समय खत्म होने पर एक चीज लगता है। मैं निम्नलिखित कोड का उपयोग करता हूं:पाइथन में ध्वनि कैसे खेलें
from wave import open as wave_open
from ossaudiodev import open as oss_open
def _play_chime():
"""
Play a sound file once.
"""
sound_file = wave_open('chime.wav','rb')
(nc,sw,fr,nf,comptype, compname) = sound_file.getparams()
dsp = oss_open('/dev/dsp','w')
try:
from ossaudiodev import AFMT_S16_NE
except ImportError:
if byteorder == "little":
AFMT_S16_NE = ossaudiodev.AFMT_S16_LE
else:
AFMT_S16_NE = ossaudiodev.AFMT_S16_BE
dsp.setparameters(AFMT_S16_NE, nc, fr)
data = sound_file.readframes(nf)
sound_file.close()
dsp.write(data)
dsp.close()
यह बहुत अच्छा काम करता है, जब तक कि कोई अन्य डिवाइस पहले से ही ध्वनि आउटपुट नहीं कर रहा हो।
मैं मूल रूप से वही (लिनक्स के तहत) कैसे कर सकता हूं बिना शर्त के कि कोई आवाज नहीं चल रही है?
आपको लगता प्रक्रिया सॉफ्टवेयर मिश्रण सुनिश्चित करने के लिए एक API की आवश्यकता होगी, तो एक तरीका है :) समर्थन :)
कोई आधुनिक ध्वनि प्रणाली एक समय में केवल एक स्ट्रीम को संभाल सकती है। जानकारी के लिए –