| Index: media/mojo/clients/mojo_video_decoder.cc
|
| diff --git a/media/mojo/clients/mojo_video_decoder.cc b/media/mojo/clients/mojo_video_decoder.cc
|
| index e462dcc60a6017433a74ac14c5aa0034ad7f8245..ff2279737425bf04b58df68237e51c37d51180d6 100644
|
| --- a/media/mojo/clients/mojo_video_decoder.cc
|
| +++ b/media/mojo/clients/mojo_video_decoder.cc
|
| @@ -9,6 +9,7 @@
|
| #include "base/callback_helpers.h"
|
| #include "base/location.h"
|
| #include "base/logging.h"
|
| +#include "base/memory/ref_counted.h"
|
| #include "base/single_thread_task_runner.h"
|
| #include "base/unguessable_token.h"
|
| #include "media/base/bind_to_current_loop.h"
|
| @@ -108,18 +109,17 @@ void MojoVideoDecoder::Decode(const scoped_refptr<DecoderBuffer>& buffer,
|
| }
|
|
|
| void MojoVideoDecoder::OnVideoFrameDecoded(
|
| - mojom::VideoFramePtr frame,
|
| + const scoped_refptr<VideoFrame>& frame,
|
| const base::Optional<base::UnguessableToken>& release_token) {
|
| DVLOG(2) << __func__;
|
| DCHECK(task_runner_->BelongsToCurrentThread());
|
|
|
| - scoped_refptr<VideoFrame> video_frame = frame.To<scoped_refptr<VideoFrame>>();
|
| if (release_token) {
|
| - video_frame->SetReleaseMailboxCB(
|
| + frame->SetReleaseMailboxCB(
|
| BindToCurrentLoop(base::Bind(&MojoVideoDecoder::OnReleaseMailbox,
|
| weak_this_, release_token.value())));
|
| }
|
| - output_cb_.Run(std::move(video_frame));
|
| + output_cb_.Run(frame);
|
| }
|
|
|
| void MojoVideoDecoder::OnReleaseMailbox(
|
|
|