Hello all, I am troubleshooting an issue with what is probably a fairly basic audio pipeline: a constant audiotestsrc input, plus some additional inputs that come and go from the pipeline, fed through an audiomixer,
then tee'd to various outputs. By default the audiotestsrc is set to wave form "silence" (and volume=0) and is mainly present to keep the pipeline in playing state when there are no other inputs attached. I find that when I attach a filesrc,
the resulting audio is often not correct (sounds clipped ... verified by recording the output). However, if I set the audiotestsrc to, say, wave form 0 (sine) (and a non-0 volume), I no longer have any issues. Enabling debug with audioaggregator:6, and setting wave=4 (or volume=0), I see (possibly?) every buffer being marked/detected as a "GAP buffer". Is this expected behavior? The following pipeline reproduces this: GST_DEBUG=audioaggregator:6 gst-launch-1.0 audiotestsrc is-live=true do-timestamp=true volume=0 freq=100 ! audiomixer name=mix ! audioconvert ! alsasink Am I chasing the wrong thing here? _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
OK, so I missed this part in gstaudiotestsrc.c ... if (G_UNLIKELY ((src->wave == GST_AUDIO_TEST_SRC_WAVE_SILENCE) || (src->volume == 0.0))) { GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_GAP); } So that explains the GAP buffers. But I'm still confused why I encounter problems. I created a small test tone using audacity (DTMF 1, 48000Hz, 50milliseconds). This pipeline works fine every time: gst-launch-1.0 audiotestsrc do-timestamp=true is-live=true volume=0.01 freq=1000 ! audiomixer name=mix ! audioconvert ! audio/x-raw,channels=1,sample-rate=48000,format=S16LE ! queue ! alsasink filesrc location=/root/audacity_dtmf_1.wav
blocksize=960 do-timestamp=true ! rawaudioparse pcm-format=s16le sample-rate=48000 num-channels=1 ! mix. Start the above, and ctrl-c once you've heard the dtmf tone play. Repeat several times. This pipeline occassionally has audio glitches in the dtmf tone, or sometimes doesn't even play the dtmf tone: gst-launch-1.0 audiotestsrc do-timestamp=true is-live=true volume=0 freq=1000 ! audiomixer name=mix ! audioconvert ! audio/x-raw,channels=1,sample-rate=48000,format=S16LE ! queue ! alsasink filesrc location=/root/audacity_dtmf_1.wav
blocksize=960 do-timestamp=true ! rawaudioparse pcm-format=s16le sample-rate=48000 num-channels=1 ! mix. I feel like I must be missing something, or I'm just misunderstanding some basic concept. _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |