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

Issue 1989893004: media: Use platform specific folders for CDMs (Closed)

Created:
4 years, 7 months ago by xhwang
Modified:
4 years, 7 months ago
CC:
chromium-reviews, msramek+watch_chromium.org, ihf+watch_chromium.org, yusukes+watch_chromium.org, eme-reviews_chromium.org, binji+watch_chromium.org, grt+watch_chromium.org, bradnelson+warch_chromium.org, raymes+watch_chromium.org, feature-media-reviews_chromium.org, teravest+watch_chromium.org, tzik, mcasas+watch+vc_chromium.org, wfh+watch_chromium.org, piman+watch_chromium.org, markusheintz_, Michael Moss, miu+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: Use platform specific folders for CDMs This is a reland of commit c8450e051cb3cc4705f698428ae42631aabe3672 with some major refactoring and fixes. * Purpose of this CL: To support bundled CDM using DefaultCompnentInstaller, the folder structure of bundled CDMs should be the same as component updated CDMs. For component CDMs, the folder structure is like: <DIR_USER_DATA>/WidevineCdm/<version>/_platform_specific/win_x64 For bundled CDM, the folder structure should be like: <DIR_COMPONENTS>/WidevineCdm/_platform_specific/win_x64 Note that the <version> folder is not needed in this case. * What this CL does: - Introduce cdm_paths.* to put CDMs in platform specific folders. On Win/Mac, we have something like WidevineCdm/_platform_specific/win_x64. On Linux/Cros, we don't use platform specific folders. - On Mac, strip_save_dsym doesn't work with targets with "product_dir" (in gyp build). So we build to the default output dir first, then copy it over to the platform specific folder. See http://crbug.com/611990 for more details. - Updated all tests to support platform specific folders. - Update installer files to bundle the CDM (adapter) in the right folder. TBR=gab@chromium.org BUG=582622 TEST=All tests pass. Tested on Mac and Linux. Committed: https://crrev.com/e13213d846ff7bdd794588b7efd152c3b5080a8d Cr-Commit-Position: refs/heads/master@{#395275}

Patch Set 1 #

Total comments: 28

Patch Set 2 : add "cdm_flags" target #

Patch Set 3 : ddorwin's comments #

Patch Set 4 : fix create_installer_archive.py #

Total comments: 21

Patch Set 5 : comments #

Patch Set 6 : specify both paths in chrome.release #

Total comments: 8
Unified diffs Side-by-side diffs Delta from patch set Stats (+498 lines, -98 lines) Patch
M chrome/BUILD.gn View 1 chunk +2 lines, -1 line 0 comments Download
M chrome/browser/BUILD.gn View 1 1 chunk +8 lines, -0 lines 0 comments Download
M chrome/browser/DEPS View 1 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/content_settings/content_settings_browsertest.cc View 1 chunk +4 lines, -4 lines 0 comments Download
M chrome/browser/load_library_perf_test.cc View 1 2 2 chunks +41 lines, -23 lines 0 comments Download
M chrome/browser/media/encrypted_media_browsertest.cc View 1 chunk +6 lines, -4 lines 0 comments Download
M chrome/browser/media/encrypted_media_supported_types_browsertest.cc View 3 chunks +7 lines, -4 lines 0 comments Download
M chrome/browser/media/pepper_cdm_test_helper.h View 3 chunks +7 lines, -2 lines 0 comments Download
M chrome/browser/media/pepper_cdm_test_helper.cc View 3 chunks +12 lines, -3 lines 0 comments Download
M chrome/browser_tests.isolate View 1 2 3 4 3 chunks +39 lines, -10 lines 0 comments Download
M chrome/chrome_dll_bundle.gypi View 2 chunks +3 lines, -2 lines 0 comments Download
M chrome/chrome_installer.gypi View 3 chunks +7 lines, -4 lines 0 comments Download
M chrome/chrome_tests.gypi View 1 2 chunks +3 lines, -5 lines 0 comments Download
M chrome/chrome_tests_unit.gypi View 1 1 chunk +9 lines, -0 lines 0 comments Download
M chrome/common/BUILD.gn View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M chrome/common/chrome_paths.cc View 3 chunks +4 lines, -1 line 0 comments Download
M chrome/common_constants.gyp View 1 1 chunk +1 line, -0 lines 0 comments Download
M chrome/installer/linux/BUILD.gn View 2 chunks +8 lines, -4 lines 2 comments Download
M chrome/installer/mini_installer/chrome.release View 1 2 3 4 5 1 chunk +5 lines, -1 line 2 comments Download
M chrome/test/BUILD.gn View 1 2 chunks +4 lines, -5 lines 0 comments Download
M chrome/tools/build/win/FILES.cfg View 1 chunk +7 lines, -1 line 4 comments Download
M media/BUILD.gn View 1 2 chunks +11 lines, -0 lines 0 comments Download
A media/cdm/cdm_paths.h View 1 2 3 4 1 chunk +24 lines, -0 lines 0 comments Download
A media/cdm/cdm_paths.cc View 1 2 3 4 1 chunk +68 lines, -0 lines 0 comments Download
M media/cdm/external_clear_key_test_helper.cc View 1 2 3 chunks +8 lines, -3 lines 0 comments Download
M media/cdm/ppapi/BUILD.gn View 3 chunks +4 lines, -0 lines 0 comments Download
A media/cdm/ppapi/cdm_paths.gni View 1 2 3 4 1 chunk +41 lines, -0 lines 0 comments Download
A media/cdm_paths.gypi View 1 2 3 4 1 chunk +58 lines, -0 lines 0 comments Download
M media/media.gyp View 1 2 chunks +20 lines, -0 lines 0 comments Download
M media/media_cdm.gypi View 5 chunks +36 lines, -5 lines 0 comments Download
M third_party/widevine/cdm/BUILD.gn View 5 chunks +10 lines, -4 lines 0 comments Download
M third_party/widevine/cdm/widevine_cdm.gyp View 4 chunks +36 lines, -12 lines 0 comments Download
M third_party/widevine/cdm/widevine_cdm_common.h View 1 chunk +3 lines, -0 lines 0 comments Download

Messages

Total messages: 40 (15 generated)
xhwang
I am still testing the changes in chrome/tools/build/win/create_installer_archive.py and chrome/installer/mini_installer/chrome.release on Windows. Otherwise this CL ...
4 years, 7 months ago (2016-05-18 22:59:38 UTC) #3
xhwang
gab: Please OWNERS review win installer changes, especially create_installer_archive.py and chrome.release changes. Note that the ...
4 years, 7 months ago (2016-05-18 23:52:23 UTC) #5
ddorwin
I did not review the cdm_paths files in detail (since they may move) nor the ...
4 years, 7 months ago (2016-05-19 00:04:27 UTC) #6
xhwang
As discussed offline, I am moving cdm_paths.h/cc to a separate target (cdm_paths) to avoid having ...
4 years, 7 months ago (2016-05-19 23:21:53 UTC) #7
xhwang
I addressed most comments. Still testing create_installer_archive.py on windows. https://chromiumcodereview.appspot.com/1989893004/diff/1/chrome/browser/DEPS File chrome/browser/DEPS (right): https://chromiumcodereview.appspot.com/1989893004/diff/1/chrome/browser/DEPS#newcode36 chrome/browser/DEPS:36: ...
4 years, 7 months ago (2016-05-20 00:22:36 UTC) #8
xhwang
I fixed create_installer_archive.py and now Windows is working. PTAL
4 years, 7 months ago (2016-05-20 00:52:48 UTC) #9
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1989893004/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1989893004/60001
4 years, 7 months ago (2016-05-20 04:03:53 UTC) #11
ddorwin
LGTM % nits. https://chromiumcodereview.appspot.com/1989893004/diff/60001/chrome/browser_tests.isolate File chrome/browser_tests.isolate (right): https://chromiumcodereview.appspot.com/1989893004/diff/60001/chrome/browser_tests.isolate#newcode202 chrome/browser_tests.isolate:202: ['OS=="mac" and branding=="Chrome" and enable_pepper_cdms==1 and ...
4 years, 7 months ago (2016-05-20 04:08:56 UTC) #12
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 7 months ago (2016-05-20 06:49:34 UTC) #15
xhwang
https://chromiumcodereview.appspot.com/1989893004/diff/60001/chrome/browser_tests.isolate File chrome/browser_tests.isolate (right): https://chromiumcodereview.appspot.com/1989893004/diff/60001/chrome/browser_tests.isolate#newcode202 chrome/browser_tests.isolate:202: ['OS=="mac" and branding=="Chrome" and enable_pepper_cdms==1 and target_arch=="x64"', { On ...
4 years, 7 months ago (2016-05-20 07:18:20 UTC) #16
xhwang
https://chromiumcodereview.appspot.com/1989893004/diff/60001/chrome/installer/mini_installer/chrome.release File chrome/installer/mini_installer/chrome.release (right): https://chromiumcodereview.appspot.com/1989893004/diff/60001/chrome/installer/mini_installer/chrome.release#newcode61 chrome/installer/mini_installer/chrome.release:61: WidevineCdm\_platform_specific\*\widevinecdmadapter.dll: %(VersionDir)s\WidevineCdm\_platform_specific\win_%(Arch)s\ On 2016/05/20 07:18:19, xhwang wrote: > On ...
4 years, 7 months ago (2016-05-20 07:20:25 UTC) #17
xhwang
gab / rsesek / thestig: Kindly ping. We are still considering merging this to M52. ...
4 years, 7 months ago (2016-05-20 16:44:41 UTC) #18
gab
A few comments, latest PS doesn't have create_installer_archive.py ? https://codereview.chromium.org/1989893004/diff/100001/chrome/installer/linux/BUILD.gn File chrome/installer/linux/BUILD.gn (right): https://codereview.chromium.org/1989893004/diff/100001/chrome/installer/linux/BUILD.gn#newcode1 chrome/installer/linux/BUILD.gn:1: ...
4 years, 7 months ago (2016-05-20 19:47:27 UTC) #19
xhwang
Comments only. Looking into mini_installer test now. https://codereview.chromium.org/1989893004/diff/100001/chrome/installer/linux/BUILD.gn File chrome/installer/linux/BUILD.gn (right): https://codereview.chromium.org/1989893004/diff/100001/chrome/installer/linux/BUILD.gn#newcode1 chrome/installer/linux/BUILD.gn:1: # Copyright ...
4 years, 7 months ago (2016-05-20 19:54:33 UTC) #20
Michael Moss
https://codereview.chromium.org/1989893004/diff/100001/chrome/tools/build/win/FILES.cfg File chrome/tools/build/win/FILES.cfg (right): https://codereview.chromium.org/1989893004/diff/100001/chrome/tools/build/win/FILES.cfg#newcode360 chrome/tools/build/win/FILES.cfg:360: 'buildtype': ['official'], On 2016/05/20 19:54:33, xhwang wrote: > On ...
4 years, 7 months ago (2016-05-20 20:01:02 UTC) #22
gab
https://codereview.chromium.org/1989893004/diff/100001/chrome/tools/build/win/FILES.cfg File chrome/tools/build/win/FILES.cfg (right): https://codereview.chromium.org/1989893004/diff/100001/chrome/tools/build/win/FILES.cfg#newcode360 chrome/tools/build/win/FILES.cfg:360: 'buildtype': ['official'], On 2016/05/20 19:54:33, xhwang wrote: > On ...
4 years, 7 months ago (2016-05-20 20:01:20 UTC) #24
Lei Zhang
lgtm
4 years, 7 months ago (2016-05-20 20:23:57 UTC) #25
xhwang
TBRing gab as discussed offline. Meanwhile I'll try to get test_installer working for widevine CDMs. ...
4 years, 7 months ago (2016-05-20 22:47:42 UTC) #27
xhwang
rsesek@: For your convenience, these are the three places that have mac specific code :) ...
4 years, 7 months ago (2016-05-21 00:48:09 UTC) #28
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1989893004/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1989893004/100001
4 years, 7 months ago (2016-05-22 05:03:49 UTC) #30
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 7 months ago (2016-05-22 06:14:45 UTC) #32
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1989893004/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1989893004/100001
4 years, 7 months ago (2016-05-22 13:39:14 UTC) #35
commit-bot: I haz the power
Committed patchset #6 (id:100001)
4 years, 7 months ago (2016-05-22 13:45:03 UTC) #37
commit-bot: I haz the power
Patchset 6 (id:??) landed as https://crrev.com/e13213d846ff7bdd794588b7efd152c3b5080a8d Cr-Commit-Position: refs/heads/master@{#395275}
4 years, 7 months ago (2016-05-22 13:46:47 UTC) #39
xhwang
4 years, 7 months ago (2016-05-22 14:29:26 UTC) #40
Message was sent while issue was closed.
A revert of this CL (patchset #6 id:100001) has been created in
https://chromiumcodereview.appspot.com/2001953002/ by xhwang@chromium.org.

The reason for reverting is: This is breaking the Mac bot. Apparently I need to
use the "copy" trick for clearkeycdm as well to avoid the strip_save_dsym issue.

https://build.chromium.org/p/chromium/waterfall?builder=Mac.

Powered by Google App Engine
This is Rietveld 408576698