After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 652995 - legacyh264parse wrong access-unit output
legacyh264parse wrong access-unit output
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other Linux
: Normal normal
: 0.10.23
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-06-20 11:08 UTC by Levente Farkas
Modified: 2011-06-21 11:31 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
the dot file of the pipeline (66.55 KB, image/png)
2011-06-20 12:01 UTC, Levente Farkas
Details
the new pipeline (93.28 KB, image/png)
2011-06-20 13:04 UTC, Levente Farkas
Details

Description Levente Farkas 2011-06-20 11:08:26 UTC
if you run the following pipeline (and eg generate dot file to examine the pipeline) then after the 2nd legacyh264parse the caps (stream type) still remain "access-unit true". so it seems the conversion from access-unit=true to access-unit=false do not working.

gst-launch videotestsrc ! x264enc ! legacyh264parse access-unit=true output-format=0  ! legacyh264parse access-unit=false output-format=1 ! fakesink
Comment 1 Mark Nauwelaerts 2011-06-20 11:31:06 UTC
Try adding split-packetized=true.
Comment 2 Levente Farkas 2011-06-20 11:59:55 UTC
why did you close it?
still not working:-(
Comment 3 Levente Farkas 2011-06-20 12:01:05 UTC
Created attachment 190264 [details]
the dot file of the pipeline

i'm just attached the png of the pipeline to be clear.
Comment 4 Mark Nauwelaerts 2011-06-20 12:46:56 UTC
This time around you added split-packetized=true to the second parser, but you dropped the access-unit=false bit.  Suffice it to say both need to be specified.
Comment 5 Levente Farkas 2011-06-20 13:03:27 UTC
could you please test it!
we DO add it and on the picture it's still not shown (and also not set). this is the bug what we try to report!:-)
GST_DEBUG_DUMP_DOT_DIR=/tmp gst-launch videotestsrc ! x264enc ! legacyh264parse access-unit=true output-format=0  ! legacyh264parse split-packetized=true access-unit=false output-format=1 ! fakesink
Comment 6 Levente Farkas 2011-06-20 13:04:14 UTC
Created attachment 190267 [details]
the new pipeline
Comment 7 Mark Nauwelaerts 2011-06-21 10:58:07 UTC
Commit below fixes some of this.  That is, using a *single* 
legacyh264parse output-format=1 access-unit=false split-packetized=true 
should now lead to the proper output caps.

However, using an instance
legacyh264parse output-format=1 access-unit=true
will kind of mess up avc input.  IIRC it should not mess up when using output-format=2 (so respecting the input format, which is known to be avc in this particular case, rather than forcing the output format).  This is all a bit messy and falls under the (IMO) "use at your own risk" disclaimer which is basically only really fixed and addressed in the newer h264parse (and so out-of-fixing-scope for the legacy one).



commit d631e1b34803eaaed2eee6f5452a0b1c2676fd88
Author: Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
Date:   Tue Jun 21 12:45:31 2011 +0200

    legacyh264parse: fix output caps alignment for avc input
    
    ... particularly when splitting packetized input.
    
    Fixes #652995.
Comment 8 Levente Farkas 2011-06-21 11:31:46 UTC
so i've got only 2 questions:
- if i set access-unit=false in legacyh264parse why not set split-packetized=true automatically?

- we need h264 byte-stream without au (ie: access-unit=false output-format=1). is there any other way then legacyh264parse which can produce this output? the new h264parse do NOT have such feature (or at least we can't find).

anyway what does the "parsed: false/true" means in the new h264parse?