Gstreamer bit depth output

Michael Lathion m.lathion at gmail.com
Sat Jun 29 16:47:37 PDT 2013


Hi all,
I'm using gstreamer with a WM8741 codec on an Atmel AT91SAM9G20 processor
running Linux kernel 2.6.38.
When playing sound with gst-launch using playbin i get this error :

wm8741-codec 0-001b: wm8741_set_dai_fmt:    Format=0, Clock Inv=0
wm8741-codec 0-001b: wm8741_hw_params:    bit size param = 10
atmel_ssc_dai: sample size 32is too large for I2S
asoc: interface atmel-ssc-dai.0 hw params failed

This is because the atmel ssc dai only support a max bit depth of 16bit and
it seems that gstreamer send 32bit samples.

How can i force gstreamer (more precisely playbin) to output only 16bit
samples? I can't construct specific pipeline because I'm using rygel (wich
use playbin) for dlna streaming.

Currently I worked around the problem by setting an asound.conf file (here
below) but I would like to find a more gracefull solution... and one wich
not force to resample everything.

Thanks for help!
mike

here is the asound.conf, I don't like this solution because this also
resample everything at 48khz.
pcm.!default {
type plug
slave.pcm {
type asym
playback.pcm {
type dmix
ipc_key 10001
slave {
pcm {
type hw
card DAISY16
}
format S16_LE
rate 48000
channels 2
period_size 512
buffer_size 8192
}
}
capture.pcm {
type hw
card DAISY16
}
}
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20130630/04252f67/attachment.html>


More information about the gstreamer-devel mailing list