تشغيل الملفات الصوتية في بايثون مع الحد الأدنى من التبعيات
تفتقر بايثون إلى وحدة مشتركة بين الأنظمة الأساسية لتشغيل الملفات الصوتية خارج الصندوق. بالنسبة لأنظمة Windows، يوفر Winsound حلاً بسيطًا:
import winsound
winsound.PlaySound('sound.wav', winsound.SND_FILENAME)
بالنسبة لنظام التشغيل Linux، يوفر ossaudiodev مزيدًا من المرونة:
from wave import open as waveOpen
from ossaudiodev import open as ossOpen
s = waveOpen('tada.wav','rb')
(nc,sw,fr,nf,comptype, compname) = s.getparams( )
dsp = ossOpen('/dev/dsp','w')
try:
from ossaudiodev import AFMT_S16_NE
except ImportError:
from sys import byteorder
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 = s.readframes(nf)
s.close()
dsp.write(data)
dsp.close()
(الائتمان لـ ossaudiodev: بيل داندريتا https://mail.python.org/pipermail/python-list/2004-October/288905.html)
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3