[MPlayer-users] ALSA device mangling rules?

Reimar Döffinger Reimar.Doeffinger at gmx.de
Sun Mar 2 15:45:59 CET 2014

On 01.03.2014, at 20:41, Christian Jaeger <chrjae at gmail.com> wrote:
> I've tried both s/:/./sg and tr/:,/=./ to no avail. An example with
> the latter for mplayer, with ALSA device (works with aplay -L):
> default:CARD=C1100

Your replacements are correct, but they mean that ALSA names containing = or . cannot be passed to MPlayer (as they are converted to : and ,).

> Failed to initialize audio driver 'alsa:device=default=CARD=C1100'

So this tries to use the device "default:CARD:C1100"
MPlayer cannot support the normal ALSA naming as , and : already have other reserved meanings, though if really desired a more advance escaping scheme could be designed.
For now you'll just have to define aliases with fewer special characters.

> So why does that form contain "hw" as if I could only use hw accesses?

Because that was the only reason for the option to exist and have that kind of brain-dead :, to =. substitution.
The "default" and other non-direct-hardware stuff was broken for most users for years (using dmix basically meant it would be unusable, which was kind of hilarious since dmix was the number one argument for ALSA), and it seems even in the latest versions it is still causing trouble in corner cases like passthrough.
(and as an aside, since it was so much fun once ALSA was kind of working PulseAudio came along and introduced another few years of audio brokenness which finally seems mostly fixed, except for yet more corner cases, so I expect we will soon see a new Linux audio system any time)

It just was never really designed to handle your case.

More information about the MPlayer-users mailing list