aplay arecord, aplay - เครื่องบันทึกเสียงบรรทัดคำสั่งและเครื่องเล่นสำหรับไดรเวอร์การ์ดเสียง ALSA
arecord [flags] [filename]
aplay [flags] [filename [filename]] ...
arecord เป็นเครื่องบันทึกไฟล์เสียงแบบบรรทัดคำสั่งสำหรับไดรเวอร์การ์ดเสียง ALSA รองรับไฟล์หลายรูปแบบและการ์ดเสียงหลายตัวพร้อมอุปกรณ์หลายเครื่อง หากบันทึกด้วยโหมดแทรกสลับ ไฟล์จะถูกแบ่งโดยอัตโนมัติก่อนขนาดไฟล์ 2GB
aplay เหมือนกันมาก เพียงแต่เล่นแทนการบันทึก สำหรับรูปแบบไฟล์เสียงที่รองรับ อัตราการสุ่มตัวอย่าง ความลึกของบิต และอื่นๆ สามารถกำหนดได้โดยอัตโนมัติจากส่วนหัวของไฟล์เสียง
หากไม่ได้ระบุชื่อไฟล์ จะใช้เอาต์พุตหรืออินพุตมาตรฐาน ยูทิลิตี aplay ยอมรับชื่อไฟล์หลายชื่อ
ช่วย: แสดงไวยากรณ์
พิมพ์เวอร์ชันปัจจุบัน
แสดงรายการการ์ดเสียงและอุปกรณ์เสียงดิจิทัลทั้งหมด
แสดงรายการ PCM ทั้งหมดที่กำหนดไว้
เลือก PCM ตามชื่อ
โหมดเงียบ ระงับข้อความ (ไม่มีเสียง :))
ประเภทไฟล์ (voc, wav, raw หรือ au) หากไม่ระบุพารามิเตอร์นี้ ระบบจะใช้รูปแบบ WAVE
จำนวนช่อง ค่าเริ่มต้นคือหนึ่งช่อง ค่าที่ถูกต้องคือ 1 ถึง 32
รูปแบบตัวอย่าง
รูปแบบตัวอย่างที่รู้จักคือ: 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 พิเศษ 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
อัตราการสุ่มตัวอย่างเป็นเฮิรตซ์ อัตราเริ่มต้นคือ 8,000 เฮิรตซ์ หากค่าที่ระบุน้อยกว่า 300 จะถือเป็นอัตราในหน่วยกิโลเฮิรตซ์ ค่าที่ถูกต้องคือ 2,000 ถึง 192,000 เฮิรตซ์
ขัดจังหวะหลังจาก # วินาที ค่าศูนย์หมายถึงอนันต์ ค่าเริ่มต้นคือศูนย์ ดังนั้นหากละเว้นตัวเลือกนี้ กระบวนการบันทึก/เล่นจะทำงานจนกว่าจะถูกฆ่า ตัวเลือก '-d' หรือ '-s' สามารถใช้ได้โดยเฉพาะ
ขัดจังหวะหลังจากส่งเฟรม # PCM ค่าศูนย์หมายถึงอนันต์ ค่าเริ่มต้นคือศูนย์ ดังนั้นหากละเว้นตัวเลือกนี้ กระบวนการบันทึก/เล่นจะทำงานจนกว่าจะถูกฆ่า ตัวเลือก '-d' หรือ '-s' สามารถใช้ได้โดยเฉพาะ
ใช้โหมด I/O ที่แมปหน่วยความจำ (mmap) สำหรับสตรีมเสียง หากไม่ได้ตั้งค่าตัวเลือกนี้ โหมดอ่าน/เขียน I/O จะถูกใช้
เปิดอุปกรณ์เสียงในโหมดไม่ปิดกั้น หากเครื่องไม่ว่าง โปรแกรมจะออกทันที หากไม่ได้ตั้งค่าตัวเลือกนี้ โปรแกรมจะบล็อกจนกว่าอุปกรณ์เสียงจะพร้อมใช้งานอีกครั้ง
ระยะห่างระหว่างการขัดจังหวะคือ # ไมโครวินาที หากไม่มีการกำหนดช่วงเวลาและขนาดรอบระยะเวลา ดังนั้นหนึ่งในสี่ของเวลาบัฟเฟอร์จะถูกตั้งค่า
ระยะเวลาบัฟเฟอร์คือ # ไมโครวินาที หากไม่มีการกำหนดเวลาบัฟเฟอร์และไม่มีขนาดบัฟเฟอร์ เวลาบัฟเฟอร์สูงสุดที่อนุญาตแต่ไม่เกิน 500 มิลลิวินาทีจะถูกตั้งค่าไว้
ระยะห่างระหว่างอินเตอร์รัปต์คือ # เฟรม หากไม่มีการกำหนดขนาดช่วงเวลาและไม่ได้ระบุช่วงเวลา ระบบจะตั้งค่าหนึ่งในสี่ของขนาดบัฟเฟอร์
ระยะเวลาบัฟเฟอร์คือ # เฟรม ถ้าไม่มีเวลาบัฟเฟอร์และไม่มีขนาดบัฟเฟอร์ เวลาบัฟเฟอร์สูงสุดที่อนุญาตแต่ไม่เกิน 500ms จะถูกตั้งค่าไว้
พื้นที่ว่างขั้นต่ำสำหรับการปลุกคือ # ไมโครวินาที
การหน่วงเวลาสำหรับการเริ่ม PCM อัตโนมัติคือ # ไมโครวินาที (เทียบกับขนาดบัฟเฟอร์ถ้า <= 0)
การหน่วงเวลาสำหรับการหยุด PCM อัตโนมัติคือ # ไมโครวินาทีจาก xrun
แสดงโครงสร้างและการตั้งค่า PCM ตัวเลือกนี้เป็นแบบสะสม VU meter จะแสดงขึ้นเมื่อได้รับค่านี้สองครั้งหรือสามครั้ง
ระบุประเภท VU-meter ไม่ว่าจะเป็นสเตอริโอหรือโมโน สเตอริโอ VU-meter ใช้ได้เฉพาะกับตัวอย่างสเตอริโอ 2 แชนเนลที่มีรูปแบบอินเตอร์ลีฟ
หนึ่งไฟล์สำหรับแต่ละช่อง ตัวเลือกนี้ปิดใช้งาน max-file-time และ use-strftime และละเว้น SIGUSR1 มิเตอร์สเตอริโอ VU ไม่สามารถใช้งานได้กับช่องสัญญาณแยกต่างหาก
การเล่น นี่เป็นค่าเริ่มต้นหากเรียกใช้โปรแกรมโดยพิมพ์ aplay
บันทึก. นี่เป็นค่าเริ่มต้นหากเรียกใช้โปรแกรมโดยพิมพ์ arecord
อนุญาตการทำงานแบบโต้ตอบผ่าน stdin ขณะนี้ใช้เฉพาะการหยุดชั่วคราว/เล่นต่อผ่านช่องว่างหรือปุ่ม Enter เท่านั้น
ให้แผนผังช่องเพื่อแทนที่หรือติดตาม ส่งสตริงตำแหน่งช่อง เช่น FL, FR ฯลฯ
หากอุปกรณ์รองรับการแทนที่แผนผังช่อง aplay จะพยายามส่งผ่านแผนผังช่องที่กำหนด หากไม่สนับสนุนการแทนที่แผนผังช่องแต่ยังคงให้ข้อมูลแผนผังช่อง aplay จะพยายามจัดเรียงลำดับช่องใหม่ในบัฟเฟอร์เพื่อให้ตรงกับแผนผังช่องที่ส่งคืนจากอุปกรณ์
ปิดใช้งานอัตราตัวอย่างอัตโนมัติ
ปิดใช้งานการแปลงแชนเนลอัตโนมัติ
ปิดใช้งานการแปลงรูปแบบอัตโนมัติ
ปิดใช้งานการควบคุมระดับเสียงของซอฟต์แวร์ (softvol)
ทดสอบตำแหน่งบัฟเฟอร์ของวงแหวน
ค่าสัมประสิทธิ์การทดสอบสำหรับตำแหน่งบัฟเฟอร์วงแหวน ค่าเริ่มต้นคือ 8 นิพจน์สำหรับการตรวจสอบคือ: coef * (buffer_size/2) ค่าต่ำสุดคือ 1
อย่ารอให้บัฟเฟอร์วงแหวนกิน CPU ทั้งหมด
ขณะบันทึก เมื่อไฟล์เอาต์พุตมีเสียงสะสมเป็นเวลานาน ให้ปิดไฟล์แล้วเปิดไฟล์เอาต์พุตใหม่ ค่าเริ่มต้นคือขนาดสูงสุดที่รูปแบบไฟล์รองรับ: 2 GiB สำหรับไฟล์ WAV ตัวเลือกนี้ไม่มีผลหากมีการระบุ --separate-channels
aplay เขียนรหัสกระบวนการที่นี่ เพื่อให้โปรแกรมอื่นๆ สามารถส่งสัญญาณไปที่มันได้
เมื่อบันทึก ให้ตีความ %-codes ในพารามิเตอร์ชื่อไฟล์โดยใช้สิ่งอำนวยความสะดวก strftime ทุกครั้งที่เปิดไฟล์เอาต์พุต รหัส strftime ที่สำคัญได้แก่: %Y คือปี, %m เดือน, %d วันของเดือน, %H ชั่วโมง, %M นาที และ %S วินาที นอกจากนี้ %v คือหมายเลขไฟล์ โดยเริ่มต้นที่ 1 เมื่อระบุตัวเลือกนี้ ไดเร็กทอรีระดับกลางสำหรับไฟล์เอาต์พุตจะถูกสร้างขึ้นโดยอัตโนมัติ ตัวเลือกนี้ไม่มีผลหากมีการระบุ --separate-channels
ดัมพ์ hw_params ของสถานะที่กำหนดค่าล่วงหน้าของอุปกรณ์เป็น stderr ดัมพ์แสดงรายการความสามารถของอุปกรณ์ที่เลือก เช่น รูปแบบที่รองรับ อัตราการสุ่มตัวอย่าง จำนวนช่องสัญญาณ ระยะเวลาและบัฟเฟอร์ไบต์/ขนาด/เวลา สำหรับอุปกรณ์ดิบ hw:X ตัวเลือกนี้โดยทั่วไปจะแสดงความสามารถของฮาร์ดแวร์ของการ์ดเสียง
ปิดใช้งานการพยายามกู้คืนเมื่อพบข้อผิดพลาด (เช่น xrun) กระบวนการเล่นแทนจะยกเลิกทันที
เมื่อทำการบันทึก SIGINT, SIGTERM และ SIGABRT จะปิดไฟล์เอาต์พุตและออก SIGUSR1 จะปิดไฟล์เอาต์พุต เปิดไฟล์ใหม่ และบันทึกต่อ อย่างไรก็ตาม SIGUSR1 ไม่ทำงานกับ --separate-channels
จะเล่นไฟล์ดิบ "foobar" เป็นไฟล์ 22050-Hz, โมโน, 8 บิต, Mu-Law .au
จะบันทึก foobar.wav เป็นไฟล์เวฟคุณภาพซีดีความยาว 10 วินาที โดยใช้ PCM "คัดลอก" (ซึ่งอาจกำหนดไว้ในไฟล์ .asoundrc ของผู้ใช้เป็น:
pcm.copy {
type plug
slave {
pcm hw
}
route_policy copy
}บันทึกจากแหล่งเสียงเริ่มต้นในรูปแบบโมโน 8,000 ตัวอย่างต่อวินาที 8 บิตต่อตัวอย่าง เริ่มไฟล์ใหม่ทุกๆ 30 วินาที ชื่อไฟล์คือ mon-nn.wav โดยที่ nn เพิ่มขึ้นจาก 01 ไฟล์ที่อยู่หลัง mon-99.wav คือ mon-100.wav
บันทึกเป็นสเตอริโอจากแหล่งเสียงเริ่มต้น สร้างไฟล์ใหม่ทุกชั่วโมง ไฟล์จะอยู่ในไดเร็กทอรีตามวันที่เริ่มต้นและมีชื่อซึ่งรวมถึงเวลาเริ่มต้นและหมายเลขไฟล์
alsamixer(1), amixer(1)
โปรดทราบว่าขณะนี้ยังไม่รองรับไฟล์ .aiff
arecord และ aplay เป็นของ Jaroslav Kysela perex@perex.cz เอกสารนี้จัดทำโดย Paul Winkler zarmzarm@erols.com อัปเดตสำหรับ Alsa 0.9 โดย James Tappin james@xena.uklinux.net