ฉันสามารถตั้งค่าอุปกรณ์เสียงลูปแบ็คได้หรือไม่?


16

หากฉันสามารถส่งสัญญาณเสียงไปยังอุปกรณ์ส่งออกได้ฉันสามารถบันทึกเสียงเดียวกับคลื่น ด้วยระบบไฟล์คุณสามารถตั้งค่าระบบไฟล์วนรอบและเขียนข้อมูลไบนารีบนไฟล์แทนที่จะเป็นอุปกรณ์

คำถามของฉันคือ: ฉันสามารถส่งสัญญาณเสียงไปยังไฟล์ WAV (ตัวอย่าง) แทนอุปกรณ์เสียงของฉันได้หรือไม่? อย่างไร?


วิดีโอแนะนำโหมดลูปแบ็คการ์ดเสียงสี่โหมด youtu.be/pqV3P9zRyYc

คำตอบ:


11

ใช่.

จริงๆแล้วมีหลายวิธี คุณสามารถตั้งค่าอุปกรณ์การ์ดเสียงเสียงที่คุณสามารถคัดลอกข้อมูลออกจากอุปกรณ์ ... แต่นี่ไม่ใช่รูปแบบที่มีประโยชน์มาก

สิ่งที่มีประโยชน์สำหรับคุณมากกว่าคือarecordเครื่องมือที่ช่วยให้คุณสามารถหลีกเลี่ยงกระแสข้อมูลที่ส่งออกของ alsa และบันทึกเป็นรูปแบบที่รู้จักกันหลายรูปแบบ โดยทั่วไปสิ่งใดก็ตามที่คุณสามารถเล่นผ่านระบบเสียง alsa สามารถคัดลอกไปยังไฟล์เสียงรูปแบบมาตรฐาน

เครื่องมือที่คล้ายกันที่มีอยู่สำหรับเสียงการเต้นของชีพจร


8

หากระบบของคุณหรือเฉพาะแอปพลิเคชันที่คุณต้องการบันทึกกำลังส่งเอาต์พุตไปยังเซิร์ฟเวอร์เสียงให้ตรวจสอบความเป็นไปได้ในการบันทึกสำหรับเซิร์ฟเวอร์เสียงนั้น ตัวอย่างเช่นบน Ubuntu เซิร์ฟเวอร์เสียงอย่างเป็นทางการคือPulseAudioซึ่งมาพร้อมกับparecคำสั่ง (จากpulseaudio-utilsแพ็คเกจการ ติดตั้ง pulseaudio-utils http://bit.ly/software-small ) คุณอาจต้องแปลงเอาท์พุทจากparecเป็นสิ่งที่ใช้ได้กับSoX (Ubuntu: ติดตั้ง sox http://bit.ly/software-small )sox

parec -r --rate=44100 | sox --type raw --rate 44100 - --type ogg recording.ogg

ที่ใช้งานไม่ได้สำหรับฉัน แต่การเปลี่ยนแปลงในชุดรูปแบบนี้ใช้ได้: askubuntu.com/questions/60837/ …
ixtmixilix

4

มันควรจะเป็นไปได้ที่จะบันทึกลงใน Audacity โดยตรง แต่ฉันไม่สามารถใช้มันในระบบของฉัน (Ubuntu 10.10) ดังนั้นทำตามคำแนะนำที่นี่จาก Audacity wiki ฉันใช้ALSAอุปกรณ์เล่นเพื่อเบี่ยงเบนเสียงเป็นไฟล์

สิ่งนี้ใช้.asoundrcไฟล์ (ในโฮมไดเร็กตอรี่ของคุณ):

pcm.teeraw {
   type empty
   slave.pcm "tee:default,'/tmp/out.raw',raw"
   # 48000 S16_LE 2ch (aplay -t raw -f dat)
}

สำหรับการบันทึกจากแฟลช (บน firefox) ฉันใช้

FLASH_ALSA_DEVICE=teeraw firefox

ไฟล์ผลลัพธ์/tmp/out.rawอยู่ในรูปแบบ raw ดังนั้นการแปลงจำเป็นต้องทราบพารามิเตอร์ที่ถูกต้อง พิกลlameดูเหมือนว่าสามารถที่จะทำงานนี้ออกสำหรับตัวเอง แต่soxความต้องการที่จะรู้ว่ามันชัดเจน ดังนั้นต่อไปนี้ทั้งหมดดูเหมือนจะทำงานได้:

aplay -t raw -f dat -r 44100 /tmp/out.raw # to play
sox -r 44100 -b 16 -e signed -c 2 /tmp/out.raw /tmp/out.wav # to convert to wav
lame /tmp/out.raw # to convert to mp3

ลิงค์จาก Audacity wiki นั้นตายไปแล้ว
Suzana

0

มีไดร์เวอร์ลูปแบ็คในแผนผัง ALSA คือaloop-kernel.c (ผ่านที่นี่ ); สิ่งที่คุณต้องสร้างด้วยตัวเอง (และเข้าใจการใช้งานเป็นอุปกรณ์ผ่านแอปพลิเคชันเสียงเช่นaplay/ arecord) ...

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.