Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(139)

Side by Side Diff: chromecast/media/cma/ipc_streamer/coded_frame_provider_host.cc

Issue 1553503002: Convert Pass()→std::move() in //chromecast (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chromecast/media/cma/ipc_streamer/coded_frame_provider_host.h" 5 #include "chromecast/media/cma/ipc_streamer/coded_frame_provider_host.h"
6 6
7 #include <utility>
8
7 #include "base/bind.h" 9 #include "base/bind.h"
8 #include "base/callback_helpers.h" 10 #include "base/callback_helpers.h"
9 #include "chromecast/media/cma/base/decoder_buffer_base.h" 11 #include "chromecast/media/cma/base/decoder_buffer_base.h"
10 #include "chromecast/media/cma/ipc/media_message.h" 12 #include "chromecast/media/cma/ipc/media_message.h"
11 #include "chromecast/media/cma/ipc/media_message_fifo.h" 13 #include "chromecast/media/cma/ipc/media_message_fifo.h"
12 #include "chromecast/media/cma/ipc/media_message_type.h" 14 #include "chromecast/media/cma/ipc/media_message_type.h"
13 #include "chromecast/media/cma/ipc_streamer/audio_decoder_config_marshaller.h" 15 #include "chromecast/media/cma/ipc_streamer/audio_decoder_config_marshaller.h"
14 #include "chromecast/media/cma/ipc_streamer/decoder_buffer_base_marshaller.h" 16 #include "chromecast/media/cma/ipc_streamer/decoder_buffer_base_marshaller.h"
15 #include "chromecast/media/cma/ipc_streamer/video_decoder_config_marshaller.h" 17 #include "chromecast/media/cma/ipc_streamer/video_decoder_config_marshaller.h"
16 #include "media/base/decrypt_config.h" 18 #include "media/base/decrypt_config.h"
17 19
18 namespace chromecast { 20 namespace chromecast {
19 namespace media { 21 namespace media {
20 22
21 CodedFrameProviderHost::CodedFrameProviderHost( 23 CodedFrameProviderHost::CodedFrameProviderHost(
22 scoped_ptr<MediaMessageFifo> media_message_fifo) 24 scoped_ptr<MediaMessageFifo> media_message_fifo)
23 : fifo_(media_message_fifo.Pass()), 25 : fifo_(std::move(media_message_fifo)), weak_factory_(this) {
24 weak_factory_(this) {
25 weak_this_ = weak_factory_.GetWeakPtr(); 26 weak_this_ = weak_factory_.GetWeakPtr();
26 thread_checker_.DetachFromThread(); 27 thread_checker_.DetachFromThread();
27 } 28 }
28 29
29 CodedFrameProviderHost::~CodedFrameProviderHost() { 30 CodedFrameProviderHost::~CodedFrameProviderHost() {
30 DCHECK(thread_checker_.CalledOnValidThread()); 31 DCHECK(thread_checker_.CalledOnValidThread());
31 } 32 }
32 33
33 void CodedFrameProviderHost::Read(const ReadCB& read_cb) { 34 void CodedFrameProviderHost::Read(const ReadCB& read_cb) {
34 DCHECK(thread_checker_.CalledOnValidThread()); 35 DCHECK(thread_checker_.CalledOnValidThread());
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 break; 68 break;
68 69
69 if (msg->type() == PaddingMediaMsg) { 70 if (msg->type() == PaddingMediaMsg) {
70 // Ignore the message. 71 // Ignore the message.
71 } else if (msg->type() == AudioConfigMediaMsg) { 72 } else if (msg->type() == AudioConfigMediaMsg) {
72 audio_config_ = AudioDecoderConfigMarshaller::Read(msg.get()); 73 audio_config_ = AudioDecoderConfigMarshaller::Read(msg.get());
73 } else if (msg->type() == VideoConfigMediaMsg) { 74 } else if (msg->type() == VideoConfigMediaMsg) {
74 video_config_ = VideoDecoderConfigMarshaller::Read(msg.get()); 75 video_config_ = VideoDecoderConfigMarshaller::Read(msg.get());
75 } else if (msg->type() == FrameMediaMsg) { 76 } else if (msg->type() == FrameMediaMsg) {
76 scoped_refptr<DecoderBufferBase> buffer = 77 scoped_refptr<DecoderBufferBase> buffer =
77 DecoderBufferBaseMarshaller::Read(msg.Pass()); 78 DecoderBufferBaseMarshaller::Read(std::move(msg));
78 base::ResetAndReturn(&read_cb_).Run( 79 base::ResetAndReturn(&read_cb_).Run(
79 buffer, audio_config_, video_config_); 80 buffer, audio_config_, video_config_);
80 audio_config_ = ::media::AudioDecoderConfig(); 81 audio_config_ = ::media::AudioDecoderConfig();
81 video_config_ = ::media::VideoDecoderConfig(); 82 video_config_ = ::media::VideoDecoderConfig();
82 } else { 83 } else {
83 // Receiving an unexpected message. 84 // Receiving an unexpected message.
84 // Possible use case (except software bugs): the renderer process has 85 // Possible use case (except software bugs): the renderer process has
85 // been compromised and an invalid message value has been written to 86 // been compromised and an invalid message value has been written to
86 // the fifo. Crash the browser process in this case to avoid further 87 // the fifo. Crash the browser process in this case to avoid further
87 // security implications (so do not use NOTREACHED which crashes only 88 // security implications (so do not use NOTREACHED which crashes only
88 // in debug builds). 89 // in debug builds).
89 LOG(FATAL) << "Unknown media message"; 90 LOG(FATAL) << "Unknown media message";
90 } 91 }
91 } 92 }
92 } 93 }
93 94
94 } // namespace media 95 } // namespace media
95 } // namespace chromecast 96 } // namespace chromecast
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698