| APLAY(1) | General Commands Manual | APLAY(1) |
نام (NAME)
aplay - ابزار خط فرمان پخش و ضبط صوت برای درایور صوتی ALSA
خلاصه دستور (SYNOPSIS)
arecord [flags] [filename]
aplay [flags] [filename [filename]] ...
توضیحات (DESCRIPTION)
ابزار arecord یک ضبطکننده فایل صوتی خط فرمانی برای درایور کارت صدای ALSA است. این ابزار از چندین قالب فایل و چندین کارت صدا با دستگاههای گوناگون پشتیبانی میکند. در صورت ضبط با نمونههای حالت درهمتنیده (interleaved)، فایل پیش از رسیدن به حجم ۲ گیگابایت بهطور خودکار تقسیم میشود.
ابزار aplay بسیار شبیه به آن است، با این تفاوت که به جای ضبط، صدا را پخش میکند. برای قالبهای فایل صوتی پشتیبانیشده، نرخ نمونهبرداری، عمق بیت و موارد دیگر میتوانند بهطور خودکار از سرایند (header) فایل صوتی تعیین شوند.
اگر نام فایلی مشخص نشود، از ورودی یا خروجی استاندارد استفاده میشود. ابزار aplay چندین نام فایل را میپذیرد.
گزینهها (OPTIONS)
- -h, --help
- راهنما: نمایش نحو دستور (syntax).
- --version
- چاپ نسخه فعلی.
- -l, --list-devices
- فهرست کردن تمام کارتهای صدا و دستگاههای صوتی دیجیتال.
- -L, --list-pcms
- فهرست کردن تمام PCMهای تعریفشده.
- -D, --device=NAME
- انتخاب PCM بر اساس نام.
- -q --quiet
- حالت بیصدا (ساکت). فرونشانی پیامها (نه صدا :)).
- -t, --file-type TYPE
- نوع فایل (voc، wav، raw یا au). در صورت حذف این پارامتر، از قالب WAVE استفاده میشود.
- -c, --channels=#
- تعداد کانالها. پیشفرض یک کانال است. مقادیر معتبر از ۱ تا ۳۲ هستند.
- -f --format=FORMAT
- قالب نمونه
(Sample format).
قالبهای نمونه شناختهشده عبارتند از: S8 U8 S16_LE S16_BE U16_LE U16_BE S24_LE S24_BE U24_LE U24_BE S32_LE S32_BE U32_LE U32_BE FLOAT_LE FLOAT_BE FLOAT64_LE FLOAT64_BE IEC958_SUBFRAME_LE IEC958_SUBFRAME_BE MU_LAW A_LAW IMA_ADPCM MPEG GSM SPECIAL S24_3LE S24_3BE U24_3LE U24_3BE S20_3LE S20_3BE U20_3LE U20_3BE S18_3LE S18_3BE U18_3LE
برخی از این قالبها ممکن است روی سختافزار انتخابی در دسترس نباشند.
میانبرهای قالبی در دسترس عبارتند از:-f cd (16 bit little endian, 44100, stereo) [-f S16_LE -c2 -r44100] -f cdr (16 bit big endian, 44100, stereo) [-f S16_BE -c2 -r44100] -f dat (16 bit little endian, 48000, stereo) [-f S16_LE -c2 -r48000]
اگر هیچ قالبی داده نشود، از U8 استفاده میشود. - -r, --rate=#<Hz>
- نرخ نمونهبرداری به هرتز. نرخ پیشفرض ۸۰۰۰ هرتز است. اگر مقدار مشخصشده کمتر از ۳۰۰ باشد، به عنوان نرخ بر حسب کیلوهرتز در نظر گرفته میشود. مقادیر معتبر از ۲۰۰۰ تا ۱۹۲۰۰۰ هرتز هستند.
- -d, --duration=#
- قطع عملیات پس از # ثانیه. مقدار صفر به معنی بینهایت است. پیشفرض صفر است، بنابراین اگر این گزینه حذف شود، فرآیند ضبط/پخش تا زمانی که متوقف (kill) شود ادامه مییابد. تنها یکی از گزینههای -d یا -s بهطور انحصاری قابل استفاده است.
- -s, --samples=#
- قطع عملیات پس از انتقال # فریم PCM. مقدار صفر به معنی بینهایت است. پیشفرض صفر است، بنابراین اگر این گزینه حذف شود، فرآیند ضبط/پخش تا زمانی که متوقف (kill) شود ادامه مییابد. تنها یکی از گزینههای -d یا -s بهطور انحصاری قابل استفاده است.
- -M, --mmap
- استفاده از حالت ورودی/خروجی نقشهبرداریشده در حافظه (mmap) برای جریان صوتی. اگر این گزینه تنظیم نشود، از حالت ورودی/خروجی read/write استفاده خواهد شد.
- -N, --nonblock
- باز کردن دستگاه صوتی در حالت غیرمسدودکننده (non-blocking). اگر دستگاه مشغول باشد، برنامه بلافاصله خارج میشود. اگر این گزینه تنظیم نشود، برنامه تا زمانی که دستگاه صوتی دوباره در دسترس قرار گیرد مسدود (معلق) خواهد شد.
- -F, --period-time=#
- فاصله میان وقفهها به میزان # میکروثانیه است. اگر هیچ مدتزمان دوره و هیچ اندازه دورهای داده نشود، یکچهارم زمان بافر تنظیم میشود.
- -B, --buffer-time=#
- مدتزمان بافر به میزان # میکروثانیه است. اگر هیچ زمان بافر و هیچ اندازه بافری داده نشود، حداکثر زمان بافر مجاز ولی نه بیشتر از ۵۰۰ میلیثانیه تنظیم میشود.
- --period-size=#
- فاصله میان وقفهها به میزان # فریم است. اگر هیچ اندازه دوره و هیچ مدتزمان دورهای داده نشود، یکچهارم اندازه بافر تنظیم میشود.
- --buffer-size=#
- مدت بافر به میزان # فریم است. اگر هیچ زمان بافر و هیچ اندازه بافری داده نشود، حداکثر زمان بافر مجاز ولی نه بیشتر از ۵۰۰ میلیثانیه تنظیم میشود.
- -A, --avail-min=#
- حداقل فضای در دسترس برای بیدارباش # میکروثانیه است.
- -R, --start-delay=#
- تاخیر برای شروع خودکار PCM به میزان # میکروثانیه است (در صورت کوچکتر یا مساوی صفر بودن، نسبت به اندازه بافر محاسبه میشود).
- -T, --stop-delay=#
- تاخیر برای توقف خودکار PCM به میزان # میکروثانیه از xrun است.
- -v, --verbose
- نمایش ساختار و پیکربندی PCM. این گزینه انباشتهپذیر (تراکمی) است. با دو یا سه بار مشخص کردن آن، سنجه VU (نمایشگر حجم صدا) نمایش داده میشود.
- -V, --vumeter=TYPE
- نوع سنجه VU را مشخص میکند که میتواند stereo یا mono باشد. سنجه VU استریو تنها برای نمونههای استریوی ۲ کاناله با قالب درهمتنیده (interleaved) در دسترس است.
- -I, --separate-channels
- یک فایل برای هر کانال. این گزینه --max-file-time و --use-strftime را غیرفعال کرده و SIGUSR1 را نادیده میگیرد. سنجه VU استریو با کانالهای جداگانه در دسترس نیست.
- -P
- پخش (Playback). اگر برنامه با اجرای aplay فراخوانی شود، این حالت پیشفرض است.
- -C
- ضبط (Record). اگر برنامه با اجرای arecord فراخوانی شود، این حالت پیشفرض است.
- -i, --interactive
- امکان عملیات تعاملی از طریق stdin. در حال حاضر تنها توقف موقت/ادامه (pause/resume) از طریق کلید فاصله (Space) یا Enter پیادهسازی شده است.
- -m, --chmap=ch1,ch2,...
- نقشه کانال (channel map) را برای بازنویسی یا پیروی مشخص میکند. رشتههای موقعیت کانال مانند FL، FR و غیره را منتقل کنید.
اگر دستگاه از بازنویسی نقشه کانال پشتیبانی کند، aplay تلاش میکند نقشه کانال دادهشده را اعمال کند. اگر دستگاه از بازنویسی نقشه کانال پشتیبانی نکند اما همچنان اطلاعات نقشه کانال را ارائه دهد، aplay تلاش میکند ترتیب کانالها را در بافر بازآرایی کند تا با نقشه کانال بازگرداندهشده از دستگاه مطابقت داشته باشد.
- --disable-resample
- غیرفعال کردن نمونهبرداری مجدد خودکار نرخ (resample).
- --disable-channels
- غیرفعال کردن تبدیل خودکار کانالها.
- --disable-format
- غیرفعال کردن تبدیل خودکار قالبها.
- --disable-softvol
- غیرفعال کردن کنترل نرمافزاری بلندی صدا (softvol).
- --test-position
- آزمایش موقعیت بافر حلقهای (ring buffer).
- --test-coef=<coef>
- ضریب آزمایشی برای موقعیت بافر حلقهای؛ پیشفرض ۸ است. عبارت اعتبارسنجی برابر است با: coef * (buffer_size / 2). حداقل مقدار ۱ است.
- --test-nowait
- برای بافر حلقهای منتظر نماند ‐ تمام پردازنده (CPU) را مصرف میکند.
- --max-file-time
- در حین ضبط، هنگامی که فایل خروجی به این مدت زمان صدا انباشته کرد، آن را ببندد و فایل خروجی جدیدی باز کند. پیشفرض، حداکثر اندازه پشتیبانیشده توسط قالب فایل است: ۲ گیبیبایت برای فایلهای WAV. اگر --separate-channels مشخص شده باشد، این گزینه هیچ تاثیری ندارد.
- --process-id-file <file name>
- برنامه aplay شناسه پردازه (PID) خود را در اینجا مینویسد تا سایر برنامهها بتوانند به آن سیگنال ارسال کنند.
- --use-strftime
- هنگام ضبط، با هر بار باز شدن فایل خروجی، کدهای %- در پارامتر نام فایل را با استفاده از قابلیت strftime تفسیر میکند. کدهای مهم strftime عبارتند از: %Y برای سال، %m برای ماه، %d برای روز ماه، %H برای ساعت، %M برای دقیقه و %S برای ثانیه. علاوه بر این، %v شماره فایل است که از ۱ شروع میشود. با تعیین این گزینه، دایرکتوریهای میانی برای فایل خروجی بهطور خودکار ایجاد میشوند. اگر --separate-channels مشخص شده باشد، این گزینه هیچ تاثیری ندارد.
- --dump-hw-params
- تخلیه وضعیت از پیشپیکربندیشده hw_params دستگاه در stderr. این خروجی قابلیتهای دستگاه انتخابی مانند قالبهای پشتیبانیشده، نرخهای نمونهبرداری، تعداد کانالها، و بایتها/اندازهها/زمانهای دوره و بافر را فهرست میکند. برای دستگاه خام hw:X، این گزینه اساساً قابلیتهای سختافزاری کارت صدا را فهرست میکند.
- --fatal-errors
- تلاش برای بازیابی هنگام بروز خطاها (مانند xrun) را غیرفعال میکند؛ در عوض فرآیند aplay بلافاصله متوقف میشود.
سیگنالها (SIGNALS)
هنگام ضبط، سیگنالهای SIGINT، SIGTERM و SIGABRT فایل خروجی را بسته و خارج میشوند. سیگنال SIGUSR1 فایل خروجی را میبندد، فایل جدیدی باز میکند و ضبط را ادامه میدهد. با این حال، SIGUSR1 با --separate-channels کار نمیکند.
مثالها (EXAMPLES)
- aplay -c 1 -t raw -r 22050 -f mu_law foobar
- فایل خام "foobar" را به عنوان یک فایل au. با نرخ ۲۲۰۵۰ هرتز، مونو، ۸ بیتی و Mu-Law پخش میکند.
- arecord -d 10 -f cd -t wav -D copy foobar.wav
- فایل foobar.wav را
به عنوان یک
فایل موجی (wave)
با کیفیت CD و
مدت ۱۰
ثانیه ضبط
میکند، با
استفاده از
PCM با نام "copy"
(که ممکن
است در فایل
asoundrc. کاربر به
شکل زیر
تعریف شده
باشد):
pcm.copy { type plug slave { pcm hw } route_policy copy } - arecord -t wav --max-file-time 30 mon.wav
- ضبط از منبع صوتی پیشفرض به صورت تککاناله (مونو)، ۸۰۰۰ نمونه در ثانیه و ۸ بیت در هر نمونه. هر ۳۰ ثانیه یک فایل جدید ایجاد میشود. نام فایلها mon-nn.wav خواهد بود که nn از 01 افزایش مییابد. فایل پس از mon-99.wav برابر با mon-100.wav خواهد بود.
- arecord -f cd -t wav --max-file-time 3600 --use-strftime %Y/%m/%d/listen-%H-%M-%v.wav
- ضبط به صورت استریو از منبع صوتی پیشفرض. هر یک ساعت یک فایل جدید ایجاد میشود. فایلها بر اساس تاریخ شروع در دایرکتوریها قرار میگیرند و نامهایی دارند که شامل زمان شروع و شماره فایل است.
همچنین ببینید (SEE ALSO)
alsamixer(1), amixer(1)
اشکالات (BUGS)
توجه داشته باشید که در حال حاضر از فایلهای aiff. پشتیبانی نمیشود.
نویسندگان (AUTHORS)
arecord و aplay توسط Jaroslav Kysela <perex@perex.cz> نوشته شدهاند. این سند توسط Paul Winkler <zarmzarm@erols.com> تهیه شده است. بهروزرسانی برای Alsa 0.9 توسط James Tappin <james@xena.uklinux.net> انجام شده است.
| 1 January 2010 |