Issue with the end of the pipeline using rtpopuspay
Jack
jack at rybn.org
Fri Jan 25 14:34:15 UTC 2019
I forgot my configuration :
Ubuntu 18.04
GStreamer 1.15.1
++
Jack
Le 25/01/2019 à 14:26, Jack a écrit :
> Hello,
>
> I have this pipeline working well now :
>
> gst-launch-1.0 -v filesrc location=17seconds48000D.wav ! wavparse !
> deinterleave name=d
> d.src_0 ! queue ! volume name="vol0" volume=0.5 ! audiopanorama
> name="pan0" panorama=-1 ! audio/x-raw,channels=2 ! deinterleave name=d0
> d.src_1 ! queue ! volume name="vol1" volume=0.5 ! audiopanorama
> name="pan1" panorama=-1 ! audio/x-raw,channels=2 ! deinterleave name=d1
> d0.src_0 ! queue ! mix0.
> d0.src_1 ! queue ! mix1.
> d1.src_0 ! queue ! mix0.
> d1.src_1 ! queue ! mix1.
> audiomixer name=mix0 ! i.sink_0
> audiomixer name=mix1 ! i.sink_1
> interleave name=i ! opusenc ! oggmux ! filesink location=output.ogg
>
>
> And this one failed :
>
> gst-launch-1.0 -v filesrc location=17seconds48000D.wav ! wavparse !
> deinterleave name=d
> d.src_0 ! queue ! volume name="vol0" volume=0.5 ! audiopanorama
> name="pan0" panorama=-1 ! audio/x-raw,channels=2 ! deinterleave name=d0
> d.src_1 ! queue ! volume name="vol1" volume=0.5 ! audiopanorama
> name="pan1" panorama=-1 ! audio/x-raw,channels=2 ! deinterleave name=d1
> d0.src_0 ! queue ! mix0.
> d0.src_1 ! queue ! mix1.
> d1.src_0 ! queue ! mix0.
> d1.src_1 ! queue ! mix1.
> audiomixer name=mix0 ! i.sink_0
> audiomixer name=mix1 ! i.sink_1
> interleave name=i ! opusenc ! rtpopuspay pt=96 ! fakesink
>
>
> As you can see, only the end of the pipeline change "rtpopuspay pt=96 !
> fakesink" instead of "oggmux ! filesink location=output.ogg".
>
> A recommandation to make the pipeline with rtpopuspay working ?
> ++
>
> Jack
>
> The sound file 17seconds48000D.wav :
> Input #0, wav, from '17seconds48000D.wav':
> Metadata:
> encoder : Lavf57.83.100
> Duration: 00:04:01.19, bitrate: 1536 kb/s
> Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz, 2
> channels, s16, 1536 kb/s
>
>
>
> Here the output of the erroneous pipeline with GST_DEBUG=3 in verbose mode :
>
> Setting pipeline to PAUSED ...
> 0:00:00.017085683 9634 0x7f3020002320 WARN basesrc
> gstbasesrc.c:3592:gst_base_src_start_complete:<filesrc0> pad not
> activated yet
> Pipeline is PREROLLING ...
> 0:00:00.017209175 9634 0x557628662770 FIXME default
> gstutils.c:3981:gst_pad_create_stream_id_internal:<wavparse0:src>
> Creating random stream-id, consider implementing a deterministic way of
> creating a stream-id
> /GstPipeline:pipeline0/GstWavParse:wavparse0.GstPad:src: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> channels=(int)2, channel-mask=(bitmask)0x0000000000000003, rate=(int)48000
> /GstPipeline:pipeline0/GstDeinterleave:d.GstPad:sink: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> channels=(int)2, channel-mask=(bitmask)0x0000000000000003, rate=(int)48000
> /GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstQueue:queue1.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstQueue:queue1.GstPad:src: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstVolume:vol1.GstPad:src: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstAudioPanorama:pan1.GstPad:src: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)2
> /GstPipeline:pipeline0/GstAudioPanorama:pan1.GstPad:src: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)2
> /GstPipeline:pipeline0/GstCapsFilter:capsfilter1.GstPad:src: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)2
> /GstPipeline:pipeline0/GstAudioPanorama:pan0.GstPad:src: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)2
> /GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)2
> /GstPipeline:pipeline0/GstDeinterleave:d1.GstPad:sink: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)2
> /GstPipeline:pipeline0/GstCapsFilter:capsfilter1.GstPad:sink: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)2
> /GstPipeline:pipeline0/GstAudioPanorama:pan1.GstPad:sink: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)1
> /GstPipeline:pipeline0/GstVolume:vol1.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstDeinterleave:d0.GstPad:sink: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)2
> /GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)2
> /GstPipeline:pipeline0/GstAudioPanorama:pan0.GstPad:sink: caps =
> audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)1
> /GstPipeline:pipeline0/GstVolume:vol0.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstQueue:queue4.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstQueue:queue4.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstQueue:queue2.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstQueue:queue2.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstAudioMixer:mix0.GstAudioMixerPad:sink_1: caps
> = audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)1
> /GstPipeline:pipeline0/GstQueue:queue5.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstQueue:queue5.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstAudioMixer:mix0.GstAudioMixerPad:sink_0: caps
> = audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)1
> /GstPipeline:pipeline0/GstQueue:queue3.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstQueue:queue3.GstPad:sink: caps = audio/x-raw,
> format=(string)S16LE, layout=(string)interleaved, rate=(int)48000,
> channels=(int)1
> /GstPipeline:pipeline0/GstAudioMixer:mix1.GstAudioMixerPad:sink_1: caps
> = audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)1
> /GstPipeline:pipeline0/GstAudioMixer:mix1.GstAudioMixerPad:sink_0: caps
> = audio/x-raw, format=(string)S16LE, layout=(string)interleaved,
> rate=(int)48000, channels=(int)1
> /GstPipeline:pipeline0/GstAudioMixer:mix1.GstAudioAggregatorConvertPad:src:
> caps = audio/x-raw, format=(string)S16LE, rate=(int)48000,
> channels=(int)1, layout=(string)interleaved
> /GstPipeline:pipeline0/GstAudioMixer:mix0.GstAudioAggregatorConvertPad:src:
> caps = audio/x-raw, format=(string)S16LE, rate=(int)48000,
> channels=(int)1, layout=(string)interleaved
> 0:00:00.024134607 9634 0x5576286b4850 WARN interleave
> interleave.c:316:gst_interleave_set_channel_positions:<i> Invalid
> channel positions, using NONE
> 0:00:00.024152059 9634 0x5576286b4850 FIXME basesink
> gstbasesink.c:3248:gst_base_sink_default_event:<fakesink0> stream-start
> event without group-id. Consider implementing group-id handling in the
> upstream elements
> /GstPipeline:pipeline0/GstInterleave:i.GstInterleavePad:sink_1: caps =
> audio/x-raw, format=(string)S16LE, rate=(int)48000, channels=(int)1,
> layout=(string)interleaved
> /GstPipeline:pipeline0/GstInterleave:i.GstPad:src: caps = audio/x-raw,
> format=(string)S16LE, rate=(int)48000, channels=(int)2,
> layout=(string)interleaved, channel-mask=(bitmask)0x0000000000000000
> /GstPipeline:pipeline0/GstOpusEnc:opusenc0.GstPad:sink: caps =
> audio/x-raw, format=(string)S16LE, rate=(int)48000, channels=(int)2,
> layout=(string)interleaved, channel-mask=(bitmask)0x0000000000000000
> /GstPipeline:pipeline0/GstInterleave:i.GstInterleavePad:sink_0: caps =
> audio/x-raw, format=(string)S16LE, rate=(int)48000, channels=(int)1,
> layout=(string)interleaved
> Redistribute latency...
> 0:00:00.024508119 9634 0x5576286b4850 WARN GST_PADS
> gstpad.c:4230:gst_pad_peer_query:<opusenc0:src> could not send sticky events
> /GstPipeline:pipeline0/GstOpusEnc:opusenc0.GstPad:src: caps =
> audio/x-opus, rate=(int)48000, channels=(int)2,
> channel-mapping-family=(int)255, stream-count=(int)2,
> coupled-count=(int)0, channel-mapping=(int)< 0, 1 >,
> streamheader=(buffer)< 4f707573486561640102380180bb00000000ff02000001,
> 4f707573546167731e000000456e636f6465642077697468204753747265616d6572206f707573656e630000000001
>>
> 0:00:00.024848868 9634 0x557628662770 WARN wavparse
> gstwavparse.c:2297:gst_wavparse_loop:<wavparse0> error: Internal data
> stream error.
> 0:00:00.024857880 9634 0x557628662770 WARN wavparse
> gstwavparse.c:2297:gst_wavparse_loop:<wavparse0> error: streaming
> stopped, reason not-negotiated (-4)
> 0:00:00.024883981 9634 0x557628662770 WARN queue
> gstqueue.c:988:gst_queue_handle_sink_event:<queue0> error: Internal data
> stream error.
> 0:00:00.024889814 9634 0x557628662770 WARN queue
> gstqueue.c:988:gst_queue_handle_sink_event:<queue0> error: streaming
> stopped, reason not-negotiated (-4)
> 0:00:00.024903241 9634 0x557628662770 WARN queue
> gstqueue.c:988:gst_queue_handle_sink_event:<queue1> error: Internal data
> stream error.
> 0:00:00.024907897 9634 0x557628662770 WARN queue
> gstqueue.c:988:gst_queue_handle_sink_event:<queue1> error: streaming
> stopped, reason not-negotiated (-4)
> ERROR: from element /GstPipeline:pipeline0/GstWavParse:wavparse0:
> Internal data stream error.
> Additional debug info:
> gstwavparse.c(2297): gst_wavparse_loop ():
> /GstPipeline:pipeline0/GstWavParse:wavparse0:
> streaming stopped, reason not-negotiated (-4)
> ERROR: pipeline doesn't want to preroll.
> Setting pipeline to NULL ...
> Freeing pipeline ...
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
More information about the gstreamer-devel
mailing list