Có ai biết làm thế nào để thay đổi ưu tiên khởi động card âm thanh?
Tất cả các hướng dẫn đều bảo tôi chỉnh sửa /etc/modprobe.d/alsa-base.conf, nhưng tập tin bị thiếu trong Raspbian Jesse .
Có ai biết làm thế nào để thay đổi ưu tiên khởi động card âm thanh?
Tất cả các hướng dẫn đều bảo tôi chỉnh sửa /etc/modprobe.d/alsa-base.conf, nhưng tập tin bị thiếu trong Raspbian Jesse .
Câu trả lời:
Các tập tin bạn đang tìm kiếm nằm ở /usr/share/alsa/alsa.conf. Nó không được gọi alsa-base.conflàalsa.conf
Tất cả văn bản có liên quan trong tệp đó chỉ cần chạy sudo nano /usr/share/alsa/alsa.confthay đổi card âm thanh mặc định thành 1 hoặc bất cứ thứ gì bạn thích rõ ràng là 0 mặc định vì vậy không phải là tôi cũng đã xóa # khỏi dòng có ghi ... load card-specific configuration files(theo yêu cầu) và bây giờ tôi có âm thanh phát ra từ thẻ âm thanh cirrus của tôi đang chạy debian 8 jessie trên ras pi2
Điều này làm việc cho tôi trên Raspbian Jessie.
Nếu bạn không cần chip âm thanh trên bo mạch (tức là đầu ra analog hoặc âm thanh hdmi), hãy tắt nó và sau đó thiết bị âm thanh USB có thể trở thành thiết bị chính:
/etc/modprobe.d/raspi-blacklist.confvà thêm blacklist snd_bcm2835./lib/modprobe.d/aliases.confvà nhận xét ra dòngoptions snd-usb-audio index=-2sudo reboot$ aplay /usr/share/sounds/alsa/Front_Center.wav/usr/share/alsa/alsa.confvà thay đổi nó để nói cả hai default.ctl.card 1và default.pcm.card 1- sau đó, hãy khởi động lại và thử alsa -lchỉ xem USB hiển thị và đó là thẻ số 1. Tôi đã cài đặt mplayerđể thử nghiệm và nó là tuyệt vời. Họ đã khóa câu hỏi này để trả lời vì vậy đây là.
alsamixercách đưa vào danh sách đen bcm2835. Tôi đã tìm kiếm cao và thấp và chỉ có câu trả lời của bạn có mảnh ghép cuối cùng. TNX MCH
Tôi đã gặp vấn đề với điều này trên các phiên bản gần đây của Raspbian (Jessie).
Có một tập tin được gọi aliases.conftrong /lib/modprobe.dđó có chứa dòng options snd-usb-audio index=-2. Dòng đó ghi đè lên các /etc/modprobe.d/tệp, vì vậy bạn cần thay đổi tệp đó. Nhận xét với # dòngoptions snd-usb-audio index=-2
Trong /usr/share/alsa/alsa.conftôi chưa nhận xét các tệp cấu hình dành riêng cho thẻ tải (theo yêu cầu), và tôi cũng thay thế nội dung .asoundrclà một tệp ẩn trong thư mục nhà của bạn bằng:
pcm.!default plughw:Device
ctl.!default plughw:Device
Nhược điểm của giải pháp này là applet âm thanh máy tính để bàn sẽ không xuất hiện. Vì vậy, để kiểm soát âm lượng, hãy sử dụng alsamixerứng dụng hoặc các nút mức âm thanh vật lý trên khóa âm thanh USB.
Tài liệu tham khảo cho việc này:
Phương pháp được mô tả ở đây tại Raspberry Pi StackExchange làm việc cho tôi. Tôi đang chạy Raspian Jessie.
Thông tin mới là tôi phải tạo một .conftệp mới và không chỉnh sửa /usr/share/alsa/alsa.conf:
Để sắp xếp lại các thẻ của mình, trước tiên tôi tạo một tệp có tên
/etc/modprobe.d/alsa base.conf.Nó có thể được đặt tên bất cứ thứ gì bạn muốn miễn là nó kết thúc bằng .conf. Sau đó tôi đã thêm vào như sau:
# This sets the index value of the cards but doesn't reorder.
options snd_usb_audio index=0
options snd_bcm2835 index=1
# Does the reordering.
options snd slots=snd_usb_audio,snd_bcm2835
Tôi không hài lòng với các câu trả lời trước đó đưa ra một số hướng dẫn mơ hồ, vì vậy tôi đoán rằng tôi sẽ ghi lại một giải pháp rõ ràng hơn.
Một bài đăng tốt ở đây cho thấy cách kiểm tra thiết bị và thẻ nào bạn đang tìm cách sử dụng.
Tìm số thiết bị phần cứng và số thẻ của bạn bằng cách sử dụng aplay -ltrước và sau khi cắm thiết bị usb của bạn vào.
Đối với hệ thống của tôi, thiết bị usb được liệt kê là card 1: CODEC [USB Audio CODEC], device 0 ...
Bạn có thể xác nhận thiết bị đang hoạt động với
aplay -D hw:1,0 InsertYourWavFileHere.wav
Đảm bảo sao chép tệp âm thanh wav hợp lệ vào thư mục hiện tại của bạn và đổi tên một cách thích hợp. Nếu điều này hoạt động, thì bạn có thể mã hóa các giá trị này sao cho chúng sẽ trở thành mặc định cho phát trong số tất cả các âm thanh khác được xử lý bởi alsa (hầu hết các trường hợp)
Để chỉnh sửa giá trị mặc định của bạn, tập tin cấu hình alsa như những người khác đã nêu:
sudo nano /usr/share/alsa/alsa.conf
Các dòng cụ thể bạn sẽ muốn thay đổi là một vài trang. Bạn có thể tìm kiếm với Cntl + W hoặc chỉ cần cuộn xuống.
Thay đổi:
defaults.pcm.card 0
defaults.pcm.device 0
Đến:
defaults.pcm.card 1
defaults.pcm.device 0
Lưu tệp cấu hình bằng cách nhấn control + x, sau đó nano sẽ yêu cầu bạn xác nhận các chỉnh sửa của mình và bạn nhấn Y và Enter.
aplaylệnh để xác nhận thiết bị đang hoạt động không? Nó không đủ tốt để chỉ định một tệp âm thanh wav hợp lệ theo tên hiện tại và đường dẫn đầy đủ của nó?
InsertYourWavFileHere.wavnhưng điều này có thể dễ dàng được thay thế bằng ./audio/test.wavnếu bạn có tệp wav trong thư mục con âm thanh có tên test.wav chẳng hạn. Nếu đó là trường hợp, thì aplay -D hw:1,0 ./audio/test.wav cũng nên làm việc như vậy.
Sau khi thay đổi alsa.conf ( defaults.ctl.card 1
defaults.pcm.card 1) và ( load card-specific configuration files (on request)), bạn phải sửa đổi tệp asoundrc của mình và đặt vào:
pcm.!default { type hw card 0 }
pcm.default.card 1.
Sẽ ổn thôi
Tôi đã đưa ra một bài viết đầy đủ ở đây bao gồm tất cả những điều trên và nhiều hơn nữa. Bao gồm xóa một số hiểu lầm và cạm bẫy trong các tệp cấu hình ALSA.
Điều cần thiết có liên quan là vô hiệu hóa mô-đun âm thanh Broadcom được gọi snd_bcm2835và đảm bảo rằng chỉ snd_usb_audiođược tải nắm tay và duy nhất. Điều này có thể được thực hiện theo một trong hai cách.
/boot/config.txttập tinSau đó đặt cấu hình ALSA của bạn để trỏ đến snd_usb_audiochỉ mục.