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

Issue 663988 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: May 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocked on:
issue 663983



Sign in to add a comment

Remove DecoderStream::previous_decoder_

Project Member Reported by w...@chromium.org, Nov 10 2016

Issue description

This is an ugly hack I added a long time ago because destructing usually VDAs unbacks their VideoFrame textures. We can remove it when all VDAs can output VideoFrames that live longer than themselves.
 

Comment 1 by w...@chromium.org, Apr 24 2017

Cc: dalecur...@chromium.org posciak@chromium.org sande...@chromium.org
VTVDA and DXVA now both output frames that outlive themselves. The only remaining VDA I'm not sure about is the ChromeOS one and I can't easily test it.  dalecurtis@, posciak@ do you know?
Since we've enabled suspend on all platforms I think we can remove this now.
(along with DECODER_OWNS_FRAME metadata)

Comment 4 by w...@chromium.org, Apr 24 2017

Perfect, will remove!
Project Member

Comment 5 by bugdroid1@chromium.org, Apr 25 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d16bb3ef495de7c6bdeb57d44c5353273becdcda

commit d16bb3ef495de7c6bdeb57d44c5353273becdcda
Author: watk <watk@chromium.org>
Date: Tue Apr 25 01:18:31 2017

media: Discard the previous decoder immediately on fallback

Previously, after falling back to another decoder, we had to keep the
old one alive in case it owned frames that were currently being
displayed.

Now all decoders produce frames that outlive themselves, so we can
safely delete the decoder as soon as we no longer need it.

This change also includes deletion of a related, but now unused,
VideoFrame metadata value called DECODER_OWNS_FRAME.

BUG= 663988 

Review-Url: https://codereview.chromium.org/2841553003
Cr-Commit-Position: refs/heads/master@{#466854}

[modify] https://crrev.com/d16bb3ef495de7c6bdeb57d44c5353273becdcda/media/base/video_frame_metadata.h
[modify] https://crrev.com/d16bb3ef495de7c6bdeb57d44c5353273becdcda/media/blink/webmediaplayer_impl.cc
[modify] https://crrev.com/d16bb3ef495de7c6bdeb57d44c5353273becdcda/media/filters/decoder_stream.cc
[modify] https://crrev.com/d16bb3ef495de7c6bdeb57d44c5353273becdcda/media/filters/decoder_stream.h
[modify] https://crrev.com/d16bb3ef495de7c6bdeb57d44c5353273becdcda/media/filters/gpu_video_decoder.cc
[modify] https://crrev.com/d16bb3ef495de7c6bdeb57d44c5353273becdcda/media/filters/video_frame_stream_unittest.cc
[modify] https://crrev.com/d16bb3ef495de7c6bdeb57d44c5353273becdcda/media/renderers/video_overlay_factory.cc

Comment 6 by w...@chromium.org, May 4 2017

Status: Fixed (was: Available)

Sign in to add a comment