tsdemux: Delayed linking failed

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

tsdemux: Delayed linking failed

quang_openstack
This post was updated on .
Hi everyone,
Today I try to test fdkaac gstreamer plugin with
Encoder
gst-launch-1.0 audiotestsrc ! audioconvert ! 'audio/x-raw, format=(string)S16LE, rate=(int)48000, channels=(int)2' ! fdkaacenc ! mpegtsmux ! udpsink host=$CLIENT_IP port=5000

Decoder
gst-launch-1.0 udpsrc port=5000 ! tsdemux ! fdkaacdec ! audioconvert ! alsasink device=aux_plug -e


But I got the the error on decoder side
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
WARNING: from element /GstPipeline:pipeline0/GstTSDemux:tsdemux0: Delayed linking failed.
Additional debug info:
./grammar.y(510): gst_parse_no_more_pads (): /GstPipeline:pipeline0/GstTSDemux:tsdemux0:
failed delayed linking some pad of GstTSDemux named tsdemux0 to some pad of GstFdkAacDec named fdkaacdec0
ERROR: from element /GstPipeline:pipeline0/GstUDPSrc:udpsrc0: Internal data stream error.
Additional debug info:
gstbasesrc.c(2939): gst_base_src_loop (): /GstPipeline:pipeline0/GstUDPSrc:udpsrc0:
streaming stopped, reason not-linked (-1)
EOS on shutdown enabled -- waiting for EOS after Error
Waiting for EOS...


Are there any body got the same problem? Or some one can give me some suggestion?
Thank in advance.
P.S.: I tested with faac and faad, it works normally but not fdkaac
Reply | Threaded
Open this post in threaded view
|

Re: tsdemux: Delayed linking failed

Tim Müller
On Tue, 2017-07-25 at 16:59 -0700, quang_openstack wrote:

Hi,

> *Decoder*
> gst-launch-1.0 udpsrc port=5000 ! tsdemux ! fdkaacdec ! ...
>

Try adding an aacparse before the decoder.

Cheers
 -Tim

--
Tim Müller, Centricular Ltd - http://www.centricular.com

Join us at the GStreamer Conference!
21-22 October 2017 in Prague, Czech Republic
http://gstreamer.freedesktop.org/conference/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: tsdemux: Delayed linking failed

quang_openstack
Hi Tim,
I try to add aacparse before the decoder, but I got the same error.
Do you have other suggestion?
Thank,
Quang
jmz
Reply | Threaded
Open this post in threaded view
|

Re: tsdemux: Delayed linking failed

jmz
In reply to this post by Tim Müller
Hi,

Tim Müller wrote
On Tue, 2017-07-25 at 16:59 -0700, quang_openstack wrote:
> *Decoder*
> gst-launch-1.0 udpsrc port=5000 ! tsdemux ! fdkaacdec ! ...
>

Try adding an aacparse before the decoder.
I got the similar error when converting M2TS file (H.264 + AAC) to MP4 file. The pipeline does not work:

  gst-launch-1.0 filesrc location=src.ts ! typefind ! tsdemux name=demux ! video/x-h264 ! queue ! h264parse ! mp4mux name=mux ! filesink location=sink.mp4 demux. ! audio/mpeg ! queue ! aacparse ! mux.

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
WARNING: from element /GstPipeline:pipeline0/GstTSDemux:demux: Delayed linking failed.
Additional debug info:
./grammar.y(506): gst_parse_no_more_pads (): /GstPipeline:pipeline0/GstTSDemux:demux:
failed delayed linking some pad of GstTSDemux named demux to some pad of GstQueue named queue1

I did use h264parse and aacparse in the pipeline, but a problem occurred when linking the audio pad of tsdemux to queue.

The M2TS-to-MP4 pipeline works when linking audio to fakesink:

  gst-launch-1.0 filesrc location=src.ts ! typefind ! tsdemux name=demux ! queue ! h264parse ! mp4mux name=mux ! filesink location=sink.mp4 demux. ! audio/mpeg ! queue ! aacparse ! fakesink

How can I fix the M2TS-to-MP4 pipeline? Is this related to https://bugzilla.gnome.org/show_bug.cgi?id=773357

Thank for help