mirror of
https://github.com/androidx/media.git
synced 2025-04-30 06:46:50 +08:00

DefaultMediaClock has currently two non-ideal behaviours: 1. One part of checking if it should use the renderer clock is checking whether the associated renderer finished reading its stream. This only makes sense if the renderer isn't already reading ahead into the next period. This can be solved by forwarding if we are reading ahead to the sync command. 2. When switching from stand-alone to renderer clock we assume they are exactly at the same position. This is true in theory, but in practise there may be small differences due to the different natures of these clocks. To prevent jumping backwards in time, we can temporarily stop the stand-alone clock and only switch once the renderer clock reached the same position. PiperOrigin-RevId: 260690468