Pipeline not working with gstreamer 1.14.4 or 1.15.1 but is ok with 1.8.3
Jack
jack at rybn.org
Tue Jan 22 23:53:27 UTC 2019
Need help...
I just try this pipeline, but it still fails with Gstreamer 1.15.1 (it
works perfectly with Gstreamer 1.8.3 !) :
### PIPELINE ################################################
multifilesrc name="source0" loop=true location=output.wav !
wavparse ignore-length=1 !
deinterleave name=d
d.src_0 ! volume name="vol0" volume=0.5 ! audiopanorama name="pan0"
panorama=0 ! audio/x-raw,channels=2 ! deinterleave name=d0
d.src_1 ! volume name="vol1" volume=0.5 ! audiopanorama name="pan1"
panorama=0 ! audio/x-raw,channels=2 ! deinterleave name=d1
audiomixer name=mix0 ! i.sink_0
audiomixer name=mix1 ! i.sink_1
d0.src_0 ! mix0.
d0.src_1 ! mix1.
d1.src_0 ! mix0.
d1.src_1 ! mix1.
interleave name=i !
opusenc frame-size=20 max-payload-size=4000 !
rtpopuspay pt=96 !
fakesink
### END PIPELINE ################################################
With GST_DEBUG=3 I get :
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
0:00:00.198717531 30503 0x55a787f7e940 WARN interleave
interleave.c:316:gst_interleave_set_channel_positions:<i> Invalid
channel positions, using NONE
0:00:00.198774934 30503 0x55a787f7e940 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
Redistribute latency...
0:00:00.199571368 30503 0x55a787f7e940 WARN GST_PADS
gstpad.c:4230:gst_pad_peer_query:<opusenc0:src> could not send sticky events
0:00:00.362518006 30503 0x55a787f7ea30 WARN basesrc
gstbasesrc.c:3064:gst_base_src_loop:<source0> error: Internal data
stream error.
0:00:00.362538938 30503 0x55a787f7ea30 WARN basesrc
gstbasesrc.c:3064:gst_base_src_loop:<source0> error: streaming stopped,
reason not-negotiated (-4)
ERROR: from element /GstPipeline:pipeline0/GstMultiFileSrc:source0:
Internal data stream error.
Additional debug info:
gstbasesrc.c(3064): gst_base_src_loop ():
/GstPipeline:pipeline0/GstMultiFileSrc:source0:
streaming stopped, reason not-negotiated (-4)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...
If i replace "rtpopuspay pt=96 ! fakesink" with "oggmux ! filesink
location=test.ogg", the pipeline is OK.
It also works if I remove :
"audiomixer name=mix1 ! i.sink_1"
"d0.src_1 ! mix1."
"d1.src_1 ! mix1."
I don't know what to try now, if someone has an idee ?
++
Jack
Le 22/01/2019 à 11:16, Jack a écrit :
> Hi Antoine !
>
> Weird, I just try two "smaller" pipelines with a small difference
> between them :
>
> ### PIPELINE 1 ################################################
> interleave name=i !
> opusenc frame-size=20 max-payload-size=4000 !
> rtpopuspay pt=96 !
> application/x-rtp,media=audio,encoding-name=OPUS,payload=96,clock-rate=48000
> !
> udpsink host=127.0.0.1 port=9999
>
> multifilesrc name="source0" loop=true
> location="localisation/bruxelles/sounds/output.wav" !
> wavparse ignore-length=1 !
> decodebin !
> deinterleave name=d
>
> d.src_0 ! audioconvert ! volume name="vol0" volume=0.5 ! audioconvert !
> audiopanorama name="pan0" panorama=0 ! audioconvert !
> audio/x-raw,channels=2 ! deinterleave name=d0
> d.src_1 ! audioconvert ! volume name="vol1" volume=0.5 ! audioconvert !
> audiopanorama name="pan1" panorama=0 ! audioconvert !
> audio/x-raw,channels=2 ! deinterleave name=d1
>
> d0.src_0 ! audiomixer name=mix0 ! i.sink_0
> d0.src_1 ! audiomixer name=mix1 ! i.sink_1
> ### END PIPELINE 1 ################################################
>
> ### PIPELINE 2 ################################################
> interleave name=i !
> opusenc frame-size=20 max-payload-size=4000 !
> rtpopuspay pt=96 !
> application/x-rtp,media=audio,encoding-name=OPUS,payload=96,clock-rate=48000
> !
> udpsink host=127.0.0.1 port=9999
>
> multifilesrc name="source0" loop=true
> location="localisation/bruxelles/sounds/output.wav" !
> wavparse ignore-length=1 !
> decodebin !
> deinterleave name=d
>
> d.src_0 ! audioconvert ! volume name="vol0" volume=0.5 ! audioconvert !
> audiopanorama name="pan0" panorama=0 ! audioconvert !
> audio/x-raw,channels=2 ! deinterleave name=d0
> d.src_1 ! audioconvert ! volume name="vol1" volume=0.5 ! audioconvert !
> audiopanorama name="pan1" panorama=0 ! audioconvert !
> audio/x-raw,channels=2 ! deinterleave name=d1
>
> d0.src_0 ! audiomixer name=mix0 ! i.sink_0
> ### END PIPELINE 2 ################################################
>
> The Pipeline 1 doesn't work and the pipeline 2 is OK.
> The only difference between then is the last line in the pipeline 1
> (which get the second channel of d0 and ) :
> d0.src_1 ! audiomixer name=mix1 ! i.sink_1
>
> Maybe that can help to solve this issue ?
>
> OTOH, I tried with "GST_DEBUG=audio*:7" and didn't get red lines, can I
> say that all is OK with audio ?
> ++
>
> Jack
>
>
>
> Le 21/01/2019 à 21:52, Antoine Villeret a écrit :
>> Hi Jack !
>>
>> could you try to reduce the pipeline to something shorter that
>> reproduces the issue ?
>> could you also set the GST_DEBUG environment variable to 6 or 7 to get
>> more info about what is wrong ?
>>
>> you could set it before starting you pipeline with something like :
>>
>> GST_DEBUG="7" gst-launch-1.0 ....
>>
>> level 7 is very verbose and you should filter message with something
>> like : GST_DEBUG=audio*:7 (or something else depending on where the
>> issue is, hence my first advice :-)).
>>
>> cheers
>>
>> antoine
>>
>> Le lun. 21 janv. 2019 à 19:27, Jack <jack at rybn.org
>> <mailto:jack at rybn.org>> a écrit :
>>
>> Hello !
>>
>> This is my first message on this list.
>> I woud like to congratuate the developer team for this nice stream
>> framework !
>>
>> Well, I have a problem with this pipeline with recent version of
>> gstreamer, here the pipeline :
>>
>> ### PIPELINE ################################################
>> interleave name=i !
>> opusenc frame-size=20 max-payload-size=4000 !
>> rtpopuspay pt=96 !
>> application/x-rtp,media=audio,encoding-name=OPUS,payload=96,clock-rate=48000
>> !
>> udpsink host=127.0.0.1 port=9999
>>
>> multifilesrc name="source0" loop=true
>> location="localisation/bruxelles/sounds/output.wav" !
>> wavparse ignore-length=1 !
>> decodebin ! deinterleave name=d
>>
>> d.src_0 ! audioconvert ! volume name="vol0" volume=0.5 ! audioconvert !
>> audiopanorama name="pan0" panorama=0 ! audioconvert !
>> audio/x-raw,channels=2 ! deinterleave name=d0
>> d.src_1 ! audioconvert ! volume name="vol1" volume=0.5 ! audioconvert !
>> audiopanorama name="pan1" panorama=0 ! audioconvert !
>> audio/x-raw,channels=2 ! deinterleave name=d1
>> d.src_2 ! audioconvert ! volume name="vol2" volume=0.5 ! audioconvert !
>> audiopanorama name="pan2" panorama=0 ! audioconvert !
>> audio/x-raw,channels=2 ! deinterleave name=d2
>> d.src_3 ! audioconvert ! volume name="vol3" volume=0.5 ! audioconvert !
>> audiopanorama name="pan3" panorama=0 ! audioconvert !
>> audio/x-raw,channels=2 ! deinterleave name=d3
>>
>> d0.src_0 ! audiomixer name=mix0 ! i.sink_0
>> d0.src_1 ! audiomixer name=mix1 ! i.sink_1
>> d1.src_0 ! mix0.
>> d1.src_1 ! mix1.
>> d2.src_0 ! mix0.
>> d2.src_1 ! mix1.
>> d3.src_0 ! mix0.
>> d3.src_1 ! mix1.
>> ### END PIPELINE ################################################
>>
>> with gstreamer 1.14.4 and 1.15.1, I get an error :
>> Setting pipeline to PAUSED ...
>> Pipeline is PREROLLING ...
>> Redistribute latency...
>> ERROR: from element /GstPipeline:pipeline0/GstMultiFileSrc:source0:
>> Internal data stream error.
>> Additional debug info:
>> gstbasesrc.c(3055): gst_base_src_loop ():
>> /GstPipeline:pipeline0/GstMultiFileSrc:source0:
>> streaming stopped, reason not-negotiated (-4)
>> ERROR: pipeline doesn't want to preroll.
>> Setting pipeline to NULL ...
>> Freeing pipeline ...
>>
>> But, with gstreamer 1.8.3, everything is ok :
>> Setting pipeline to PAUSED ...
>> Pipeline is PREROLLING ...
>> Redistribute latency...
>> Pipeline is PREROLLED ...
>> Setting pipeline to PLAYING ...
>> New clock: GstSystemClock
>>
>> any ideas how to solve this issue ?
>> Thanx.
>> ++
>>
>> Jack
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> <mailto:gstreamer-devel at lists.freedesktop.org>
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>
> _______________________________________________
> 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