Âm thanh USB chỉ phát ra tiếng ồn trắng


9

Tôi đang chạy OpenBSD / i386 5.1 trên máy tính xách tay 5 tuổi. Loa và cổng tai nghe hoạt động, nhưng cổng tai nghe hơi lỏng lẻo nên tôi đang cố gắng cài đặt card âm thanh USB ngoài (Fiio E17 USB DAC). Không có vấn đề khi sử dụng nó trên Windows.

Thiết bị này được phát hiện và tôi đã tạo ra một nút cho nó trong /devvới sh /dev/MAKEDEV audio1, sau đó liên kết với phần còn lại của các thiết bị để trỏ đến card âm thanh mới. Cho đến nay rất tốt, tôi có thể chạy cat /dev/urandom > /dev/audiovà tôi nghe thấy tiếng ồn trắng. Tuy nhiên, tôi không thể chạy bất kỳ âm thanh nào khác thông qua nó.

Của tôi tail /var/log/messagessau khi cắm thiết bị vào:

Aug 30 10:03:55 s96j /bsd: uhidev0 at uhub1
Aug 30 10:03:55 s96j /bsd:  port 1 configuration 1 interface 0 "FiiO FiiO USB DAC-E17" rev 1.10/0.01 addr 2
Aug 30 10:03:55 s96j /bsd: uhidev0: iclass 3/0
Aug 30 10:03:55 s96j /bsd: uhid0 at uhidev0: input=18, output=27, feature=0
Aug 30 10:03:55 s96j /bsd: uaudio0 at uhub1
Aug 30 10:03:55 s96j /bsd:  port 1 configuration 1 interface 1 "FiiO FiiO USB DAC-E17" rev 1.10/0.01 addr 2
Aug 30 10:03:56 s96j /bsd: uaudio0: ignored setting with type 8193 format
Aug 30 10:03:56 s96j /bsd: uaudio0: audio rev 1.00, 2 mixer controls
Aug 30 10:03:56 s96j /bsd: audio1 at uaudio0

Danh sách các thiết bị liên quan của tôi từ /dev:

lrwxr-xr-x  1 root  wheel         6 Aug 30 09:44 audio -> audio1
crw-rw-rw-  1 root  wheel   42, 128 Aug 30 10:07 audio0
crw-rw-rw-  1 root  wheel   42, 129 Aug 30 10:15 audio1
crw-rw-rw-  1 root  wheel   42, 130 Aug 30 06:40 audio2
lrwxr-xr-x  1 root  wheel         9 Aug 30 09:44 audioctl -> audioctl1
crw-rw-rw-  1 root  wheel   42, 192 Aug 30 06:40 audioctl0
crw-rw-rw-  1 root  wheel   42, 193 Aug 30 09:44 audioctl1
crw-rw-rw-  1 root  wheel   42, 194 Aug 30 06:40 audioctl2
lrwxr-xr-x  1 root  wheel         6 Aug 30 09:45 mixer -> mixer1
crw-rw-rw-  1 root  wheel   42,  16 Aug 30 06:40 mixer0
crw-rw-rw-  1 root  wheel   42,  17 Aug 30 09:44 mixer1
crw-rw-rw-  1 root  wheel   42,  18 Aug 30 06:40 mixer2
lrwxr-xr-x  1 root  wheel         6 Aug 30 09:45 sound -> sound1
crw-rw-rw-  1 root  wheel   42,   0 Aug 30 06:40 sound0
crw-rw-rw-  1 root  wheel   42,   1 Aug 30 09:44 sound1
crw-rw-rw-  1 root  wheel   42,   2 Aug 30 06:40 sound2

Một thử nghiệm đơn giản từ Câu hỏi thường gặp để xác định xem dữ liệu có truyền qua thiết bị không:

# cat > /dev/audio < /dev/zero &
[1] 21098
# audioctl play.{seek,samples,errors}
play.seek=61712
play.samples=1146080
play.errors=0
# audioctl play.{seek,samples,errors}
play.seek=52896
play.samples=1542800
play.errors=0
# audioctl play.{seek,samples,errors}
play.seek=61712
play.samples=1957152
play.errors=0

My audioctl -a:

name=USB audio
version=
config=uaudio
encodings=slinear_le:16:2:1,slinear_le:24:3:1
properties=independent
full_duplex=0
fullduplex=0
blocksize=8816
hiwat=7
lowat=1
output_muted=0
monitor_gain=0
mode=
play.rate=44100
play.sample_rate=44100
play.channels=2
play.precision=16
play.bps=2
play.msb=1
play.encoding=slinear_le
play.gain=127
play.balance=32
play.port=0x0
play.avail_ports=0x0
play.seek=8816
play.samples=131988
play.eof=0
play.pause=0
play.error=1
play.waiting=0
play.open=0
play.active=0
play.buffer_size=65536
play.block_size=8816
play.errors=2267
record.rate=44100
record.sample_rate=44100
record.channels=2
record.precision=16
record.bps=2
record.msb=1
record.encoding=slinear_le
record.gain=127
record.balance=32
record.port=0x0
record.avail_ports=0x0
record.seek=0
record.samples=0
record.eof=0
record.pause=0
record.error=0
record.waiting=0
record.open=0
record.active=0
record.buffer_size=65536
record.block_size=8816
record.errors=0

Và cuối cùng, của tôi mixerctl -a:

outputs.aux.mute=off
outputs.aux=255,255

Một lần nữa tôi có thể cat /dev/urandom > /dev/audiovà nhận được tiếng ồn trắng, nhưng không có gì khác tôi đã thử cho phép tôi phát ra âm thanh hoặc âm nhạc khác. Tôi cũng đã cố gắng cat sample.au > /dev/audionhưng điều đó cũng im lặng.

Bất cứ đề nghị hay sự giúp đỡ nào cũng đều được cảm kích rất nhiều! Trường hợp xấu nhất, hy vọng ai đó có thể sử dụng các bước tôi đã nêu ở đây để khắc phục sự cố thiết bị âm thanh của riêng họ.


đầu ra là mixerctl -v |grep outputgì?

Câu trả lời:


2

Trên OpenBSD, phát lại / ghi âm thanh được xử lý bởi trình nền sndiod (1) theo mặc định. Tên thiết bị được ghi lại theo sndio (7) như sau:

 type      The type of the audio device or MIDI port.  Possible values
           are:

              rsnd      Raw audio(4) device.
              rmidi     Raw midi(4) port.
              snd       Audio device exposed by sndiod(1).
              midithru  MIDI thru box created with sndiod(1).
              midi      MIDI port exposed by sndiod(1).
              default   Default audio device or MIDI port (see below).

Đầu ra dmesgcho biết USB của bạn đang bật audio1, vì vậy hãy thêm các mục sau /etc/rc.conf.localvào để chỉ định hai thiết bị âm thanh thô (4) sử dụng thứ hai làm mặc định:

sndiod_flags="-f rsnd/1 -f rsnd/0"

Sau đó chạy /etc/rc.d/sndiod restart. Các -flá cờ cũng làm việc với aucatđể phát lại hoặc ghi âm của âm thanh:

aucat -f rsnd/1 -i my.wav # second "raw" audio device 
aucat -f snd/1 -i my.wav  # second sndiod device

Cảm ơn bạn! Câu trả lời của bạn và sndiod(1)trang người đàn ông đưa tôi đi đúng hướng và thiết bị đang hoạt động rất tốt. Tôi đánh giá cao sự giúp đỡ của bạn.
ssh2ksh
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.