New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 678031 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Jan 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug



Sign in to add a comment

Improve media track status notifications handling in media::RendererImpl

Project Member Reported by servolk@chromium.org, Jan 3 2017

Issue description

Media 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.
 
Components: Internals>Media>Track
Labels: OS-All
Project Member

Comment 2 by bugdroid1@chromium.org, 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

Status: Fixed (was: Started)

Sign in to add a comment