[Bug 753090] AVI/JPEG reverse playback: buffer sent before segment event after seek

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Sep 3 01:05:09 PDT 2015


https://bugzilla.gnome.org/show_bug.cgi?id=753090

--- Comment #16 from Myoungsun Lee <ohmygod0327 at gmail.com> ---
(In reply to Tim-Philipp Müller from comment #15)
> > Unfortunately, it can be happened by timing. Because demux pushed the buffer
> > as soon as it finished to send segment event.
> > But at the same time, the decoder is flushing. It means that decoder
> > received the buffer in the middle of handling flush event. Also decoder
> > receive the segment event.
> 
> This doesn't sound right.
> 
> The demuxer should send:
>  - FLUSH_START
>  - FLUSH_STOP (serialised)
>  - SEGMENT (serialised)
>  - BUFFER (serialised)
> 
> In what order does the decoder receive those events on its sink pad?
> 
> The decoder should never receive the buffer in the middle of handling the
> flush event, because FLUSH_STOP/SEGMENT/buffers are serialised and can't
> jump ahead of each other, and should be sent in that exact order.
> 
> So something still doesn't seem quite right.

"the middle of handling flush event" means that the decoder is resetting
segment values. It means the segment is not setting any values yet. 

I think that "not setting the segment" is same meaning of "not finishing
flush", even though it receive segment event.
Because the video sink receive the segment event but it do nothing, so I just
think it's caused by "flush event". -> The cause of doing nothing is just my
speculation.

It is can be misunderstood. :)

Anyway, I also curious about it and analyze the log again. 
The sequence is:
[In videodecoder]
- flush start. Line:1363
- flush stop. Line:1449
- receive segment. Line:1492
- receive buffer. Line:2492
- setting segment value. Line:2507

The decoder is not setting the segment value as soon as received segment event.
I have no idea about this, because the demux and decoder just push and parse
the stream. 
I attached the log also.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list