コンピューターのUSBポートにサウンドカードが接続されたCinebarOneスピーカーシステムがあります。 KDEのオーディオ設定で「フロント右/フロント左」スピーカーテストボタンを押すと、問題なく認識されます。フレンドリーな女性の声が聞こえ、動作していることがわかります。ターミナルからのspeaker-test
も機能します。さまざまな構成ファイル(最後に説明)に対してすでに行った編集を除いて、これはカーネル4.19.28-1を使用したManjaro 18.0.2(更新のインストール)のクリーンでフレッシュなインストールです。
ただし、他のすべてのアプリケーションは音を出さず、別のアプリケーション(vlcなど)が同時に実行されると、スピーカーテストは無音になります。ラップトップとまったく同じように構成しましたが、問題なく動作します。
KDE-Audio-Configのスクリーンショット-Advanced-Tab
KDE-Audio-Configのスクリーンショット-アプリケーション-タブ
KDE-Audio-Config-Devices-Tabのスクリーンショット
最初に、間違ったソースとシンクがpactl info
で使用されているかどうかを確認しました。
Server String: unix:/run/user/1000/Pulse/native
Library Protocol Version: 32
Server Protocol Version: 32
Is Local: yes
Client Index: 82
Tile Size: 65472
User Name: takiro
Host Name: takiro-desktop
Server Name: pulseaudio
Server Version: 12.2
Default Sample Specification: s16le 2ch 44100Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.usb-2cc2_Teufel_Cinebar_One_ABCDEF0123456789-00.iec958-stereo
Default Source: alsa_output.usb-2cc2_Teufel_Cinebar_One_ABCDEF0123456789-00.iec958-stereo.monitor
Cookie: 5ca7:421f
Default Sink
とDefault Source
は正しいですが、私が知る限り、他の設定も正しいです。
次に、アプリケーションが間違ったシンクを使用している可能性があるか、ミュートまたはコルクされている可能性があると考えました。アプリケーション(VLC)の実行中にpactl list sink-inputs
でこれを確認しました
Sink Input #94
Driver: protocol-native.c
Owner Module: 13
Client: 79
Sink: 24
Sample Specification: float32le 2ch 44100Hz
Channel Map: front-left,front-right
Format: pcm, format.rate = "44100" format.sample_format = "\"float32le\"" format.channels = "2" format.channel_map = "\"front-left,front-right\""
Corked: no
Mute: no
Volume: front-left: 65536 / 100% / 0,00 dB, front-right: 65536 / 100% / 0,00 dB
balance 0,00
Buffer Latency: 339659 usec
Sink Latency: 48859 usec
Resample method: copy
Properties:
media.role = "video"
media.name = "audio stream"
application.name = "VLC media player (LibVLC 3.0.6)"
native-protocol.peer = "UNIX socket client"
native-protocol.version = "32"
application.id = "org.VideoLAN.VLC"
application.version = "3.0.6"
application.icon_name = "vlc"
application.language = "en_US.UTF-8"
application.process.id = "4215"
application.process.user = "takiro"
application.process.Host = "takiro-desktop"
application.process.binary = "vlc"
window.x11.display = ":0"
application.process.machine_id = "34b82a1eb1ad4ab48c8d7c2b845005f6"
application.process.session_id = "2"
module-stream-restore.id = "sink-input-by-media-role:video"
ご覧のとおり、ミュートもコルクもされていません。 sink: 24
が実際に何であるかを再確認し、pactl list sinks
を実行しました
Sink #24
State: RUNNING
Name: alsa_output.usb-2cc2_Teufel_Cinebar_One_ABCDEF0123456789-00.iec958-stereo
Description: Teufel Cinebar One Digital Stereo (IEC958)
Driver: module-alsa-card.c
Sample Specification: s16le 2ch 44100Hz
Channel Map: front-left,front-right
Owner Module: 32
Mute: no
Volume: front-left: 65506 / 100% / -0,01 dB, front-right: 65506 / 100% / -0,01 dB
balance 0,00
Base Volume: 65536 / 100% / 0,00 dB
Monitor Source: alsa_output.usb-2cc2_Teufel_Cinebar_One_ABCDEF0123456789-00.iec958-stereo.monitor
Latency: 48456 usec, configured 40000 usec
Flags: HARDWARE DECIBEL_VOLUME LATENCY SET_FORMATS
Properties:
alsa.resolution_bits = "16"
device.api = "alsa"
device.class = "sound"
alsa.class = "generic"
alsa.subclass = "generic-mix"
alsa.name = "USB Audio"
alsa.id = "USB Audio"
alsa.subdevice = "0"
alsa.subdevice_name = "subdevice #0"
alsa.device = "0"
alsa.card = "1"
alsa.card_name = "Teufel Cinebar One"
alsa.long_card_name = "Teufel Cinebar One at usb-0000:00:14.0-8, full speed"
alsa.driver_name = "snd_usb_audio"
device.bus_path = "pci-0000:00:14.0-usb-0:8:1.0"
sysfs.path = "/devices/pci0000:00/0000:00:14.0/usb2/2-8/2-8:1.0/sound/card1"
udev.id = "usb-2cc2_Teufel_Cinebar_One_ABCDEF0123456789-00"
device.bus = "usb"
device.vendor.id = "2cc2"
device.vendor.name = "2cc2"
device.product.id = "0005"
device.product.name = "Teufel Cinebar One"
device.serial = "2cc2_Teufel_Cinebar_One_ABCDEF0123456789"
device.string = "iec958:1"
device.buffering.buffer_size = "352800"
device.buffering.fragment_size = "176400"
device.access_mode = "mmap+timer"
device.profile.name = "iec958-stereo"
device.profile.description = "Digital Stereo (IEC958)"
device.description = "Teufel Cinebar One Digital Stereo (IEC958)"
alsa.mixer_name = "USB Mixer"
alsa.components = "USB2cc2:0005"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-usb"
Ports:
iec958-stereo-output: Digital Output (S/PDIF) (priority: 0)
Active Port: iec958-stereo-output
Formats:
pcm
正しいデバイスとシンク。
pactl list sources
もヒントをくれませんでした。
Source #24
State: IDLE
Name: alsa_output.usb-2cc2_Teufel_Cinebar_One_ABCDEF0123456789-00.iec958-stereo.monitor
Description: Monitor of Teufel Cinebar One Digital Stereo (IEC958)
Driver: module-alsa-card.c
Sample Specification: s16le 2ch 44100Hz
Channel Map: front-left,front-right
Owner Module: 32
Mute: no
Volume: front-left: 65536 / 100% / 0,00 dB, front-right: 65536 / 100% / 0,00 dB
balance 0,00
Base Volume: 65536 / 100% / 0,00 dB
Monitor of Sink: alsa_output.usb-2cc2_Teufel_Cinebar_One_ABCDEF0123456789-00.iec958-stereo
Latency: 0 usec, configured 2000000 usec
Flags: DECIBEL_VOLUME LATENCY
Properties:
device.description = "Monitor of Teufel Cinebar One Digital Stereo (IEC958)"
device.class = "monitor"
alsa.card = "1"
alsa.card_name = "Teufel Cinebar One"
alsa.long_card_name = "Teufel Cinebar One at usb-0000:00:14.0-8, full speed"
alsa.driver_name = "snd_usb_audio"
device.bus_path = "pci-0000:00:14.0-usb-0:8:1.0"
sysfs.path = "/devices/pci0000:00/0000:00:14.0/usb2/2-8/2-8:1.0/sound/card1"
udev.id = "usb-2cc2_Teufel_Cinebar_One_ABCDEF0123456789-00"
device.bus = "usb"
device.vendor.id = "2cc2"
device.vendor.name = "2cc2"
device.product.id = "0005"
device.product.name = "Teufel Cinebar One"
device.serial = "2cc2_Teufel_Cinebar_One_ABCDEF0123456789"
device.string = "1"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-usb"
Formats:
pcm
alsamixer
も、異常なチャネルなどを表示しません。 アルサミキサーのスクリーンショット
奇妙なことに、KDE-Plasmaで最新のManjaroを実行するlaoptopでサウンドカードとスピーカーをテストしましたが、問題なく動作します。そのため、デスクトップ(以前はXFCEでManjaroを使用していた)を再インストールし、今でも機能することを望んでいましたが、機能しないと思います。
私はすでにいくつかの設定をチェックしましたが、私が知る限り、それらはまったく同じように設定されています。そのため、ミュートされておらず、音量は100%ですが、それでも音は出ません。
結局、新しいシステムのインストールは役に立ちました 私の「デバイスがビジーです」の問題で 、私はまだデスクトップコンピュータで音が出ません。
私はインターネット上で同様の問題を抱えた投稿をたくさん見つけましたが、通常はミュートされたチャネルまたはライブラリがないため、解決策を試しましたが、うまくいきませんでした。 https://wiki.archlinux.org/index.php/Advanced_Linux_Sound_Architecture と https://wiki.archlinux.org/index.php/PulseAudio/Troubleshooting もチェックしました可能な解決策について。
編集
その間に試したが成功しなかった:
No object for name "alsa_output.usb-2cc2_Teufel_Cinebar_One_ABCDEF0123456789-00.iec958-stereo.monitor"
を見つけました。これに対する解決策を検索しても、私がまだ試していなかった結果は得られませんでした。snd_hda_intel
をブラックリストに登録しました。 USBサウンドカードがシステムで認識される唯一のサウンドカードになりましたが、変更はありません。set-card-profile alsa_card.usb-2cc2_Teufel_Cinebar_One_ABCDEF0123456789-00 output:iec958-stereo
の末尾にset-sink-port alsa_output.usb-2cc2_Teufel_Cinebar_One_ABCDEF0123456789-00.iec958-stereo iec958-stereo-output
と/etc/Pulse/default.pa
を追加しました。問題は残っています。load-module module-detect
、load-module module-role-cork
、load-module module-switch-on-port-available
をコメントアウトしましたapulse <application>
を試しました。まだ音が出ない。fuser -v /dev/snd/*
を実行して、問題のあるアプリケーションをチェックしました
/dev/snd/controlC0: takiro 3727 F.... pulseaudio
/dev/snd/pcmC0D0p: takiro 3727 F...m pulseaudio
audio
グループに追加しました。~/.config/Pulse/
のすべてを削除し、pulseaudioを再起動しましたこれまでのところ変更のみ:VLC、Firefox、およびその他のアプリケーションはサウンドを生成しますが、speaker-test
が端末から同時に実行されている場合に限ります。残念ながら、それがいつ起こったのか正確にはわかりません。
ソリューションを作成しているときに、一部のアプリケーション(Telegramなど)とビュービデオが実際にサウンドを生成していることに気付きました。さらに調査したところ、コーデックが欠落していることが原因であると最初に推測し、すべての作業メディアファイルがモノラルまたはユニファイドステレオチャネルを嫌っていることに気づきました。さらに多くのファイルをチェックしたところ、これは実際には問題ではないことに気づきました。動作していないすべてのファイルに共通していたのは、サンプルレートでした。サンプルレートが48000のすべてのものが、期待どおりのサウンドを生成しました。
この新しい情報を使用して、/etc/Pulse/daemon.conf
を編集し、行を変更しました
; default-sample-format = s16le
default-sample-rate = 48000
; alternate-sample-rate = 48000
default-sample-channels = 2
default-channel-map = front-left,front-right
default-sample-rate
にコメントし、サンプルレートを48000
に変更しました。念のため、default-sample-channels
とdefault-channel-map
にもコメントしましたが、サウンドカードですでにサポートされていたため、値はそのままにしました。
変更を保存した後、systemctl --user restart pulseaudio
でpulseaudioを再起動すると、動作しました。私の知る限り、私がテストしたすべてのアプリケーションは現在健全です。