ไม่สามารถตั้งค่าอุปกรณ์เสียงเข้าและส่งออกเริ่มต้นบน Raspberry jessie


12

ฉันกำลังประสบปัญหาที่คล้ายกันดังที่อธิบายไว้ในคำถามนี้ แต่ผมใช้เจสซีในราสเบอร์รี่และพี่ว่ามันไม่ได้มี/etc/modprobe.d/alsa-base.confไฟล์

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


คุณสามารถลองสร้างไฟล์นั้นได้ ฉันไม่ทราบว่ามันถูกลบออกเพราะมีบางอย่างเกี่ยวข้องกับทรีของอุปกรณ์หรือไม่และถ้าเป็นเช่นนั้น สิ่งที่พวกเขาเรียกว่าจริงไม่ได้เรื่อง (นอกเหนือจากการกำหนดลำดับที่พวกเขาจะอ่าน) .confตราบเท่าที่พวกเขาจบลงใน มันคือสิ่งที่อยู่ในพวกเขาที่นับ
goldilocks

ตกลงฉันจะสร้างมัน แต่แล้วสิ่งที่เนื้อหาของจะเหมือนกัน ฉันควรจะเพิ่มตัวเลือกเพียงหนึ่งบรรทัด "snd-usb-audio index = 0" หรือไม่?
Parth Doshi

options snd_bcm2835 index=1ผมคิดว่ามีสองบรรทัดปัญหามีที่หนึ่งและ
goldilocks

สวัสดีฉันพยายามเพิ่มเหมือนกัน แต่ก็ยังคงเป็นค่าเริ่มต้นคือ snd_bcm2835 เท่านั้น ฉันก็ทำการรีบูท
Parth Doshi

ออกจากที่นั่นและหากคุณไม่ได้ใช้ทรีอุปกรณ์สำหรับสิ่งใด (เช่น I2C) ให้ลองเพิ่มdevice_tree=(โดยไม่ทำอะไรเลย) /boot/config.txtเพื่อปิดใช้งานจากนั้นรีบูตอีกครั้ง หากวิธีนี้ใช้ไม่ได้ผลคุณอาจลบบรรทัดconfig.txtนั้นออกดังนั้นคุณจะไม่ลืมในภายหลัง
goldilocks

คำตอบ:


9

ตกลงก่อนอื่นให้ลบไฟล์/etc/modprobe.d/alsa-base.confRaspbian Jessie ไม่ได้ใช้ไฟล์ปรับแต่งนี้เหมือนที่ Wheezy ทำ

ในการค้นหาที่อยู่ที่อุปกรณ์ของคุณใช้คุณต้องป้อนคำสั่งก่อนaplay -lซึ่งจะแสดงอุปกรณ์เสียงออกทั้งหมดและที่อยู่ของอุปกรณ์ ตัวอย่างเช่นการ์ดเสียง USB ของฉันมาเป็นอุปกรณ์ 1 ในผลลัพธ์ซึ่งมีลักษณะเช่นนี้

card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
  Subdevices: 8/8
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
  Subdevice #4: subdevice #4
  Subdevice #5: subdevice #5
  Subdevice #6: subdevice #6
  Subdevice #7: subdevice #7
card 1: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio]
  Subdevices: 0/1
  Subdevice #0: subdevice #0

ตอนนี้การตั้งค่าอุปกรณ์เป็นบัตรเริ่มต้นของคุณคุณจะต้องแก้ไขไฟล์/usr/share/alsa/alsa.confด้วยคำสั่งsudo nano /usr/share/alsa/alsa.confเลื่อนลงจนกว่าคุณจะพบบรรทัด

defaults.ctl.card 0
defaults.pcm.card 0

และเปลี่ยนเป็น (หากอุปกรณ์ของคุณมีรายชื่อเป็นอุปกรณ์ 1 หากไม่เปลี่ยน 1 เป็นที่อยู่ใดก็ตามที่อยู่ในรายการ)

defaults.ctl.card 1
defaults.pcm.card 1

คำอธิบาย: การ์ดเสียง USB ถูกลงทะเบียนเป็นการ์ด 1 บน Raspbian Jessie ใน Wheezy พวกเขาจะลงทะเบียนเป็นการ์ด -2 โดยค่าเริ่มต้นและการแก้ไข/etc/modprobe.d/alsa-base.confจะเปลี่ยนที่

ฉันไม่ทราบว่าขั้นตอนต่อไปนี้เป็นสิ่งจำเป็น แต่หากไม่มีการ์ดของฉันจะไม่ทำงาน

สร้างและแก้ไขไฟล์~/.asoundrcโดยใช้คำสั่งsudo nano ~/.asoundrcและเปลี่ยนแปลงเพื่อให้มันอ่านได้เท่านั้น:

pcm.!default {
    type hw
    card 1
}

ctl.!default {
    type hw
    card 1
}

ในตอนนี้สัญญาณเสียงออก (ลำโพง) และเสียงเข้า (mic) เป็นอุปกรณ์ usb ของคุณ


@ParthDoshi ฉันแก้ไขคำถามในกรณีที่คุณไม่ได้ใช้การ์ดเสียง USB
Patrick Cook

ขอบคุณ Patrick สำหรับคำตอบที่รวดเร็ว ฉันจะตรวจสอบเรื่องนี้และแจ้งให้คุณทราบ ฉันใช้ไมค์ USB เป็นอินพุตและลำโพงเสียงเป็นเอาท์พุท ลำโพงของฉันเชื่อมต่อผ่านแจ็คเสียงขนาด 3.5 มม.
Parth Doshi

@ParthDoshi ดังนั้นลำโพงของคุณใช้การ์ดเสียงมาตรฐานบน pi?
Patrick Cook

ใช่พวกเขากำลังใช้การ์ดเสียงมาตรฐาน ฉันทำการทดสอบโดยใช้คำสั่งลำโพงทดสอบ ... ฉันสามารถเล่นไฟล์ mp3 ตัวอย่างใน PI ของฉันที่ฉันสามารถได้ยินผ่านลำโพงได้อย่างชัดเจนปัญหาเดียวคือไมค์ตอนนี้
Parth Doshi

ตกลงแล้วคุณไม่จำเป็นต้องเปลี่ยนหนึ่งในบรรทัดในไฟล์เหล่านั้นฉันกำลังหาว่าบรรทัดไหนตอนนี้
Patrick Cook

4

คำถามหมายถึงโพสต์อื่นซึ่งมีคำตอบอยู่แล้วว่าเพียงแค่กับเจสซีไม่จำเป็นต้องแก้ไข/usr/share/alsa/alsa.confเพียงแค่สร้าง~/.asoundrcและพิมพ์

pcm.!default {
    type hw
    card 1
}

ctl.!default {
    type hw
    card 1
}

PS: ฉันเพิ่งทดสอบกับการติดตั้งที่สะอาดบนราสเบอร์รี่ 2 ที่เชื่อมต่อกับลำโพง Logitech Z-5 ทำงานได้อย่างสมบูรณ์แบบ


3

หากคุณมีอุปกรณ์ที่แตกต่างกันสำหรับอินพุตและเอาต์พุต (เช่น usb ไมโครโฟนและลำโพงเสียง 3.5 มม.) คุณสามารถเขียนมันใน ~ / .asoundrc ของคุณ:

pcm.!default {
  type asym
  playback.pcm
  {
    type hw
    card 0
    device 0
  }
  capture.pcm
  {
    type hw
    card 1
    device 0
  }
}
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.