On Tue Aug 15 09:32:08 2023 +0000, Nikolay Sivov wrote:
Surely this isn't enough for seek to work? Whole patch will only put objects in new state, and they will state in it?
Of course not. I just removed these FIXMEs as they're no longer necessary. The real state transition happens in the SESSION_STATE_STARTED case in session_start(), where all source and sink nodes will be put in the OBJ_STATE_SEEKING state and media session in the SESSION_STATE_STARTING_SOURCES state. Then when MESourceSeeked and MEStreamSeeked are received, set the corresponding node to OBJ_STATE_STARTED. And when all source nodes are in OBJ_STATE_STARTED, the presentation clock is re/started, and then the session state becomes SESSION_STATE_STARTING_SINKS. Finally, after a new MEStreamSinkStarted is received by the media session, the media session state becomes SESSION_STATE_STARTED and seeking is completed.