Audio via shmem and preserve clock for adder plugin?

Simon Brandner simon.brandner at gmail.com
Wed Nov 21 04:24:18 PST 2012


Hello again,

sorry for answering with some days of delay.
>> // Unfortunately then, I get a crackling in the sound and several
>> error messages:
>> Setting pipeline to PAUSED ...
>> Pipeline is PREROLLING ...
>>
>> ** (gst-launch-0.10:32308): CRITICAL **: gst_audio_buffer_clip:
>> assertion `segment->format == GST_FORMAT_TIME || segment->format ==
>> GST_FORMAT_DEFAULT' failed
>> Pipeline is PREROLLED ...
>> Setting pipeline to PLAYING ...
>> New clock: GstAudioSinkClock
>>
>> ** (gst-launch-0.10:32308): CRITICAL **: gst_audio_buffer_clip:
>> assertion `segment->format == GST_FORMAT_TIME || segment->format ==
>> GST_FORMAT_DEFAULT' failed
>>
>> ** (gst-launch-0.10:32308): CRITICAL **: gst_audio_buffer_clip:
>> assertion `segment->format == GST_FORMAT_TIME || segment->format ==
>> GST_FORMAT_DEFAULT' failed //This message comes cyclically, just as
>> the crackling noise.

>Have you tried with the JACK plugins? If you're looking to do
>interprocess audio,

Basically, JACK would surely the represent perfect solution, but we
were searching for a more lightweight equivalent, which does not
introduce the necessity for such a capable but maybe more resource
intensive daemon in an embedded system.
I recently found alsaloop (use kernel module snd-aloop and write with
alsasink, read with alsasrc) as a possible solution for IPC streaming.
I need to verify if they are really capable enough (e.g. they would
just take and give me raw audio, no encoded data).
A solution for shmem sync (or another way to eliminate the crackling)
would still be welcome, but the alsaloop solution may help me out.


The other thing with Gstreamer 1.0:
> Do you have the same error if you leave the caps out?
gst-launch-1.0 filesrc
location=./Music/Mr__Mrs_Smith_-_01_-_Neighborhood_Funeral_Dress.mp3
!  mad ! audioconvert ! alsasink
works fine ;) The cap-settings would just be necessary when used with
a shmemsrc/shmemsink in between.


Thank you.

Regards,

Simon


More information about the gstreamer-devel mailing list