OLD | NEW |
---|---|
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 "content/browser/media/cdm/browser_cdm_manager.h" | 5 #include "content/browser/media/cdm/browser_cdm_manager.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/lazy_instance.h" | 10 #include "base/lazy_instance.h" |
(...skipping 328 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
339 scoped_ptr<NewSessionPromise> promise( | 339 scoped_ptr<NewSessionPromise> promise( |
340 new NewSessionPromise(this, render_frame_id, cdm_id, promise_id)); | 340 new NewSessionPromise(this, render_frame_id, cdm_id, promise_id)); |
341 | 341 |
342 if (init_data.size() > kMaxInitDataLength) { | 342 if (init_data.size() > kMaxInitDataLength) { |
343 LOG(WARNING) << "InitData for ID: " << cdm_id | 343 LOG(WARNING) << "InitData for ID: " << cdm_id |
344 << " too long: " << init_data.size(); | 344 << " too long: " << init_data.size(); |
345 promise->reject(MediaKeys::INVALID_ACCESS_ERROR, 0, "Init data too long."); | 345 promise->reject(MediaKeys::INVALID_ACCESS_ERROR, 0, "Init data too long."); |
346 return; | 346 return; |
347 } | 347 } |
348 | 348 |
349 media::EmeInitDataType eme_init_data_type = media::EME_INIT_DATA_TYPE_NONE; | 349 media::EmeInitDataType eme_init_data_type = media::EmeInitDataType::NONE; |
sandersd (OOO until July 31)
2015/03/23 21:27:30
I'm okay with not initializing to a value here, it
jrummell
2015/03/25 21:44:24
Done. We'll see if any compiler complains.
sandersd (OOO until July 31)
2015/03/25 22:01:28
If you're leaving UNKNOWN in then it's fine to ini
| |
350 switch (init_data_type) { | 350 switch (init_data_type) { |
351 case INIT_DATA_TYPE_WEBM: | 351 case INIT_DATA_TYPE_WEBM: |
352 eme_init_data_type = media::EME_INIT_DATA_TYPE_WEBM; | 352 eme_init_data_type = media::EmeInitDataType::WEBM; |
353 break; | 353 break; |
354 #if defined(USE_PROPRIETARY_CODECS) | 354 #if defined(USE_PROPRIETARY_CODECS) |
355 case INIT_DATA_TYPE_CENC: | 355 case INIT_DATA_TYPE_CENC: |
356 eme_init_data_type = media::EME_INIT_DATA_TYPE_CENC; | 356 eme_init_data_type = media::EmeInitDataType::CENC; |
357 break; | 357 break; |
358 #endif | 358 #endif |
359 default: | 359 default: |
360 NOTREACHED(); | 360 NOTREACHED(); |
361 promise->reject(MediaKeys::INVALID_ACCESS_ERROR, 0, | 361 promise->reject(MediaKeys::INVALID_ACCESS_ERROR, 0, |
362 "Invalid init data type."); | 362 "Invalid init data type."); |
363 return; | 363 return; |
364 } | 364 } |
365 | 365 |
366 BrowserCdm* cdm = GetCdm(render_frame_id, cdm_id); | 366 BrowserCdm* cdm = GetCdm(render_frame_id, cdm_id); |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
552 if (!cdm) { | 552 if (!cdm) { |
553 promise->reject(MediaKeys::INVALID_STATE_ERROR, 0, "CDM not found."); | 553 promise->reject(MediaKeys::INVALID_STATE_ERROR, 0, "CDM not found."); |
554 return; | 554 return; |
555 } | 555 } |
556 | 556 |
557 // TODO(ddorwin): Move this conversion to MediaDrmBridge when fixing | 557 // TODO(ddorwin): Move this conversion to MediaDrmBridge when fixing |
558 // crbug.com/417440. | 558 // crbug.com/417440. |
559 // "audio"/"video" does not matter, so use "video". | 559 // "audio"/"video" does not matter, so use "video". |
560 std::string init_data_type_string; | 560 std::string init_data_type_string; |
561 switch (init_data_type) { | 561 switch (init_data_type) { |
562 case media::EME_INIT_DATA_TYPE_WEBM: | 562 case media::EmeInitDataType::WEBM: |
563 init_data_type_string = "video/webm"; | 563 init_data_type_string = "video/webm"; |
564 break; | 564 break; |
565 #if defined(USE_PROPRIETARY_CODECS) | 565 #if defined(USE_PROPRIETARY_CODECS) |
566 case media::EME_INIT_DATA_TYPE_CENC: | 566 case media::EmeInitDataType::CENC: |
567 init_data_type_string = "video/mp4"; | 567 init_data_type_string = "video/mp4"; |
568 break; | 568 break; |
569 #endif | 569 #endif |
570 default: | 570 default: |
571 NOTREACHED(); | 571 NOTREACHED(); |
572 } | 572 } |
573 | 573 |
574 // Only the temporary session type is supported in browser CDM path. | 574 // Only the temporary session type is supported in browser CDM path. |
575 // TODO(xhwang): Add SessionType support if needed. | 575 // TODO(xhwang): Add SessionType support if needed. |
576 cdm->CreateSessionAndGenerateRequest(media::MediaKeys::TEMPORARY_SESSION, | 576 cdm->CreateSessionAndGenerateRequest(media::MediaKeys::TEMPORARY_SESSION, |
577 init_data_type_string, &init_data[0], | 577 init_data_type_string, &init_data[0], |
578 init_data.size(), promise.Pass()); | 578 init_data.size(), promise.Pass()); |
579 } | 579 } |
580 | 580 |
581 } // namespace content | 581 } // namespace content |
OLD | NEW |