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 702422 - tsparse: Ensure initial events are sent in the right order
tsparse: Ensure initial events are sent in the right order
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
unspecified
Other All
: Normal normal
: 1.1.2
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-06-17 06:18 UTC by Edward Hervey
Modified: 2013-06-19 05:41 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
tsparse: Ensure initial events are sent in the right order (4.99 KB, patch)
2013-06-17 06:18 UTC, Edward Hervey
none Details | Review
tsparse: Ensure initial events are sent in the right order (4.82 KB, patch)
2013-06-17 06:20 UTC, Edward Hervey
accepted-commit_now Details | Review

Description Edward Hervey 2013-06-17 06:18:17 UTC
First send stream-start, then caps, then segment.

The segment we push is from upstream in push-mode. If we work in pull-mode
then we initialize the base segment to BYTES.
Comment 1 Edward Hervey 2013-06-17 06:18:19 UTC
Created attachment 246996 [details] [review]
tsparse: Ensure initial events are sent in the right order
Comment 2 Edward Hervey 2013-06-17 06:20:56 UTC
Created attachment 246997 [details] [review]
tsparse: Ensure initial events are sent in the right order

First send stream-start, then caps, then segment.

The segment we push is from upstream in push-mode. If we work in pull-mode
then we initialize the base segment to BYTES.
Comment 3 Nicolas Dufresne (ndufresne) 2013-06-17 15:30:05 UTC
Review of attachment 246997 [details] [review]:

Looks good to me, the SEGMENT_FORMAT/SEGMENT_ARGS could make it to core ?
Comment 4 Sebastian Dröge (slomo) 2013-06-18 11:28:05 UTC
You mean GST_SEGMENT_FORMAT from gstinfo.h? :)
Comment 5 Sebastian Dröge (slomo) 2013-06-18 11:29:27 UTC
Looks generally good to me, but does this ensure that new segment events are sent downstream if the upstream segment changed?
Comment 6 Sebastian Dröge (slomo) 2013-06-18 11:30:02 UTC
Comment on attachment 246997 [details] [review]
tsparse: Ensure initial events are sent in the right order

Please push after changing to GST_SEGMENT_FORMAT and ensuring that new upstream segments cause new downstream segments as appropriate
Comment 7 Edward Hervey 2013-06-18 13:56:03 UTC
incoming segments are always stored in mpegtsbase->segment and then passed on to tsdemux/tsparse push_event vmethod.

If it's the first segment event and we're not ready yet, we delay pushing that segment to later. Otherwise it's pushed along just fine.

I'll update to use GST_SEGMENT_FORMAT.
Comment 8 Edward Hervey 2013-06-19 05:41:15 UTC
commit e66d543f004a2d06a77f67fd4473918117f7a77b
Author: Edward Hervey <edward@collabora.com>
Date:   Mon Jun 17 08:15:54 2013 +0200

    tsparse: Ensure initial events are sent in the right order
    
    First send stream-start, then caps, then segment.
    
    The segment we push is from upstream in push-mode. If we work in pull-mode
    then we initialize the base segment to BYTES.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=702422