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

Issue 1070853004: media: CdmFactory creates CDM (MediaKeys) asynchronously. (Closed)

Created:
5 years, 8 months ago by xhwang
Modified:
5 years, 8 months ago
Reviewers:
*ddorwin
CC:
chromium-reviews, mlamouri+watch-content_chromium.org, feature-media-reviews_chromium.org, posciak+watch_chromium.org, jam, mcasas+watch_chromium.org, eme-reviews_chromium.org, darin-cc_chromium.org, mkwst+moarreviews-renderer_chromium.org, wjia+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

media: CdmFactory creates CDM (MediaKeys) asynchronously. This CL fixes the EME stack down to CdmFactory. The real aync CDM creation will be fixed in a separate CL. For unprefixed EME, since it's promise based, async creation of CDM fits easily. For prefixed EME, GenerateKeyRequest() can be called multiple times without waiting for the real CDM to be created/loaded. ProxyDecryptor is modified to handle this case. BUG=469003 TEST=All existing tests pass. Committed: https://crrev.com/9bd8c733478345d0331fcdfd79e0bc61e22be68a Cr-Commit-Position: refs/heads/master@{#324942}

Patch Set 1 #

Patch Set 2 : rebase only #

Total comments: 14

Patch Set 3 : Fix Android. #

Patch Set 4 : comments addressed #

Total comments: 9

Patch Set 5 : rebase and comments addressed #

Patch Set 6 : use ScopedVector #

Unified diffs Side-by-side diffs Delta from patch set Stats (+361 lines, -242 lines) Patch
M content/renderer/media/android/webmediaplayer_android.h View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M content/renderer/media/android/webmediaplayer_android.cc View 1 2 2 chunks +34 lines, -33 lines 0 comments Download
M content/renderer/media/crypto/render_cdm_factory.h View 2 chunks +4 lines, -3 lines 0 comments Download
M content/renderer/media/crypto/render_cdm_factory.cc View 1 2 3 3 chunks +32 lines, -23 lines 0 comments Download
M media/base/cdm_factory.h View 2 chunks +7 lines, -2 lines 0 comments Download
M media/blink/cdm_session_adapter.h View 4 chunks +17 lines, -7 lines 0 comments Download
M media/blink/cdm_session_adapter.cc View 1 2 3 4 chunks +44 lines, -23 lines 0 comments Download
M media/blink/encrypted_media_player_support.h View 1 2 3 2 chunks +4 lines, -4 lines 0 comments Download
M media/blink/encrypted_media_player_support.cc View 1 2 2 chunks +19 lines, -30 lines 0 comments Download
M media/blink/webcontentdecryptionmodule_impl.h View 1 chunk +2 lines, -0 lines 0 comments Download
M media/blink/webcontentdecryptionmodule_impl.cc View 1 chunk +8 lines, -14 lines 0 comments Download
M media/blink/webmediaplayer_impl.h View 1 2 1 chunk +3 lines, -1 line 0 comments Download
M media/blink/webmediaplayer_impl.cc View 1 2 4 chunks +13 lines, -12 lines 0 comments Download
M media/cdm/default_cdm_factory.h View 1 chunk +10 lines, -10 lines 0 comments Download
M media/cdm/default_cdm_factory.cc View 1 2 3 3 chunks +16 lines, -10 lines 0 comments Download
M media/cdm/proxy_decryptor.h View 1 2 3 4 5 6 chunks +36 lines, -14 lines 0 comments Download
M media/cdm/proxy_decryptor.cc View 1 2 3 4 5 9 chunks +109 lines, -56 lines 0 comments Download

Messages

Total messages: 23 (8 generated)
xhwang
rebase only
5 years, 8 months ago (2015-04-09 00:37:55 UTC) #1
xhwang
rebase only
5 years, 8 months ago (2015-04-09 00:54:58 UTC) #3
xhwang
I still need to fix Android. But please take a look first to make sure ...
5 years, 8 months ago (2015-04-09 04:53:09 UTC) #6
ddorwin
Reviewed everything except proxy_decryptor. https://codereview.chromium.org/1070853004/diff/40001/content/renderer/media/crypto/render_cdm_factory.cc File content/renderer/media/crypto/render_cdm_factory.cc (right): https://codereview.chromium.org/1070853004/diff/40001/content/renderer/media/crypto/render_cdm_factory.cc#newcode59 content/renderer/media/crypto/render_cdm_factory.cc:59: FROM_HERE, base::Bind(cdm_created_cb, base::Passed(&cdm))); nit: Does ...
5 years, 8 months ago (2015-04-10 00:59:43 UTC) #7
xhwang
comments addressed
5 years, 8 months ago (2015-04-10 17:40:28 UTC) #8
xhwang
PTAL again. https://codereview.chromium.org/1070853004/diff/40001/content/renderer/media/crypto/render_cdm_factory.cc File content/renderer/media/crypto/render_cdm_factory.cc (right): https://codereview.chromium.org/1070853004/diff/40001/content/renderer/media/crypto/render_cdm_factory.cc#newcode59 content/renderer/media/crypto/render_cdm_factory.cc:59: FROM_HERE, base::Bind(cdm_created_cb, base::Passed(&cdm))); On 2015/04/10 00:59:43, ddorwin ...
5 years, 8 months ago (2015-04-10 17:41:17 UTC) #9
ddorwin
LGTM with comments. https://codereview.chromium.org/1070853004/diff/80001/media/cdm/proxy_decryptor.cc File media/cdm/proxy_decryptor.cc (right): https://codereview.chromium.org/1070853004/diff/80001/media/cdm/proxy_decryptor.cc#newcode121 media/cdm/proxy_decryptor.cc:121: DCHECK(media_keys_); Line 116 assumes it. Oh, ...
5 years, 8 months ago (2015-04-11 02:41:48 UTC) #10
xhwang
ddorwin: Let me know if you comments are addressed.... https://codereview.chromium.org/1070853004/diff/80001/media/cdm/proxy_decryptor.cc File media/cdm/proxy_decryptor.cc (right): https://codereview.chromium.org/1070853004/diff/80001/media/cdm/proxy_decryptor.cc#newcode121 media/cdm/proxy_decryptor.cc:121: ...
5 years, 8 months ago (2015-04-13 18:56:11 UTC) #11
ddorwin
lgtm
5 years, 8 months ago (2015-04-13 19:02:07 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1070853004/100001
5 years, 8 months ago (2015-04-13 19:04:33 UTC) #14
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_compile_dbg_32_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_compile_dbg_32_ng/builds/42357)
5 years, 8 months ago (2015-04-13 19:23:15 UTC) #16
xhwang
https://codereview.chromium.org/1070853004/diff/80001/media/cdm/proxy_decryptor.h File media/cdm/proxy_decryptor.h (right): https://codereview.chromium.org/1070853004/diff/80001/media/cdm/proxy_decryptor.h#newcode122 media/cdm/proxy_decryptor.h:122: EmeInitDataType init_data_type; On 2015/04/13 18:56:10, xhwang wrote: > On ...
5 years, 8 months ago (2015-04-13 20:46:20 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1070853004/140001
5 years, 8 months ago (2015-04-13 20:47:36 UTC) #21
commit-bot: I haz the power
Committed patchset #6 (id:140001)
5 years, 8 months ago (2015-04-13 23:28:03 UTC) #22
commit-bot: I haz the power
5 years, 8 months ago (2015-04-13 23:28:59 UTC) #23
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/9bd8c733478345d0331fcdfd79e0bc61e22be68a
Cr-Commit-Position: refs/heads/master@{#324942}

Powered by Google App Engine
This is Rietveld 408576698