winsound --- رابط پخش صدا برای ویندوز¶
ماژول winsound دسترسی به سازوکار پایهی پخش صدا ارائهشده توسط سکوهای ویندوزی را فراهم میکند. این ماژول شامل توابع و چند ثابت است.
دسترسپذیری: Windows.
- winsound.Beep(frequency, duration)¶
بوق زدن بلندگوی رایانه. پارامتر frequency بسامد صدا را بر حسب هرتز مشخص میکند و باید در بازهی ۳۷ تا ۳۲٬۷۶۷ باشد. پارامتر duration تعداد میلیثانیههایی را که صدا باید ادامه داشته باشد مشخص میکند. اگر سیستم قادر به بوق زدن بلندگو نباشد،
RuntimeErrorپرتاب میشود.
- winsound.PlaySound(sound, flags)¶
تابع زیربنایی
PlaySound()از API پلتفرم را فراخوانی میکند. پارامتر sound میتواند یک نام پرونده، یک نام مستعار صدای سیستم، داده صوتی بهعنوان یک bytes-like object، یاNoneباشد. تفسیر آن به مقدار flags بستگی دارد، که میتواند یک ترکیب OR بیتبهبیت از ثابتهای توصیفشده در زیر باشد. اگر پارامتر sound برابرNoneباشد، هر صدای موجی که هماکنون در حال پخش است، متوقف میشود. اگر سیستم خطایی را گزارش کند،RuntimeErrorپرتاب میشود.
- winsound.MessageBeep(type=MB_OK)¶
تابع زیربنایی
MessageBeep()را از Platform API فراخوانی میکند. این کار صدایی را مطابق آنچه در رجیستری مشخص شده است پخش میکند. آرگومان type مشخص میکند کدام صدا پخش شود؛ مقادیر ممکن عبارتاند از-1،MB_ICONASTERISK،MB_ICONEXCLAMATION،MB_ICONHAND،MB_ICONQUESTIONوMB_OK، که همگی در زیر توضیح داده شدهاند. مقدار-1یک «بوق ساده» تولید میکند؛ اگر صدا به روش دیگری قابل پخش نباشد، این آخرین جایگزین است. اگر سیستم خطایی را نشان دهد،RuntimeErrorپرتاب میشود.
- winsound.SND_ALIAS¶
پارامتر sound نام یک ارتباط صدا از رجیستری است. اگر رجیستری چنین نامی نداشته باشد، صدای پیشفرض سیستم پخش میشود؛ مگر اینکه
SND_NODEFAULTنیز مشخص شده باشد. اگر هیچ صدای پیشفرضی ثبت نشده باشد،RuntimeErrorایجاد میشود. این گزینه را باSND_FILENAMEاستفاده نکنید.تمام سیستمهای Win32 حداقل از موارد زیر پشتیبانی میکنند؛ بیشتر سیستمها از موارد بسیار بیشتری پشتیبانی میکنند:
PlaySound()nameنام صدای متناظر در Control Panel
'SystemAsterisk'ستاره
'SystemExclamation'علامت تعجب
'SystemExit'خروج از ویندوز
'SystemHand'توقف بحرانی
'SystemQuestion'پرسش
برای مثال:
import winsound # Play Windows exit sound. winsound.PlaySound("SystemExit", winsound.SND_ALIAS) # Probably play Windows default sound, if any is registered (because # "*" probably isn't the registered name of any sound). winsound.PlaySound("*", winsound.SND_ALIAS)
- winsound.SND_LOOP¶
صدا را بهطور مکرر پخش میکند. برای جلوگیری از مسدودسازی، باید از پرچم
SND_ASYNCنیز استفاده شود. نمیتواند همراه باSND_MEMORYاستفاده شود.
- winsound.SND_MEMORY¶
پارامتر sound برای
PlaySound()یک تصویر حافظهای از یک پرونده WAV است، بهصورت یک bytes-like object.توجه
این ماژول از پخش از یک تصویر حافظه بهصورت ناهمگام پشتیبانی نمیکند، بنابراین ترکیب این پرچم با
SND_ASYNCاستثنایRuntimeErrorرا پرتاب میکند.
- winsound.SND_PURGE¶
پخش تمام نمونههای صدای مشخصشده را متوقف میکند.
توجه
این پرچم در پلتفرمهای مدرن ویندوز پشتیبانی نمیشود.
- winsound.SND_ASYNC¶
فوراً بازمیگردد و اجازه میدهد صداها بهصورت ناهمگام پخش شوند.
- winsound.SND_NODEFAULT¶
اگر صدای مشخصشده یافت نشود، صدای پیشفرض سیستم را پخش نکنید.
- winsound.SND_NOSTOP¶
صداهای در حال پخش را قطع نکنید.
- winsound.SND_NOWAIT¶
اگر راهانداز صدا مشغول باشد، بلافاصله بازمیگردد.
توجه
این پرچم در پلتفرمهای مدرن ویندوز پشتیبانی نمیشود.
- winsound.SND_APPLICATION¶
پارامتر sound یک نام مستعار مختص برنامه در رجیستری است. میتوان این پرچم را با پرچم
SND_ALIASترکیب کرد تا یک نام مستعار صدای تعریفشده توسط برنامه مشخص شود.
- winsound.SND_SENTRY¶
هنگام پخش صدا، یک رویداد SoundSentry راهاندازی میشود.
اضافه شده در نسخهی 3.14.
- winsound.SND_SYNC¶
صدا بهصورت همگام پخش میشود. این رفتار پیشفرض است.
اضافه شده در نسخهی 3.14.
- winsound.SND_SYSTEM¶
صدا را به نشست صوتی برای صداهای اعلان سیستم اختصاص دهید.
اضافه شده در نسخهی 3.14.
- winsound.MB_ICONASTERISK¶
صدای
SystemDefaultرا پخش کنید.
- winsound.MB_ICONEXCLAMATION¶
صدای
SystemExclamationرا پخش میکند.
- winsound.MB_ICONHAND¶
صدای
SystemHandرا پخش کنید.
- winsound.MB_ICONQUESTION¶
صدای
SystemQuestionرا پخش کنید.
- winsound.MB_OK¶
صدای
SystemDefaultرا پخش کنید.
- winsound.MB_ICONERROR¶
صدای
SystemHandرا پخش کنید.اضافه شده در نسخهی 3.14.
- winsound.MB_ICONINFORMATION¶
صدای
SystemDefaultرا پخش کنید.اضافه شده در نسخهی 3.14.
- winsound.MB_ICONSTOP¶
صدای
SystemHandرا پخش کنید.اضافه شده در نسخهی 3.14.
- winsound.MB_ICONWARNING¶
صدای
SystemExclamationرا پخش میکند.اضافه شده در نسخهی 3.14.