GNOME Bugzilla – Bug 706508
video: respect the event seqnum forwading the ForceKeyUnit events
Last modified: 2013-08-21 17:18:24 UTC
Downstream elements might rely in the event seqnum to determine if it's same event they have forwarded downstream
Created attachment 252610 [details] [review] video: respect the event seqnum forwading the ForceKeyUnit events
(In reply to comment #0) > Downstream elements might rely in the event seqnum to determine > if it's same event they have forwarded downstream This should be read: "forwarded upstream"
It should be the same sequence number as the one of the last seek. All events after a seek should have the sequence number of that seek event, nothing else. What are you trying to do here?
The sequence number is different for each event created in the sink and pushed upstream with gst_video_event_new_upstream_force_key_unit. I just need a way to determine whether an event is the same when going back downstream to know if it's a duplicate. The scenario is the following: x264enc ! mp4dashmux ! dashsink name=sink lamemp3enc ! mp4dashmux ! sink. The sink sends a unique event upstream for each new fragment. In the case of the h264 encoder, the event is collected in the encoder and forwarded downstream, so the muxer sees 2 event, the upstream one and the downstream one. In the case of the audio encoder, the encoder does not forward back the upstream event, so we only have one event queued in the muxer, the upstream one. Because audio encoders does not forward GstForceKeyUnit events downstream, we can't rely only in downstream events in the muxer. And when there is a video encoder, the event is forwarded downstream so I just need a way to know is the same event (same segnum) to treat it as a duplicate.
I think that's what the count field of the event is intended for: > count : integer that can be used to number key units
(In reply to comment #5) > I think that's what the count field of the event is intended for: > > > count : integer that can be used to number key units Indeed, I am really stupid :)