好吧,这是一个有点奇怪的问题,不知怎么就潜入了我的系统。它以前运行良好。
据我所知,问题如下。当我尝试使用 mplayer 播放某些视频文件时,没有声音。据我所知,这只是 ac3 和 dts 音轨的问题(使用 ffmpeg 解码器)。
Mplayer 说:
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 48000 Hz, 6 ch, s16le, 1536.0 kbit/33.33% (ratio: 192000->576000)
Selected audio codec: [ffdca] afm: ffmpeg (FFmpeg DTS)
==========================================================================
[AO_ALSA] Playback open error: Device or resource busy
Failed to initialize audio driver 'alsa'
Could not open/initialize audio device -> no sound.
Audio: no sound
(与 ac3 声音类似,但使用 ffac3 音频编解码器)。
尝试不同的音频输出(-ao oss/pcm/sdl)无法解决问题。奇怪的是,如果我直接用 ffplay 播放这些文件,它们可以正常工作。
mplayer 播放 mp3/ogg 声音效果很好
我的 alsa 配置是标准的(没有 /etc/asound.conf 或 ~/.asound*)
OS: Linux Gentoo
Mplayer: 1.0_rc4_p20100213 (SVN-r30554-4.3.4)
FFMpeg: 0.5_p20601-r1 (SVN-r20601)
我可以提供其他什么信息吗?
答案1
事实证明,ALSA 已被另一个应用程序占用,并且不允许同时输出多个输出。经过一番谷歌搜索,这似乎是声卡不支持硬件混音的标志。我找到了一些允许软件混音的方法,但它们似乎很不靠谱。我还发现了一种查看哪个应用程序正在使用 alsa 的方法,结果发现它非常有用。