Improve media track status notifications handling in media::RendererImpl |
||
Issue descriptionMedia track status notifications are processed asynchronously and currently media::RendererImpl simply ignores new incoming notifications if another notification is being processed. This is problematic is, for example, the media track is disabled and then immediately re-enabled. We need to postpone notification handling in media::RendererImpl to ensure cases like that are handled correctly.
,
Jan 11 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/bff54a249b1e7e9fddc1740d980c0bafacf10970 commit bff54a249b1e7e9fddc1740d980c0bafacf10970 Author: servolk <servolk@chromium.org> Date: Wed Jan 11 01:39:00 2017 Fix processing of multiple stream status changes by renderer Typically renderer needs to do Flush + StartPlaying in response to stream status change (i.e. when stream gets enabled or disabled). But since Flush is an async operation we might get another status change of the same stream, while the renderer is still handling the previous one. In the past renderer has simply ignored status changes while another status change was processed. But that was problematic, since we couldn't guarantee that the renderer status will be correct after stream has been enabled/disabled very quickly a few times. This CL fixes that issue by postponing status changes handling if necessary, instead of dropping those notifications. BUG= 678031 Review-Url: https://codereview.chromium.org/2605473002 Cr-Commit-Position: refs/heads/master@{#442762} [modify] https://crrev.com/bff54a249b1e7e9fddc1740d980c0bafacf10970/media/renderers/renderer_impl.cc [modify] https://crrev.com/bff54a249b1e7e9fddc1740d980c0bafacf10970/media/renderers/renderer_impl.h [modify] https://crrev.com/bff54a249b1e7e9fddc1740d980c0bafacf10970/media/renderers/renderer_impl_unittest.cc
,
Jan 11 2017
|
||
►
Sign in to add a comment |
||
Comment 1 by servolk@chromium.org
, Jan 3 2017Labels: OS-All