Problem generating sound while implementing GstAudioSrc
Ivan Kelly
ivan at ivankelly.net
Thu Jan 17 12:33:45 PST 2013
Is anyone able to provide any insights on this? Or even a pointer as
to how to start debugging it? At the moment im completely stumped.
-Ivan
On Sun, Jan 13, 2013 at 05:03:58PM +0000, Ivan Kelly wrote:
> Hi,
>
> I'm playing around with GstAudioSrc and I'm having trouble getting my
> plugin to generate sound. At the moment I really just want to generate
> white noise (I'm aware of audiotestsrc, I'll be doing something more
> useful once I get whitenoise to work). My read() function takes the
> data pointer and fills it with random integers. AFAIK, the pads are
> set to use S32LE. Its a amd64 machine, so ints are LE.
>
> <snip>
> static guint
> testaudio_gst_read(GstAudioSrc *src, gpointer data, guint length,
> GstClockTime *timestamp) {
> int i = 0;
> int samples = (length/sizeof(int));
>
> int* idata = (int*)data;
> for (i = 0; i < samples; i++) {
> idata[i] = (int)g_random_int_range(-1.0, 1.0) * 2147483647.0;
> }
>
> return samples*sizeof(int);
> }
> </snip>
>
> My delay function always returns 0.
>
> When I try to test this, with:
> gst-launch-1.0 -v --gst-debug-level=3 --gst-debug=testaudio:5,audiobasesrc:5,audiosrc:5 --gst-plugin-path=src -v -m testaudio ! audioconvert ! pulsesink
>
> I get about 0.5 seconds of noise, and a message list "create DISCONT
> of 93933 samples at sample 94374", and a warning that the audiobasesrc
> cannot record fast enough. There are also other bits of noise every
> few seconds after. I've attached the fulllog.
>
> I was under the impression that as long as you fill the buffers,
> GstAudioSrc and GstAudioBaseSrc would take care of controlling the
> rate and timing etc. Is this not the case? Is there any other obvious
> place that I'm going wrong?
>
> -Ivan
>
>
> Using debian unstable, gstreamer 1.0.4. My source is at
> https://github.com/ivankelly/gsttestaudio
>
> 0:00:00.010833315 [335m32740[00m 0x1b580c0 [36mINFO [00m [00m testaudio /home/ivan/src/testaudio_gstreamer/src/gst_testaudio.c:264:testaudio_plugin_init:<plugin175>[00m plugin_init
> 0:00:00.010886606 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:114:_do_init:[00m binding text domain gst-plugins-base-1.0 to locale dir /usr/share/locale
> 0:00:00.010965145 [335m32740[00m 0x1b580c0 [36mINFO [00m [00m testaudio /home/ivan/src/testaudio_gstreamer/src/gst_testaudio.c:131:testaudio_gst_src_class_init:0x1b5d4f0[00m class init
> 0:00:00.011069978 [335m32740[00m 0x1b580c0 [36mINFO [00m [00m testaudio /home/ivan/src/testaudio_gstreamer/src/gst_testaudio.c:167:testaudio_gst_src_init:<TestAudioGstSrc at 0x1b62020>[00m src init
> Setting pipeline to PAUSED ...
> 0:00:00.016407997 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:1101:gst_audio_base_src_change_state:<testaudiogstsrc0>[00m NULL->READY
> 0:00:00.016444163 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:538:gst_audio_src_create_ringbuffer:[00m creating ringbuffer
> 0:00:00.016485190 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:540:gst_audio_src_create_ringbuffer:[00m created ringbuffer @0x1b861f0
> 0:00:00.016602630 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:1112:gst_audio_base_src_change_state:<testaudiogstsrc0>[00m READY->PAUSED
> Pipeline is live and does not need PREROLL ...
> 0:00:00.016809424 [335m32740[00m 0x1b74f70 [32;01mFIXME [00m [00;04m default gstutils.c:3622:gst_pad_create_stream_id_printf_valist:<testaudiogstsrc0:src>[00m Creating random stream-id, consider implementing a deterministic way of creating a stream-id
> Got message #8 from element "pulsesink0" (state-changed): GstMessageStateChanged, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING;
> Got message #9 from element "audioconvert0" (state-changed): GstMessageStateChanged, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING;
> Got message #10 from element "testaudiogstsrc0" (state-changed): GstMessageStateChanged, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING;
> Got message #11 from element "pipeline0" (state-changed): GstMessageStateChanged, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED;
> Got message #14 from element "audioconvert0" (state-changed): GstMessageStateChanged, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING;
> Got message #17 from pad "testaudiogstsrc0:src" (stream-status): GstMessageStreamStatus, type=(GstStreamStatusType)GST_STREAM_STATUS_TYPE_CREATE, owner=(GstElement)"\(TestAudioGstSrc\)\ testaudiogstsrc0", object=(GstTask)"\(GstTask\)\ testaudiogstsrc0:src";
> Got message #18 from element "testaudiogstsrc0" (state-changed): GstMessageStateChanged, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING;
> Got message #19 from element "pipeline0" (state-changed): GstMessageStateChanged, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING;
> Got message #20 from pad "testaudiogstsrc0:src" (stream-status): GstMessageStreamStatus, type=(GstStreamStatusType)GST_STREAM_STATUS_TYPE_ENTER, owner=(GstElement)"\(TestAudioGstSrc\)\ testaudiogstsrc0", object=(GstTask)"\(GstTask\)\ testaudiogstsrc0:src";
> Got message #21 from element "pipeline0" (stream-start): no message details
> Setting pipeline to PLAYING ...
> 0:00:00.017291866 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:553:gst_audio_base_src_setcaps:[00m release old ringbuffer
> 0:00:00.017317971 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 0, delay 0, real 0, time 0:00:00.000000000
> 0:00:00.017324281 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:559:gst_audio_base_src_setcaps:[00m acquire new ringbuffer
> 0:00:00.017361116 [335m32740[00m 0x1b74f70 [36mINFO [00m [00m testaudio /home/ivan/src/testaudio_gstreamer/src/gst_testaudio.c:179:testaudio_gst_prepare:<testaudiogstsrc0>[00m prepare
> 0:00:00.017393076 [335m32740[00m 0x1b580c0 [33;01mWARN [00m [00;01m bin gstbin.c:2488:gst_bin_do_latency_func:<pipeline0>[00m failed to query latency
> 0:00:00.017441347 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:1127:gst_audio_base_src_change_state:<testaudiogstsrc0>[00m PAUSED->PLAYING
> 0:00:00.017483067 [335m32740[00m 0x7f38bc002990 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:214:audioringbuffer_thread_func:<testaudiogstsrc0>[00m enter thread
> GstMessageNewClock, clock=(GstClock)"\(GstAudioClock\)\ GstAudioSrcClock";
> New clock: GstAudioSrcClock
> Got message #25 from element "audioconvert0" (state-changed): GstMessageStateChanged, old-state=(GstState)GST_STATE_PAUSED, new-state=(GstState)GST_STATE_PLAYING, pending-state=(GstState)GST_STATE_VOID_PENDING;
> 0:00:00.017575637 [335m32740[00m 0x7f38bc002990 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:268:audioringbuffer_thread_func:<testaudiogstsrc0>[00m wait for action
> Got message #26 from element "testaudiogstsrc0" (state-changed): GstMessageStateChanged, old-state=(GstState)GST_STATE_PAUSED, new-state=(GstState)GST_STATE_PLAYING, pending-state=(GstState)GST_STATE_VOID_PENDING;
> Got message #27 from object "audiosrcringbuffer0" (stream-status): /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0: actual-buffer-time = 200000
> GstMessageStreamStatus, type=(GstStreamStatusType)GST_STREAM_STATUS_TYPE_ENTER, owner=(GstElement)"\(TestAudioGstSrc\)\ testaudiogstsrc0", object=(gpointer)NULL;
> /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0: actual-latency-time = 10000
> /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0.GstPad:src: caps = audio/x-raw, layout=(string)interleaved, rate=(int)44100, format=(string)S32LE, channels=(int)2
> /GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:src: caps = audio/x-raw, layout=(string)interleaved, rate=(int)44100, format=(string)S32LE, channels=(int)2, channel-mask=(bitmask)0x0000000000000003
> /GstPipeline:pipeline0/GstPulseSink:pulsesink0.GstPad:sink: caps = audio/x-raw, layout=(string)interleaved, rate=(int)44100, format=(string)S32LE, channels=(int)2, channel-mask=(bitmask)0x0000000000000003
> /GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:sink: caps = audio/x-raw, layout=(string)interleaved, rate=(int)44100, format=(string)S32LE, channels=(int)2
> 0:00:00.025317810 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:737:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m first sample, align to current 0
> 0:00:00.025328029 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 0, we are at 0, sample 0
> 0:00:00.025334351 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 0 length 3528
> 0:00:00.025358314 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:448:gst_audio_src_ring_buffer_start:[00m start, sending signal
> 0:00:00.027702756 [335m32740[00m 0x7f38bc002990 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:270:audioringbuffer_thread_func:<testaudiogstsrc0>[00m got signal
> 0:00:00.027720322 [335m32740[00m 0x7f38bc002990 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:273:audioringbuffer_thread_func:<testaudiogstsrc0>[00m continue running
> 0:00:00.027800944 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.027818487 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 441, delay 0, real 441, time 0:00:00.010000000
> Got message #31 from element "pulsesink0" (state-changed): GstMessageStateChanged, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING;
> Got message #33 from element "pipeline0" (async-done): GstMessageAsyncDone, running-time=(guint64)18446744073709551615;
> 0:00:00.039780504 [335m32740[00m 0x1b75190 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:634:gst_audio_base_src_query:<testaudiogstsrc0>[00m report latency min 0:00:00.010000000 max 0:00:00.200000000
> 0:00:00.039827725 [335m32740[00m 0x1b75190 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:690:gst_audio_base_src_event:<testaudiogstsrc0>[00m forward event 0x7f38bc003b00
> 0:00:00.039914665 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 94374, delay 0, real 94374, time 0:00:02.140000000
> GstMessageStateChanged, old-state=(GstState)GST_STATE_PAUSED, new-state=(GstState)GST_STATE_PLAYING, pending-state=(GstState)GST_STATE_VOID_PENDING;
> 0:00:00.039945911 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 94374, delay 0, real 94374, time 0:00:02.140000000
> Got message #36 from element "pipeline0" (state-changed): GstMessageStateChanged, old-state=(GstState)GST_STATE_PAUSED, new-state=(GstState)GST_STATE_PLAYING, pending-state=(GstState)GST_STATE_VOID_PENDING;
> 0:00:00.039969102 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 214 and sample 441
> 0:00:00.039975763 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:731:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m dropped, align to segment 214
> 0:00:00.039981226 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 1, we are at 214, sample 94374
> 0:00:00.039986971 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 94374 length 3528
> Got message #37 from element "pulsesink0" (stream-status): GstMessageStreamStatus, type=(GstStreamStatusType)GST_STREAM_STATUS_TYPE_ENTER, owner=(GstElement)"\(GstPulseSink\)\ pulsesink0", object=(gpointer)NULL;
> 0:00:00.040091549 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.040115932 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesrc gstaudiobasesrc.c:844:gst_audio_base_src_create:<testaudiogstsrc0>[00m create DISCONT of 93933 samples at sample 94374
> 0:00:00.040155813 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesrc gstaudiobasesrc.c:849:gst_audio_base_src_create:<testaudiogstsrc0>[00m warning: Can't record audio fast enough
> 0:00:00.040163626 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesrc gstaudiobasesrc.c:849:gst_audio_base_src_create:<testaudiogstsrc0>[00m warning: Dropped 93933 samples. This is most likely because downstream can't keep up and is consuming samples too slowly.
> 0:00:00.040222802 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 95697, delay 0, real 95697, time 0:00:02.170000000
> Got message #38 from element "testaudiogstsrc0" (warning): GstMessageWarning, gerror=(GError)NULL, debug=(string)"gstaudiobasesrc.c\(849\):\ gst_audio_base_src_create\ \(\):\ /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0:\012Dropped\ 93933\ samples.\ This\ is\ most\ likely\ because\ downstream\ can\'t\ keep\ up\ and\ is\ consuming\ samples\ too\ slowly.";
> WARNING: from element /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0: Can't record audio fast enough
> Additional debug info:
> gstaudiobasesrc.c(849): gst_audio_base_src_create (): /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0:
> Dropped 93933 samples. This is most likely because downstream can't keep up and is consuming samples too slowly.
> /GstPipeline:pipeline0/GstPulseSink:pulsesink0: volume = 0.099998850267223105
> /GstPipeline:pipeline0/GstPulseSink:pulsesink0: mute = false
> 0:00:00.040648566 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 224 and sample 94815
> 0:00:00.040657816 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 215, we are at 224, sample 94815
> 0:00:00.040663708 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 94815 length 3528
> 0:00:00.040671955 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.040688164 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 98784, delay 0, real 98784, time 0:00:02.240000000
> 0:00:00.040723231 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 225 and sample 95256
> 0:00:00.040731328 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 216, we are at 225, sample 95256
> 0:00:00.040737111 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 95256 length 3528
> 0:00:00.040744736 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.040758747 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 99666, delay 0, real 99666, time 0:00:02.260000000
> 0:00:00.040776243 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 226 and sample 95697
> 0:00:00.040783051 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 217, we are at 226, sample 95697
> 0:00:00.040788674 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 95697 length 3528
> 0:00:00.040795721 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.040808727 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 100107, delay 0, real 100107, time 0:00:02.270000000
> 0:00:00.040826822 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 227 and sample 96138
> 0:00:00.040833628 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 218, we are at 227, sample 96138
> 0:00:00.040839174 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 96138 length 3528
> 0:00:00.040846313 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.040859131 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 100548, delay 0, real 100548, time 0:00:02.280000000
> 0:00:00.041109652 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 229 and sample 96579
> 0:00:00.041119385 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 219, we are at 229, sample 96579
> 0:00:00.041125203 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 96579 length 3528
> 0:00:00.041132951 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.041148254 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 101430, delay 0, real 101430, time 0:00:02.300000000
> /GstPipeline:pipeline0/GstPulseSink:pulsesink0: volume = 0.099998850267223105
> /GstPipeline:pipeline0/GstPulseSink:pulsesink0: mute = false
> 0:00:00.041437008 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 235 and sample 97020
> 0:00:00.041448721 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 220, we are at 235, sample 97020
> 0:00:00.041456911 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 97020 length 3528
> 0:00:00.041467400 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.041485757 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 104076, delay 0, real 104076, time 0:00:02.360000000
> 0:00:00.041496231 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesink gstaudiobasesink.c:1295:gst_audio_base_sink_skew_slaving:<pulsesink0>[00m correct clock skew -26213194 < -20000000
> 0:00:00.041512962 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 236 and sample 97461
> 0:00:00.041519917 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 221, we are at 236, sample 97461
> 0:00:00.041525461 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 97461 length 3528
> 0:00:00.041535520 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.041549198 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 104517, delay 0, real 104517, time 0:00:02.370000000
> 0:00:00.041566838 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 237 and sample 97902
> 0:00:00.041573635 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 222, we are at 237, sample 97902
> 0:00:00.041579178 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 97902 length 3528
> 0:00:00.041586060 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.041599082 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 104958, delay 0, real 104958, time 0:00:02.380000000
> 0:00:00.041616515 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 238 and sample 98343
> 0:00:00.041623235 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 223, we are at 238, sample 98343
> 0:00:00.041628774 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 98343 length 3528
> 0:00:00.041635522 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.041648235 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 105399, delay 0, real 105399, time 0:00:02.390000000
> 0:00:00.041665495 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 239 and sample 98784
> 0:00:00.041672314 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 224, we are at 239, sample 98784
> 0:00:00.041677847 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 98784 length 3528
> 0:00:00.041684681 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.041697480 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 105399, delay 0, real 105399, time 0:00:02.390000000
> 0:00:00.041721455 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 240 and sample 99225
> 0:00:00.041728693 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 225, we are at 240, sample 99225
> 0:00:00.041736394 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 99225 length 3528
> 0:00:00.041743431 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.041756669 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 106281, delay 0, real 106281, time 0:00:02.410000000
> 0:00:00.153305131 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 2288 and sample 99666
> 0:00:00.153331763 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:731:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m dropped, align to segment 2288
> 0:00:00.153338320 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 226, we are at 2288, sample 1009008
> 0:00:00.153344767 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 1009008 length 3528
> 0:00:00.153363710 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.153369887 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesrc gstaudiobasesrc.c:844:gst_audio_base_src_create:<testaudiogstsrc0>[00m create DISCONT of 909342 samples at sample 1009008
> 0:00:00.153385150 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesrc gstaudiobasesrc.c:849:gst_audio_base_src_create:<testaudiogstsrc0>[00m warning: Can't record audio fast enough
> 0:00:00.153390875 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesrc gstaudiobasesrc.c:849:gst_audio_base_src_create:<testaudiogstsrc0>[00m warning: Dropped 909342 samples. This is most likely because downstream can't keep up and is consuming samples too slowly.
> Got message #39 from element "testaudiogstsrc0" (warning): 0:00:00.153450722 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesink gstaudiobasesink.c:1295:gst_audio_base_sink_skew_slaving:<pulsesink0>[00m correct clock skew -662302613 < -20000000
> GstMessageWarning, gerror=(GError)NULL, debug=(string)"gstaudiobasesrc.c\(849\):\ gst_audio_base_src_create\ \(\):\ /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0:\012Dropped\ 909342\ samples.\ This\ is\ most\ likely\ because\ downstream\ can\'t\ keep\ up\ and\ is\ consuming\ samples\ too\ slowly.";
> WARNING: from element /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0: Can't record audio fast enough
> Additional debug info:
> gstaudiobasesrc.c(849): gst_audio_base_src_create (): /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0:
> Dropped 909342 samples. This is most likely because downstream can't keep up and is consuming samples too slowly.
> 0:00:00.166762814 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:721:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m at segment 2533 and sample 1009449
> 0:00:00.166786120 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:731:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m dropped, align to segment 2533
> 0:00:00.166794453 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:744:gst_audio_base_src_get_offset:<testaudiogstsrc0>[00m reading from 2289, we are at 2533, sample 1117053
> 0:00:00.166802699 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:799:gst_audio_base_src_create:<testaudiogstsrc0>[00m reading from sample 1117053 length 3528
> 0:00:00.166830889 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:821:gst_audio_base_src_create:<testaudiogstsrc0>[00m read 441 of 441
> 0:00:00.166837531 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesrc gstaudiobasesrc.c:844:gst_audio_base_src_create:<testaudiogstsrc0>[00m create DISCONT of 107604 samples at sample 1117053
> 0:00:00.166847723 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesrc gstaudiobasesrc.c:849:gst_audio_base_src_create:<testaudiogstsrc0>[00m warning: Can't record audio fast enough
> 0:00:00.166853578 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesrc gstaudiobasesrc.c:849:gst_audio_base_src_create:<testaudiogstsrc0>[00m warning: Dropped 107604 samples. This is most likely because downstream can't keep up and is consuming samples too slowly.
> 0:00:00.166857830 [335m32740[00m 0x7f38b80018c0 [33;01mWARN [00m [00m pulse pulsesink.c:653:gst_pulsering_stream_overflow_cb:<pulsesink0>[00m Got overflow
> 0:00:00.166898215 [335m32740[00m 0x1b74f70 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 1117935, delay 0, real 1117935, time 0:00:25.350000000
> 0:00:00.166910420 [335m32740[00m 0x1b74f70 [33;01mWARN [00m [00m audiobasesink gstaudiobasesink.c:1295:gst_audio_base_sink_skew_slaving:<pulsesink0>[00m correct clock skew -1321956500 < -20000000
> GstMessageWarning, gerror=(GError)NULL, debug=(string)"gstaudiobasesrc.c\(849\):\ gst_audio_base_src_create\ \(\):\ /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0:\012Dropped\ 107604\ samples.\ This\ is\ most\ likely\ because\ downstream\ can\'t\ keep\ up\ and\ is\ consuming\ samples\ too\ slowly.";
> WARNING: from element /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0: Can't record audio fast enough
> Additional debug info:
> gstaudiobasesrc.c(849): gst_audio_base_src_create (): /GstPipeline:pipeline0/TestAudioGstSrc:testaudiogstsrc0:
> Dropped 107604 samples. This is most likely because downstream can't keep up and is consuming samples too slowly.
> Caught interrupt -- handling interrupt.
> Got message #41 from element "pipeline0" (application): GstLaunchInterrupt, message=(string)"Pipeline\ interrupted";
> Interrupt: Stopping pipeline ...
> Execution ended after 2253552080 ns.
> Setting pipeline to PAUSED ...
> 0:00:02.271033826 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 18209331, delay 0, real 18209331, time 0:06:52.910000000
> 0:00:02.271604314 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:1131:gst_audio_base_src_change_state:<testaudiogstsrc0>[00m PLAYING->PAUSED
> 0:00:02.271629412 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:346:gst_audio_base_src_get_time:<testaudiogstsrc0>[00m processed samples: raw 18213741, delay 0, real 18213741, time 0:06:53.010000000
> Setting pipeline to READY ...
> 0:00:02.271672111 [335m32740[00m 0x7f38bc002990 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:266:audioringbuffer_thread_func:<testaudiogstsrc0>[00m signal wait
> 0:00:02.271697670 [335m32740[00m 0x7f38bc002990 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:268:audioringbuffer_thread_func:<testaudiogstsrc0>[00m wait for action
> 0:00:02.272299115 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:1136:gst_audio_base_src_change_state:<testaudiogstsrc0>[00m PAUSED->READY
> 0:00:02.272345195 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:1155:gst_audio_base_src_change_state:<testaudiogstsrc0>[00m PAUSED->READY
> 0:00:02.272353858 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:465:gst_audio_src_ring_buffer_stop:[00m reset...
> 0:00:02.272364619 [335m32740[00m 0x1b580c0 [36mINFO [00m [00m testaudio /home/ivan/src/testaudio_gstreamer/src/gst_testaudio.c:222:testaudio_gst_reset:<testaudiogstsrc0>[00m reset
> 0:00:02.272370065 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:467:gst_audio_src_ring_buffer_stop:[00m reset done
> 0:00:02.272543277 [335m32740[00m 0x7f38bc002990 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:270:audioringbuffer_thread_func:<testaudiogstsrc0>[00m got signal
> 0:00:02.272556627 [335m32740[00m 0x7f38bc002990 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:291:audioringbuffer_thread_func:[00m stop running, exit thread
> 0:00:02.272567306 [335m32740[00m 0x7f38bc002990 [37mDEBUG [00m [00m audiosrc gstaudiosrc.c:295:audioringbuffer_thread_func:<testaudiogstsrc0>[00m posting LEAVE stream status
> 0:00:02.272599482 [335m32740[00m 0x1b580c0 [36mINFO [00m [00m testaudio /home/ivan/src/testaudio_gstreamer/src/gst_testaudio.c:186:testaudio_gst_unprepare:<testaudiogstsrc0>[00m unprepare
> Setting pipeline to NULL ...
> 0:00:02.272768791 [335m32740[00m 0x1b580c0 [37mDEBUG [00m [00m audiobasesrc gstaudiobasesrc.c:1159:gst_audio_base_src_change_state:<testaudiogstsrc0>[00m READY->NULL
> Freeing pipeline ...
More information about the gstreamer-devel
mailing list