OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "media/mojo/services/mojo_decryptor_service.h" | 5 #include "media/mojo/services/mojo_decryptor_service.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/numerics/safe_conversions.h" | 10 #include "base/numerics/safe_conversions.h" |
11 #include "media/base/audio_decoder_config.h" | 11 #include "media/base/audio_decoder_config.h" |
12 #include "media/base/cdm_context.h" | 12 #include "media/base/cdm_context.h" |
13 #include "media/base/decoder_buffer.h" | 13 #include "media/base/decoder_buffer.h" |
14 #include "media/base/decryptor.h" | 14 #include "media/base/decryptor.h" |
15 #include "media/base/media_keys.h" | 15 #include "media/base/media_keys.h" |
16 #include "media/base/video_decoder_config.h" | 16 #include "media/base/video_decoder_config.h" |
17 #include "media/base/video_frame.h" | 17 #include "media/base/video_frame.h" |
18 #include "media/mojo/common/media_type_converters.h" | 18 #include "media/mojo/common/media_type_converters.h" |
19 #include "media/mojo/common/mojo_shared_buffer_video_frame.h" | 19 #include "media/mojo/common/mojo_shared_buffer_video_frame.h" |
20 #include "media/mojo/interfaces/demuxer_stream.mojom.h" | 20 #include "media/mojo/interfaces/demuxer_stream.mojom.h" |
21 | 21 |
22 namespace media { | 22 namespace media { |
23 | 23 |
24 MojoDecryptorService::MojoDecryptorService( | 24 MojoDecryptorService::MojoDecryptorService( |
25 const scoped_refptr<MediaKeys>& cdm, | 25 const scoped_refptr<MediaKeys>& cdm, |
26 mojo::InterfaceRequest<mojom::Decryptor> request, | 26 mojo::InterfaceRequest<mojom::Decryptor> request, |
27 const base::Closure& error_handler) | 27 const mojo::Closure& error_handler) |
28 : binding_(this, std::move(request)), cdm_(cdm), weak_factory_(this) { | 28 : binding_(this, std::move(request)), cdm_(cdm), weak_factory_(this) { |
29 DVLOG(1) << __FUNCTION__; | 29 DVLOG(1) << __FUNCTION__; |
30 decryptor_ = cdm->GetCdmContext()->GetDecryptor(); | 30 decryptor_ = cdm->GetCdmContext()->GetDecryptor(); |
31 DCHECK(decryptor_); | 31 DCHECK(decryptor_); |
32 weak_this_ = weak_factory_.GetWeakPtr(); | 32 weak_this_ = weak_factory_.GetWeakPtr(); |
33 binding_.set_connection_error_handler(error_handler); | 33 binding_.set_connection_error_handler(error_handler); |
34 } | 34 } |
35 | 35 |
36 MojoDecryptorService::~MojoDecryptorService() {} | 36 MojoDecryptorService::~MojoDecryptorService() {} |
37 | 37 |
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
230 DCHECK_GT(bytes_to_read, 0u); | 230 DCHECK_GT(bytes_to_read, 0u); |
231 uint32_t bytes_read = bytes_to_read; | 231 uint32_t bytes_read = bytes_to_read; |
232 CHECK_EQ(ReadDataRaw(consumer_handle_.get(), media_buffer->writable_data(), | 232 CHECK_EQ(ReadDataRaw(consumer_handle_.get(), media_buffer->writable_data(), |
233 &bytes_read, MOJO_READ_DATA_FLAG_ALL_OR_NONE), | 233 &bytes_read, MOJO_READ_DATA_FLAG_ALL_OR_NONE), |
234 MOJO_RESULT_OK); | 234 MOJO_RESULT_OK); |
235 CHECK_EQ(bytes_to_read, bytes_read); | 235 CHECK_EQ(bytes_to_read, bytes_read); |
236 return media_buffer; | 236 return media_buffer; |
237 } | 237 } |
238 | 238 |
239 } // namespace media | 239 } // namespace media |
OLD | NEW |