From a81f6a3fc05378faa0e944c6c13d9beece2dac94 Mon Sep 17 00:00:00 2001 From: hbos Date: Sun, 7 Feb 2016 15:05:22 -0800 Subject: [PATCH] Revert of Default build flag |rtc_use_h264| to |proprietary_codecs| if not on Android/iOS. (patchset #1 id:1 of https://codereview.webrtc.org/1674103002/ ) Reason for revert: Chromium FYI turns red. Original issue's description: > Default build flag |rtc_use_h264| to |proprietary_codecs| > if not on Android/iOS. > > This means proprietary_codecs=1 && ffmpeg_branding=Chrome > can be used to enable this H.264 enc/dec implementation > instead of rtc_use_h264=1 && ffmpeg_branding=Chrome. > This is used by both Chromium trybots (but not default > Chromium build) and offical Chrome build, meaning we will > be able to test and enable H.264 in chromium. > > This change would otherwise be enough to launch this > feature in Chrome, but because we do not want to do that > before we have chromium browser tests and are ready to flip > the switch, this CL prevents chromium from using H.264 just > yet: https://codereview.chromium.org/1641163002/ (landing > this after that CL). > > Note: This is a re-land of > https://codereview.webrtc.org/1660403004/. Reverting it > was not necessary. > > TBR=kjellander@webrtc.org > BUG=chromium:500605, chromium:468365 > > Committed: https://crrev.com/10b9dd7ab1a8c3f80b2d2924be658e43131a4fbe > Cr-Commit-Position: refs/heads/master@{#11517} TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:500605, chromium:468365 Review URL: https://codereview.webrtc.org/1675113002 Cr-Commit-Position: refs/heads/master@{#11518} --- webrtc/build/common.gypi | 24 ++++++++++-------------- webrtc/build/webrtc.gni | 13 ++++++------- 2 files changed, 16 insertions(+), 21 deletions(-) diff --git a/webrtc/build/common.gypi b/webrtc/build/common.gypi index 738333d660..3ce1b2fc57 100644 --- a/webrtc/build/common.gypi +++ b/webrtc/build/common.gypi @@ -138,21 +138,17 @@ # Enabling this may break interop with Android clients that support H264. 'use_objc_h264%': 0, - 'conditions': [ - # Enable this to build OpenH264 encoder/FFmpeg decoder. This is supported - # on all platforms except Android and iOS. Because FFmpeg can be built - # with/without H.264 support, |ffmpeg_branding| has to separately be set - # to a value that includes H.264, for example "Chrome". If FFmpeg is built - # without H.264, compilation succeeds but |H264DecoderImpl| fails to - # initialize. See also: |rtc_initialize_ffmpeg|. - # CHECK THE OPENH264, FFMPEG AND H.264 LICENSES/PATENTS BEFORE BUILDING. - # http://www.openh264.org, https://www.ffmpeg.org/ - ['proprietary_codecs==1 and OS!="android" and OS!="ios"', { - 'rtc_use_h264%': 1, - }, { - 'rtc_use_h264%': 0, - }], + # Enable this to build OpenH264 encoder/FFmpeg decoder. This is supported on + # all platforms except iOS. Because FFmpeg can be built with/without H.264 + # support, |ffmpeg_branding| has to separately be set to a value that + # includes H.264, for example "Chrome". If FFmpeg is built without H.264, + # compilation succeeds but |H264DecoderImpl| fails to initialize. + # See also: |rtc_initialize_ffmpeg|. + # CHECK THE OPENH264, FFMPEG AND H.264 LICENSES/PATENTS BEFORE BUILDING. + # http://www.openh264.org, https://www.ffmpeg.org/ + 'rtc_use_h264%': 0, + 'conditions': [ # FFmpeg must be initialized for |H264DecoderImpl| to work. This can be # done by WebRTC during |H264DecoderImpl::InitDecode| or externally. # FFmpeg must only be initialized once. Projects that initialize FFmpeg diff --git a/webrtc/build/webrtc.gni b/webrtc/build/webrtc.gni index 90ec934164..886b899543 100644 --- a/webrtc/build/webrtc.gni +++ b/webrtc/build/webrtc.gni @@ -7,7 +7,6 @@ # be found in the AUTHORS file in the root of the source tree. import("//build/config/arm.gni") -import("//build/config/features.gni") import("//build/config/mips.gni") import("//build_overrides/webrtc.gni") @@ -93,14 +92,14 @@ declare_args() { rtc_use_objc_h264 = false # Enable this to build OpenH264 encoder/FFmpeg decoder. This is supported on - # all platforms except Android and iOS. Because FFmpeg can be built - # with/without H.264 support, |ffmpeg_branding| has to separately be set to a - # value that includes H.264, for example "Chrome". If FFmpeg is built without - # H.264, compilation succeeds but |H264DecoderImpl| fails to initialize. See - # also: |rtc_initialize_ffmpeg|. + # all platforms except iOS. Because FFmpeg can be built with/without H.264 + # support, |ffmpeg_branding| has to separately be set to a value that + # includes H.264, for example "Chrome". If FFmpeg is built without H.264, + # compilation succeeds but |H264DecoderImpl| fails to initialize. + # See also: |rtc_initialize_ffmpeg|. # CHECK THE OPENH264, FFMPEG AND H.264 LICENSES/PATENTS BEFORE BUILDING. # http://www.openh264.org, https://www.ffmpeg.org/ - rtc_use_h264 = proprietary_codecs && !is_android && !is_ios + rtc_use_h264 = false # FFmpeg must be initialized for |H264DecoderImpl| to work. This can be done # by WebRTC during |H264DecoderImpl::InitDecode| or externally. FFmpeg must