OLD | NEW |
1 # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 1 # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. |
2 # | 2 # |
3 # Use of this source code is governed by a BSD-style license | 3 # Use of this source code is governed by a BSD-style license |
4 # that can be found in the LICENSE file in the root of the source | 4 # that can be found in the LICENSE file in the root of the source |
5 # tree. An additional intellectual property rights grant can be found | 5 # tree. An additional intellectual property rights grant can be found |
6 # in the file PATENTS. All contributing project authors may | 6 # in the file PATENTS. All contributing project authors may |
7 # be found in the AUTHORS file in the root of the source tree. | 7 # be found in the AUTHORS file in the root of the source tree. |
8 | 8 |
9 # This file contains common settings for building WebRTC components. | 9 # This file contains common settings for building WebRTC components. |
10 | 10 |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
113 | 113 |
114 # Defer ssl perference to that specified through sslconfig.h instead of | 114 # Defer ssl perference to that specified through sslconfig.h instead of |
115 # choosing openssl or nss directly. In practice, this can be used to | 115 # choosing openssl or nss directly. In practice, this can be used to |
116 # enable schannel on windows. | 116 # enable schannel on windows. |
117 'use_legacy_ssl_defaults%': 0, | 117 'use_legacy_ssl_defaults%': 0, |
118 | 118 |
119 # Determines whether NEON code will be built. | 119 # Determines whether NEON code will be built. |
120 'build_with_neon%': 0, | 120 'build_with_neon%': 0, |
121 | 121 |
122 # Enable this to use HW H.264 encoder/decoder on iOS/Mac PeerConnections. | 122 # Enable this to use HW H.264 encoder/decoder on iOS/Mac PeerConnections. |
123 # Enabling this may break interop with Android clients that support H264. | 123 # Enabling this may break interop with Android clients that support H.264. |
124 'use_objc_h264%': 0, | 124 'use_objc_h264%': 0, |
125 | 125 |
| 126 # Enable this to build H.264 encoder/decoder using third party libraries. |
| 127 # Encoding uses OpenH264 and decoding uses FFmpeg. Because of this, OpenH264 |
| 128 # and FFmpeg have to be correctly enabled separately. |
| 129 # - 'use_openh264=1' is required for OpenH264 targets to be defined. |
| 130 # - 'ffmpeg_branding=Chrome' is one way to support H.264 decoding in FFmpeg. |
| 131 # FFmpeg can be built with/without H.264 support, see 'ffmpeg_branding'. |
| 132 # Without it, it compiles but H264DecoderImpl fails to initialize. |
| 133 # CHECK THE OPENH264, FFMPEG AND H.264 LICENSES/PATENTS BEFORE BUILDING. |
| 134 # http://www.openh264.org, https://www.ffmpeg.org/ |
| 135 'use_third_party_h264%': 0, |
| 136 |
126 'conditions': [ | 137 'conditions': [ |
127 ['build_with_chromium==1', { | 138 ['build_with_chromium==1', { |
128 # Exclude pulse audio on Chromium since its prerequisites don't require | 139 # Exclude pulse audio on Chromium since its prerequisites don't require |
129 # pulse audio. | 140 # pulse audio. |
130 'include_pulse_audio%': 0, | 141 'include_pulse_audio%': 0, |
131 | 142 |
132 # Exclude internal ADM since Chromium uses its own IO handling. | 143 # Exclude internal ADM since Chromium uses its own IO handling. |
133 'include_internal_audio_device%': 0, | 144 'include_internal_audio_device%': 0, |
134 | 145 |
135 # Remove tests for Chromium to avoid slowing down GYP generation. | 146 # Remove tests for Chromium to avoid slowing down GYP generation. |
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
328 'defines': [ | 339 'defines': [ |
329 'WEBRTC_MAC', | 340 'WEBRTC_MAC', |
330 'WEBRTC_IOS', | 341 'WEBRTC_IOS', |
331 ], | 342 ], |
332 }], | 343 }], |
333 ['OS=="ios" and use_objc_h264==1', { | 344 ['OS=="ios" and use_objc_h264==1', { |
334 'defines': [ | 345 'defines': [ |
335 'WEBRTC_OBJC_H264', | 346 'WEBRTC_OBJC_H264', |
336 ], | 347 ], |
337 }], | 348 }], |
| 349 ['use_third_party_h264==1', { |
| 350 'defines': [ |
| 351 'WEBRTC_THIRD_PARTY_H264', |
| 352 ], |
| 353 }], |
338 ['OS=="linux"', { | 354 ['OS=="linux"', { |
339 'defines': [ | 355 'defines': [ |
340 'WEBRTC_LINUX', | 356 'WEBRTC_LINUX', |
341 ], | 357 ], |
342 }], | 358 }], |
343 ['OS=="mac"', { | 359 ['OS=="mac"', { |
344 'defines': [ | 360 'defines': [ |
345 'WEBRTC_MAC', | 361 'WEBRTC_MAC', |
346 ], | 362 ], |
347 }], | 363 }], |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
439 # of a more specific macro. | 455 # of a more specific macro. |
440 'defines': [ | 456 'defines': [ |
441 'WEBRTC_POSIX', | 457 'WEBRTC_POSIX', |
442 ], | 458 ], |
443 }], | 459 }], |
444 ], | 460 ], |
445 }, | 461 }, |
446 }, # target_defaults | 462 }, # target_defaults |
447 } | 463 } |
448 | 464 |
OLD | NEW |