decodebin3: force to pushing custom stream-start when no stream-start in input stream
This is timing issue and it could be observed as below scenario.
- parsebin0:src_0 is received EOS.
- It is marked to custom EOS and pushed it to multiqueue0:src_0.
- parsebin0:src_1 is received EOS and recognize ALL EOS state in multiqueue pre.
- It is pushed to multiqueue0:src_1 as regular EOS.
- Decodebin3 understand multiqueue pre and post are in ALL EOS when all drained.
- Decodebin3 try to send custom stream-start and final EOS to multiqueue all sinkpads.
In normal case, we could get stored stream-start event from parsebin0:srcpads. But we've got NULL stream-start event and it is rarely found. Therefore, final EOS is propataged without custom stream-start and it is just handled in multiqueue's sink_event and then final EOS is not delivered to multiqueue post (e.g multiqueue_src_probe).
To fallback this symptom, we make manually custom stream-start event and push before final EOS.