From: Nikolay Dimitrov <picmaster@mail.bg>
To: Marco Trillo <martri@arantia.com>
Cc: "meta-freescale@yoctoproject.org" <meta-freescale@yoctoproject.org>
Subject: Re: [dizzy] Choppy gstreamer video (MPEG TS over UDP)
Date: Wed, 19 Nov 2014 23:45:53 +0200 [thread overview]
Message-ID: <546D0F91.5050204@mail.bg> (raw)
In-Reply-To: <546C4860.2040605@arantia.com>
Hi Marco,
On 11/19/2014 09:36 AM, Marco Trillo wrote:
> Hi,
>
> On 11/18/2014 04:06 PM, Nikolay Dimitrov wrote:
>>> That way you can configure your elements individually. In particular, we
>>> found that setting the `low-latency' property to true in `vpudec' and
>>> the `qos' property to false in `aiurdemux' provided better results.
>>
>> "low-latency" definitely lowers the time to display 1st frame (< 1s),
>> but need to test whether it affects long-term stability. Hope to be
>> able to test soon "qos" property.
>
> One small correction: the `qos' property belongs to the video sink (we
> are using `mfw_v4lsink'), not to `aiurdemux' as I said in my first
> e-mail...
Thanks for the clarification.
> Regarding the time-to-first-frame you mention, we are also running in a
> big show-stopper issue with `aiurdemux': depending on the number of PIDs
> present in the program table -- for example if the program contains
> subtitles or multiple audio streams --, the demuxer takes a long, long
> time to provide the pads. Only in relatively simple programs (one audio
> and one video PID) the demuxer seems to behave right.
Well, I actually ditched aiurdemux and started using the latest
Fluendo's MPEG TS demuxer. I can't say with confidence that it's the
best solution, but at least it allows me to go forward.
I personally think that the amount of available programs and elementary
streams in the MPEG TS is not an issue at all. The PAT is transmitted
regularly (at most on 140ms), in order to reduce the "time to 1st
acquisition". Also PMTs are sent regularly. The problem is actually how
the control packets trigger the additional demuxer logic.
For example, I noticed is that the Fluendo MPEG TS demuxer rely for
some reason on the regular update of PAT/PMT/CAT tables with the
current_next_indicator bit. The streams I have access to doesn't update
this bit regularly (if at all), that's why the demuxer waits
practically for inifinity before demuxing packets. What I did as an
experiment was to force the parsing of PAT/PMT/CAT table disregarding
this update bit, and suddenly the demuxer started to work quickly.
> It is quite possible this is not an issue for you if you control the
> source stream. In any case, more information is available at:
> <https://community.freescale.com/thread/324048>
Thanks, this was definitely useful info, and a very good remark -
mapping tables just describe relations between children and parent
logical streams, but packets of the actual streams (including PMT) can
start to arrive much later, so the demuxer should always work with
whatever is available *now*, not after 15min when the user is dead from
boredom :D.
In the end, I still have issues with the Gstreamer pipeline stability
with network streams - it sometimes freezes either for a while (1-3s),
or fully, begging for Ctrl-C. I plan to look at whether some of the
pipeline elements are mutually blocking each other, causing a deadlock.
Kind regards,
Nikolay
PS: Please forgive me if someone feels this is going too off-topic.
prev parent reply other threads:[~2014-11-19 21:46 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-14 18:46 [dizzy] Choppy gstreamer video (MPEG TS over UDP) Nikolay Dimitrov
2014-11-14 20:25 ` Daiane Angolini
2014-11-15 23:02 ` Nikolay Dimitrov
2014-11-16 18:29 ` Daiane Angolini
2014-11-18 11:01 ` Marco Trillo
2014-11-18 15:06 ` Nikolay Dimitrov
2014-11-19 7:36 ` Marco Trillo
2014-11-19 21:45 ` Nikolay Dimitrov [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=546D0F91.5050204@mail.bg \
--to=picmaster@mail.bg \
--cc=martri@arantia.com \
--cc=meta-freescale@yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.