alsa 장치 이름을 cvlc에 전달하는 방법을 아는 사람이 있습니까? 내가 해냈어
aplay -L
null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=SB
HDA ATI SB, VT1708S Analog
Default Audio Device
sysdefault:CARD=SB
HDA ATI SB, VT1708S Analog
Default Audio Device
front:CARD=SB,DEV=0
HDA ATI SB, VT1708S Analog
Front speakers
surround40:CARD=SB,DEV=0
HDA ATI SB, VT1708S Analog
4.0 Surround output to Front and Rear speakers
surround41:CARD=SB,DEV=0
HDA ATI SB, VT1708S Analog
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=SB,DEV=0
HDA ATI SB, VT1708S Analog
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=SB,DEV=0
HDA ATI SB, VT1708S Analog
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=SB,DEV=0
HDA ATI SB, VT1708S Analog
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
hdmi:CARD=SB,DEV=0
HDA ATI SB, VT1708S Digital
HDMI Audio Output
hdmi:CARD=NVidia,DEV=0
HDA NVidia, HDMI 0
HDMI Audio Output
hdmi:CARD=NVidia,DEV=1
HDA NVidia, HDMI 0
HDMI Audio Output
hdmi:CARD=NVidia,DEV=2
HDA NVidia, HDMI 0
HDMI Audio Output
hdmi:CARD=NVidia,DEV=3
HDA NVidia, HDMI 0
HDMI Audio Output
그런 다음 vlcrc를 편집하세요.
alsa-audio-device=front:CARD=SB,DEV=0
나도 해볼게
alsa-audio-device=front:CARD=SB,DEV=0,0
그런데 cvlc를 실행하면 나에게 주어진 장치가 존재하지 않는데 왜 그럴까요? 문제는 cvlc에서만 발생하고 vlc gui에서는 발생하지 않습니다. 여기서는 cvlc의 자세한 출력입니다.
VLC media player 2.0.6 Twoflower (revision 2.0.6-0-gbe9623c)
[0x1940e28] dummy interface: using the dummy interface module...
[0x7f502cc01ad8] main demux error: corrupt module: /usr/lib64/vlc/plugins/demux/libmpc_plugin.so
[0x7f502cc01ad8] main demux error: corrupt module: /usr/lib64/vlc/plugins/demux/libsid_plugin.so
[0x7f502cc02a28] main decoder error: corrupt module: /usr/lib64/vlc/plugins/codec/libfluidsynth_plugin.so
[0x7f500c0069c8] main audio output error: corrupt module: /usr/lib64/vlc/plugins/audio_output/libpulse_plugin.so
Fontconfig warning: FcPattern object size does not accept value "0"
ALSA lib conf.c:3314:(snd_config_hooks_call) Cannot open shared library (null)
ALSA lib conf.c:3777:(snd_config_update_r) hooks failed, removing configuration
[0x7f500c0069c8] alsa audio output error: cannot open ALSA device "sysdefault:CARD=SB": No such file or directory
[0x7f500c0069c8] main audio output error: Audio output failed
[0x7f500c0069c8] main audio output error: The audio device "sysdefault:CARD=SB" could not be used:
No such file or directory.
[0x7f500c0069c8] oss audio output error: cannot open audio device (/dev/dsp)
[0x7f500c0069c8] main audio output error: no suitable audio output module
Fontconfig warning: FcPattern object size does not accept value "0"
[0x7f502cdd4798] main decoder error: failed to create audio output
^Clibgcc_s.so.1 must be installed for pthread_cancel to work
A
답변1
장치 이름은 입니다 front
. 이 CARD=SB,DEV=0
부분은 해당 장치가 무엇인지 알려줍니다.
비슷한 일을 해야 합니다 alsa-audio-device=front
.
적어도 내 테스트에서 VLC는 front
또는 front:CARD=SB,DEV=0
. 그러나 실제로 장치를 사용할 수 없는 경우 오류가 발생합니다. 예를 들어, aplay -L
아무것도 연결되지 않은 HDMI 포트는 목록에 표시되지만 재생하려고 하면 "해당 파일이나 디렉터리가 없습니다"라는 오류가 발생합니다.