[MPlayer-users] AC3 and dts hwpassthrough and seeking

Alexander Roalter alex at roalter.it
Sun Jan 12 10:42:27 CET 2014


I recently connected my computer to a AV receiver through S/PDIF (after 
using 6-channel analog for the past few years).

First issue is:
pulseaudio is not able to correctly pass through AC3 and DTS directly,

Playing with -ao pulse (here it doesn't work)

[...]
Trying to force audio codec driver family hwac3...
Opening audio decoder: [hwac3] AC3/DTS pass-through S/PDIF
hwac3: switched to AC3, 384000 bps, 48000 Hz

AUDIO: 48000 Hz, 2 ch, ac3be, 384.0 kbit/25.00% (ratio: 48000->192000)
Selected audio codec: [hwac3] afm: hwac3 (AC3 through S/PDIF)
==========================================================================
AO: [pulse] 48000Hz 6ch s16le (2 bytes per sample)
[format] Sample format big-endian AC3 not yet supported
[libaf] Reinitialization did not work, audio filter 'format' returned 
error code -2
[libaf] Unable to setup filter system can not meet sound-card demands, 
please send a bug report.
Couldn't find matching filter/ao format!
Audio: no sound

-ao alsa:device=hw=1.1 (here it works)

[...]
Trying to force audio codec driver family hwac3...
Opening audio decoder: [hwac3] AC3/DTS pass-through S/PDIF
hwac3: switched to AC3, 384000 bps, 48000 Hz

AUDIO: 48000 Hz, 2 ch, ac3be, 384.0 kbit/25.00% (ratio: 48000->192000)
Selected audio codec: [hwac3] afm: hwac3 (AC3 through S/PDIF)
==========================================================================
[AO_ALSA] alsa-lib: conf.c:4571:(parse_args) Unknown parameter AES0
[AO_ALSA] alsa-lib: conf.c:4704:(snd_config_expand) Parse arguments 
error: No such file or directory
[AO_ALSA] alsa-lib: pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM 
hw:1,1,AES0=6
[AO_ALSA] Format ac3be is not supported by hardware, trying default.
AO: [alsa] 48000Hz 2ch ac3le (2 bytes per sample)
Starting playback...


But with this I can live (it would be nice if I could specify -ao 
pulse,alsa:device=hw=1.1 to have a defined fallback in case pulseaudio 
cannot passthrough. perhaps this is already implemented, but since libaf 
does the bail-out, it doesn't try the next output driver...



Second issue: If I play AC3 correctly, the AV receiver takes about 0.5 
to 1 second to detect it is a AC3 stream. Every time I seek (or at every 
chapter break with dvdnav:// (not with dvd://) the stream gets 
reinitialized (or resynched or whatever), and I have again half a second 
of silence. Does this happen to anyone else? Is there a way to make sure 
only complete/valid AC3 packets are sent to the receiver, so it doesn't 
need to reinitialize?

-- 
Cheers,
Alex


More information about the MPlayer-users mailing list