Merge changes I7bbf776e,I1b827825
* changes: WIP: Changes after merge commit 'cb3f9bd' WIP: Merge commit 'cb3f9bd' into chh.merge.cb3f9bd
This commit is contained in:
3
.clang-format
Normal file
3
.clang-format
Normal file
@ -0,0 +1,3 @@
|
||||
# Defines the Chromium style for automatic reformatting.
|
||||
# http://clang.llvm.org/docs/ClangFormatStyleOptions.html
|
||||
BasedOnStyle: Chromium
|
136
.gitignore
vendored
136
.gitignore
vendored
@ -1,6 +1,6 @@
|
||||
*.host.mk
|
||||
*.target.mk
|
||||
*.DS_Store
|
||||
*.Makefile
|
||||
*.host.mk
|
||||
*.ncb
|
||||
*.ninja
|
||||
*.props
|
||||
@ -10,6 +10,7 @@
|
||||
*.sdf
|
||||
*.sln
|
||||
*.suo
|
||||
*.target.mk
|
||||
*.targets
|
||||
*.user
|
||||
*.vcproj
|
||||
@ -20,47 +21,160 @@
|
||||
*.vpwhistu
|
||||
*.vtg
|
||||
*.xcodeproj
|
||||
*_proto.xml
|
||||
*_proto_cpp.xml
|
||||
*~
|
||||
.*.sw?
|
||||
.DS_Store
|
||||
.classpath
|
||||
.cproject
|
||||
.gdb_history
|
||||
.gdbinit
|
||||
.landmines
|
||||
.metadata
|
||||
.project
|
||||
.pydevproject
|
||||
.settings
|
||||
/build
|
||||
/chromium_deps
|
||||
/gyp-mac-tool
|
||||
.sw?
|
||||
/Makefile
|
||||
/base
|
||||
/build
|
||||
/buildtools
|
||||
/chromium/.gclient.tmp
|
||||
/chromium/.gclient.tmp_entries
|
||||
/chromium/.last_sync_chromium
|
||||
/chromium/_bad_scm
|
||||
/chromium/src
|
||||
/google_apis
|
||||
/gyp-mac-tool
|
||||
/links
|
||||
/links.db
|
||||
/net
|
||||
/out
|
||||
/resources
|
||||
/src/supplement.gypi
|
||||
/resources/**/*.aecdump
|
||||
/resources/**/*.bin
|
||||
/resources/**/*.chn
|
||||
/resources/**/*.dat
|
||||
/resources/**/*.gai
|
||||
/resources/**/*.jpg
|
||||
/resources/**/*.pcap
|
||||
/resources/**/*.pcm
|
||||
/resources/**/*.rtp
|
||||
/resources/**/*.rx
|
||||
/resources/**/*.wav
|
||||
/resources/**/*.yuv
|
||||
/resources/**/*.BIT*
|
||||
/resources/**/*.INP
|
||||
/resources/**/*.OUT*
|
||||
/talk/examples/android/bin
|
||||
/talk/examples/android/gen
|
||||
/talk/examples/android/libs
|
||||
/talk/examples/android/local.properties
|
||||
/talk/examples/android/obj
|
||||
/talk/examples/android/proguard-project.txt
|
||||
/talk/examples/androidtests/bin
|
||||
/talk/examples/androidtests/gen
|
||||
/talk/app/webrtc/androidtests/bin
|
||||
/talk/app/webrtc/androidtests/gen
|
||||
/talk/app/webrtc/androidtests/libs
|
||||
/testing
|
||||
/third_party/WebKit/Tools/Scripts
|
||||
/third_party/android_platform
|
||||
/third_party/android_testrunner
|
||||
/third_party/android_tools
|
||||
/third_party/appurify-python
|
||||
/third_party/asan
|
||||
/third_party/ashmem
|
||||
/third_party/binutils
|
||||
/third_party/boringssl
|
||||
/third_party/BUILD.gn
|
||||
/third_party/clang_format
|
||||
/third_party/class-dump
|
||||
/third_party/colorama
|
||||
/third_party/cygwin
|
||||
/third_party/directxsdk
|
||||
/third_party/drmemory
|
||||
/third_party/expat
|
||||
/third_party/gaeunit
|
||||
/third_party/gold
|
||||
/third_party/google-gflags/src
|
||||
/third_party/gflags/src
|
||||
/third_party/google-visualization-python
|
||||
/third_party/icu
|
||||
/third_party/instrumented_libraries
|
||||
/third_party/ijar
|
||||
/third_party/jsoncpp
|
||||
/third_party/jsr-305
|
||||
/third_party/junit
|
||||
/third_party/junit-jar
|
||||
/third_party/libc++
|
||||
/third_party/libc++abi
|
||||
/third_party/libevent
|
||||
/third_party/libjingle
|
||||
/third_party/libjpeg
|
||||
/third_party/libjpeg_turbo
|
||||
/third_party/libsrtp
|
||||
/third_party/libvpx
|
||||
/third_party/libvpx_new
|
||||
/third_party/libxml
|
||||
/third_party/libudev
|
||||
/third_party/libyuv
|
||||
/third_party/llvm
|
||||
/third_party/llvm-build
|
||||
/third_party/lss
|
||||
/third_party/mockito
|
||||
/third_party/modp_b64
|
||||
/third_party/nss
|
||||
/third_party/oauth2
|
||||
/third_party/ocmock
|
||||
/third_party/openmax_dl
|
||||
/third_party/opus
|
||||
/third_party/proguard
|
||||
/third_party/protobuf
|
||||
/third_party/requests
|
||||
/third_party/robolectric
|
||||
/third_party/sqlite
|
||||
/third_party/syzygy
|
||||
/third_party/usrsctp
|
||||
/third_party/valgrind
|
||||
/third_party/WebKit
|
||||
/third_party/winsdk_samples/src
|
||||
/third_party/yasm
|
||||
/third_party/zlib
|
||||
/tools/android
|
||||
/tools/clang
|
||||
/tools/find_depot_tools.py
|
||||
/tools/generate_library_loader
|
||||
/tools/gn
|
||||
/tools/grit
|
||||
/tools/gyp
|
||||
/tools/isolate_driver.py
|
||||
/tools/memory
|
||||
/tools/protoc_wrapper
|
||||
/tools/python
|
||||
/tools/relocation_packer
|
||||
/tools/sanitizer_options
|
||||
/tools/swarming_client
|
||||
/tools/tsan_suppressions
|
||||
/tools/valgrind
|
||||
/tools/vim
|
||||
/tools/win
|
||||
/tools/xdisplaycheck
|
||||
/tools/whitespace.txt
|
||||
/webrtc/examples/android/media_demo/bin
|
||||
/webrtc/examples/android/media_demo/gen
|
||||
/webrtc/examples/android/media_demo/libs
|
||||
/webrtc/examples/android/media_demo/local.properties
|
||||
/webrtc/examples/android/media_demo/obj
|
||||
/webrtc/examples/android/media_demo/proguard-project.txt
|
||||
/webrtc/examples/android/opensl_loopback/bin
|
||||
/webrtc/examples/android/opensl_loopback/gen
|
||||
/webrtc/examples/android/opensl_loopback/libs
|
||||
/webrtc/examples/android/opensl_loopback/local.properties
|
||||
/webrtc/examples/android/opensl_loopback/obj
|
||||
/webrtc/examples/android/opensl_loopback/proguard-project.txt
|
||||
/webrtc/modules/audio_device/android/test/bin/
|
||||
/webrtc/modules/audio_device/android/test/gen/
|
||||
/webrtc/modules/audio_device/android/test/libs/
|
||||
/webrtc/video_engine/test/android/bin
|
||||
/webrtc/video_engine/test/android/gen
|
||||
/webrtc/video_engine/test/android/libs
|
||||
/webrtc/video_engine/test/android/obj
|
||||
/x86-generic_out/
|
||||
/xcodebuild
|
||||
|
47
.gn
Normal file
47
.gn
Normal file
@ -0,0 +1,47 @@
|
||||
# Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
|
||||
#
|
||||
# Use of this source code is governed by a BSD-style license
|
||||
# that can be found in the LICENSE file in the root of the source
|
||||
# tree. An additional intellectual property rights grant can be found
|
||||
# in the file PATENTS. All contributing project authors may
|
||||
# be found in the AUTHORS file in the root of the source tree.
|
||||
|
||||
# The location of the build configuration file.
|
||||
buildconfig = "//build/config/BUILDCONFIG.gn"
|
||||
|
||||
# The secondary source root is a parallel directory tree where
|
||||
# GN build files are placed when they can not be placed directly
|
||||
# in the source tree, e.g. for third party source trees.
|
||||
secondary_source = "//build/secondary/"
|
||||
|
||||
# These are the targets to check headers for by default. The files in targets
|
||||
# matching these patterns (see "gn help label_pattern" for format) will have
|
||||
# their includes checked for proper dependencies when you run either
|
||||
# "gn check" or "gn gen --check".
|
||||
check_targets = [ "//webrtc/*" ]
|
||||
|
||||
# These are the list of GN files that run exec_script. This whitelist exists
|
||||
# to force additional review for new uses of exec_script, which is strongly
|
||||
# discouraged except for gypi_to_gn calls.
|
||||
exec_script_whitelist = [
|
||||
"//build/config/android/BUILD.gn",
|
||||
"//build/config/android/config.gni",
|
||||
"//build/config/android/internal_rules.gni",
|
||||
"//build/config/android/rules.gni",
|
||||
"//build/config/compiler/BUILD.gn",
|
||||
"//build/config/gcc/gcc_version.gni",
|
||||
"//build/config/ios/ios_sdk.gni",
|
||||
"//build/config/linux/BUILD.gn",
|
||||
"//build/config/linux/pkg_config.gni",
|
||||
"//build/config/mac/mac_sdk.gni",
|
||||
"//build/config/posix/BUILD.gn",
|
||||
"//build/config/win/visual_studio_version.gni",
|
||||
"//build/gn_helpers.py",
|
||||
"//build/gypi_to_gn.py",
|
||||
"//build/toolchain/gcc_toolchain.gni",
|
||||
"//build/toolchain/mac/BUILD.gn",
|
||||
"//build/toolchain/win/BUILD.gn",
|
||||
"//third_party/boringssl/BUILD.gn",
|
||||
"//third_party/opus/BUILD.gn",
|
||||
"//webrtc/modules/video_render/BUILD.gn",
|
||||
]
|
44
AUTHORS
44
AUTHORS
@ -1,8 +1,46 @@
|
||||
# Names should be added to this file like so:
|
||||
# Name or Organization <email address>
|
||||
|
||||
Google Inc.
|
||||
Mozilla Foundation
|
||||
Anil Kumar <an1kumar@gmail.com>
|
||||
Ben Strong <bstrong@gmail.com>
|
||||
Petar Jovanovic <petarj@mips.com>
|
||||
Bob Withers <bwit@pobox.com>
|
||||
Bridger Maxwell <bridgeyman@gmail.com>
|
||||
Christophe Dumez <ch.dumez@samsung.com>
|
||||
Colin Plumb
|
||||
Eric Rescorla, RTFM Inc. <ekr@rtfm.com>
|
||||
Giji Gangadharan <giji.g@samsung.com>
|
||||
Graham Yoakum <gyoakum@skobalt.com>
|
||||
Jake Hilton <jakehilton@gmail.com>
|
||||
James H. Brown <jbrown@burgoyne.com>
|
||||
Jiawei Ou <jiawei.ou@gmail.com>
|
||||
Jie Mao <maojie0924@gmail.com>
|
||||
Luke Weber <luke.weber@gmail.com>
|
||||
Manish Jethani <manish.jethani@gmail.com>
|
||||
Martin Storsjo <martin@martin.st>
|
||||
Matthias Liebig <matthias.gcode@gmail.com>
|
||||
Pali Rohar
|
||||
Paul Kapustin <pkapustin@gmail.com>
|
||||
Rafael Lopez Diez <rafalopezdiez@gmail.com>
|
||||
Ralph Giles <giles@ghostscript.com>
|
||||
Robert Nagy <robert.nagy@gmail.com>
|
||||
Ryan Yoakum <ryoakum@skobalt.com>
|
||||
Sarah Thompson <sarah@telergy.com>
|
||||
Saul Kravitz <Saul.Kravitz@celera.com>
|
||||
Silviu Caragea <silviu.cpp@gmail.com>
|
||||
Steve Reid <sreid@sea-to-sky.net>
|
||||
Vicken Simonian <vsimon@gmail.com>
|
||||
Victor Costan <costan@gmail.com>
|
||||
|
||||
&yet LLC
|
||||
ARM Holdings
|
||||
BroadSoft Inc.
|
||||
Google Inc.
|
||||
Intel Corporation
|
||||
MIPS Technologies
|
||||
Mozilla Foundation
|
||||
Opera Software ASA
|
||||
Sinch AB
|
||||
struktur AG
|
||||
Telenor Digital AS
|
||||
Temasys Communications
|
||||
Vonage Holdings Corp.
|
||||
|
74
Android.mk
74
Android.mk
@ -16,16 +16,23 @@ LOCAL_MODULE := libwebrtc_audio_preprocessing
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
|
||||
LOCAL_WHOLE_STATIC_LIBRARIES := \
|
||||
libwebrtc_spl \
|
||||
libwebrtc_resampler \
|
||||
libwebrtc_apm \
|
||||
libwebrtc_apm_utility \
|
||||
libwebrtc_vad \
|
||||
libwebrtc_ns \
|
||||
libwebrtc_agc \
|
||||
libwebrtc_aec \
|
||||
libwebrtc_aecm \
|
||||
libwebrtc_system_wrappers
|
||||
libwebrtc_agc \
|
||||
libwebrtc_apm \
|
||||
libwebrtc_apm_utility \
|
||||
libwebrtc_apvad \
|
||||
libwebrtc_base \
|
||||
libwebrtc_beamformer \
|
||||
libwebrtc_common \
|
||||
libwebrtc_intell \
|
||||
libwebrtc_isac \
|
||||
libwebrtc_resampler \
|
||||
libwebrtc_ns \
|
||||
libwebrtc_spl \
|
||||
libwebrtc_system_wrappers \
|
||||
libwebrtc_transient \
|
||||
libwebrtc_vad \
|
||||
|
||||
# Add Neon libraries.
|
||||
ifeq ($(WEBRTC_BUILD_NEON_LIBS),true)
|
||||
@ -39,7 +46,6 @@ LOCAL_SHARED_LIBRARIES := \
|
||||
libdl \
|
||||
libprotobuf-cpp-lite \
|
||||
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
|
||||
|
||||
@ -51,10 +57,15 @@ LOCAL_MODULE := libwebrtc_audio_coding
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
|
||||
LOCAL_WHOLE_STATIC_LIBRARIES := \
|
||||
libwebrtc_base \
|
||||
libwebrtc_common \
|
||||
libwebrtc_intell \
|
||||
libwebrtc_isac \
|
||||
libwebrtc_isacfix \
|
||||
libwebrtc_resampler \
|
||||
libwebrtc_spl \
|
||||
libwebrtc_system_wrappers
|
||||
libwebrtc_system_wrappers \
|
||||
|
||||
ifeq ($(WEBRTC_BUILD_NEON_LIBS),true)
|
||||
LOCAL_WHOLE_STATIC_LIBRARIES_arm += \
|
||||
libwebrtc_isacfix_neon
|
||||
@ -65,7 +76,6 @@ LOCAL_SHARED_LIBRARIES := \
|
||||
libcutils \
|
||||
libdl \
|
||||
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
|
||||
|
||||
@ -88,10 +98,6 @@ endif
|
||||
|
||||
LOCAL_STATIC_LIBRARIES := \
|
||||
libprotobuf-cpp-lite
|
||||
LOCAL_SHARED_LIBRARIES := \
|
||||
libcutils \
|
||||
libdl
|
||||
|
||||
|
||||
LOCAL_NDK_STL_VARIANT := gnustl_static
|
||||
LOCAL_SDK_VERSION := 14
|
||||
@ -100,22 +106,28 @@ include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
webrtc_path := $(LOCAL_PATH)
|
||||
# voice
|
||||
include $(webrtc_path)/src/common_audio/resampler/Android.mk
|
||||
include $(webrtc_path)/src/common_audio/signal_processing/Android.mk
|
||||
include $(webrtc_path)/src/common_audio/vad/Android.mk
|
||||
include $(webrtc_path)/src/modules/audio_coding/codecs/isac/fix/source/Android.mk
|
||||
include $(webrtc_path)/src/modules/audio_coding/codecs/isac/main/source/Android.mk
|
||||
include $(webrtc_path)/src/modules/audio_processing/aec/Android.mk
|
||||
include $(webrtc_path)/src/modules/audio_processing/aecm/Android.mk
|
||||
include $(webrtc_path)/src/modules/audio_processing/agc/Android.mk
|
||||
include $(webrtc_path)/src/modules/audio_processing/Android.mk
|
||||
include $(webrtc_path)/src/modules/audio_processing/ns/Android.mk
|
||||
include $(webrtc_path)/src/modules/audio_processing/utility/Android.mk
|
||||
include $(webrtc_path)/src/system_wrappers/source/Android.mk
|
||||
include $(webrtc_path)/webrtc/base/Android.mk
|
||||
include $(webrtc_path)/webrtc/common_audio/Android.mk
|
||||
include $(webrtc_path)/webrtc/common_audio/resampler/Android.mk
|
||||
include $(webrtc_path)/webrtc/common_audio/signal_processing/Android.mk
|
||||
include $(webrtc_path)/webrtc/common_audio/vad/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_coding/codecs/isac/fix/source/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_coding/codecs/isac/main/source/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_processing/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_processing/aec/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_processing/aecm/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_processing/agc/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_processing/beamformer/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_processing/intelligibility/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_processing/ns/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_processing/transient/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_processing/utility/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_processing/vad/Android.mk
|
||||
include $(webrtc_path)/webrtc/system_wrappers/source/Android.mk
|
||||
|
||||
# libwebrtc_audio_coding_gnustl_static dependencies
|
||||
WEBRTC_STL := gnustl_static
|
||||
include $(webrtc_path)/src/system_wrappers/source/Android.mk
|
||||
include $(webrtc_path)/src/modules/audio_coding/codecs/isac/fix/source/Android.mk
|
||||
include $(webrtc_path)/src/modules/audio_coding/codecs/isac/main/source/Android.mk
|
||||
include $(webrtc_path)/src/common_audio/signal_processing/Android.mk
|
||||
include $(webrtc_path)/webrtc/system_wrappers/source/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_coding/codecs/isac/fix/source/Android.mk
|
||||
include $(webrtc_path)/webrtc/modules/audio_coding/codecs/isac/main/source/Android.mk
|
||||
include $(webrtc_path)/webrtc/common_audio/signal_processing/Android.mk
|
||||
|
14
BUILD.gn
Normal file
14
BUILD.gn
Normal file
@ -0,0 +1,14 @@
|
||||
# Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
|
||||
#
|
||||
# Use of this source code is governed by a BSD-style license
|
||||
# that can be found in the LICENSE file in the root of the source
|
||||
# tree. An additional intellectual property rights grant can be found
|
||||
# in the file PATENTS. All contributing project authors may
|
||||
# be found in the AUTHORS file in the root of the source tree.
|
||||
|
||||
# This file is copied and modified from Chromium (src/BUILD.gn).
|
||||
group("root") {
|
||||
deps = [
|
||||
"//webrtc",
|
||||
]
|
||||
}
|
198
DEPS
198
DEPS
@ -1,138 +1,116 @@
|
||||
use_relative_paths = True
|
||||
# This file contains dependencies for WebRTC that are not shared with Chromium.
|
||||
# If you wish to add a dependency that is present in Chromium's src/DEPS or a
|
||||
# directory from the Chromium checkout, you should add it to setup_links.py
|
||||
# instead.
|
||||
|
||||
vars = {
|
||||
# Override root_dir in your .gclient's custom_vars to specify a custom root
|
||||
# folder name.
|
||||
"root_dir": "trunk",
|
||||
"extra_gyp_flag": "-Dextra_gyp_flag=0",
|
||||
|
||||
# Use this googlecode_url variable only if there is an internal mirror for it.
|
||||
# If you do not know, use the full path while defining your new deps entry.
|
||||
"googlecode_url": "http://%s.googlecode.com/svn",
|
||||
"chromium_trunk" : "http://src.chromium.org/svn/trunk",
|
||||
"chromium_revision": "152335",
|
||||
|
||||
# External resources like video and audio files used for testing purposes.
|
||||
# Downloaded on demand when needed.
|
||||
"webrtc_resources_revision": "10",
|
||||
'extra_gyp_flag': '-Dextra_gyp_flag=0',
|
||||
'chromium_git': 'https://chromium.googlesource.com',
|
||||
'chromium_revision': '657e8d9a9139da0735d73fc0fc6d90a05f980319',
|
||||
}
|
||||
|
||||
# NOTE: Prefer revision numbers to tags for svn deps. Use http rather than
|
||||
# https; the latter can cause problems for users behind proxies.
|
||||
deps = {
|
||||
"../chromium_deps":
|
||||
File(Var("chromium_trunk") + "/src/DEPS@" + Var("chromium_revision")),
|
||||
# When rolling gflags, also update
|
||||
# https://chromium.googlesource.com/chromium/deps/webrtc/webrtc.DEPS
|
||||
'src/third_party/gflags/src':
|
||||
Var('chromium_git') + '/external/gflags/src@e7390f9185c75f8d902c05ed7d20bb94eb914d0c', # from svn revision 82
|
||||
|
||||
"build":
|
||||
Var("chromium_trunk") + "/src/build@" + Var("chromium_revision"),
|
||||
|
||||
"testing":
|
||||
Var("chromium_trunk") + "/src/testing@" + Var("chromium_revision"),
|
||||
|
||||
"testing/gmock":
|
||||
From("chromium_deps", "src/testing/gmock"),
|
||||
|
||||
"testing/gtest":
|
||||
From("chromium_deps", "src/testing/gtest"),
|
||||
|
||||
"third_party/expat":
|
||||
Var("chromium_trunk") + "/src/third_party/expat@" + Var("chromium_revision"),
|
||||
|
||||
"third_party/google-gflags/src":
|
||||
(Var("googlecode_url") % "google-gflags") + "/trunk/src@45",
|
||||
|
||||
"third_party/libjpeg":
|
||||
Var("chromium_trunk") + "/src/third_party/libjpeg@" + Var("chromium_revision"),
|
||||
|
||||
"third_party/libjpeg_turbo":
|
||||
From("chromium_deps", "src/third_party/libjpeg_turbo"),
|
||||
|
||||
"third_party/libvpx/source/libvpx":
|
||||
"http://git.chromium.org/webm/libvpx.git@c522217d",
|
||||
|
||||
"third_party/libyuv":
|
||||
(Var("googlecode_url") % "libyuv") + "/trunk@338",
|
||||
|
||||
"third_party/protobuf":
|
||||
Var("chromium_trunk") + "/src/third_party/protobuf@" + Var("chromium_revision"),
|
||||
|
||||
"third_party/yasm":
|
||||
Var("chromium_trunk") + "/src/third_party/yasm@" + Var("chromium_revision"),
|
||||
|
||||
"third_party/yasm/source/patched-yasm":
|
||||
From("chromium_deps", "src/third_party/yasm/source/patched-yasm"),
|
||||
|
||||
"tools/clang":
|
||||
Var("chromium_trunk") + "/src/tools/clang@" + Var("chromium_revision"),
|
||||
|
||||
"tools/gyp":
|
||||
From("chromium_deps", "src/tools/gyp"),
|
||||
|
||||
"tools/python":
|
||||
Var("chromium_trunk") + "/src/tools/python@" + Var("chromium_revision"),
|
||||
|
||||
"tools/valgrind":
|
||||
Var("chromium_trunk") + "/src/tools/valgrind@" + Var("chromium_revision"),
|
||||
|
||||
# Needed by build/common.gypi.
|
||||
"tools/win/supalink":
|
||||
Var("chromium_trunk") + "/src/tools/win/supalink@" + Var("chromium_revision"),
|
||||
'src/third_party/junit-jar':
|
||||
Var('chromium_git') + '/external/webrtc/deps/third_party/junit@f35596b476aa6e62fd3b3857b9942ddcd13ce35e', # from svn revision 3367
|
||||
}
|
||||
|
||||
deps_os = {
|
||||
"win": {
|
||||
# Use our own, stripped down, version of Cygwin (required by GYP).
|
||||
"third_party/cygwin":
|
||||
(Var("googlecode_url") % "webrtc") + "/deps/third_party/cygwin@2672",
|
||||
|
||||
# Used by libjpeg-turbo.
|
||||
"third_party/yasm/binaries":
|
||||
From("chromium_deps", "src/third_party/yasm/binaries"),
|
||||
},
|
||||
"unix": {
|
||||
"third_party/gold":
|
||||
From("chromium_deps", "src/third_party/gold"),
|
||||
'win': {
|
||||
'src/third_party/winsdk_samples/src':
|
||||
Var('chromium_git') + '/external/webrtc/deps/third_party/winsdk_samples_v71@c0cbedd854cb610a53226d9817416c4ab9a7d1e9', # from svn revision 7951
|
||||
},
|
||||
}
|
||||
|
||||
# Define rules for which include paths are allowed in our source.
|
||||
include_rules = [
|
||||
# Base is only used to build Android APK tests and may not be referenced by
|
||||
# WebRTC production code.
|
||||
'-base',
|
||||
'-chromium',
|
||||
'+external/webrtc/webrtc', # Android platform build.
|
||||
'+gflags',
|
||||
'+libyuv',
|
||||
'+net',
|
||||
'+talk',
|
||||
'+testing',
|
||||
'+third_party',
|
||||
'+unicode',
|
||||
'+webrtc',
|
||||
'+vpx',
|
||||
]
|
||||
|
||||
hooks = [
|
||||
{
|
||||
# Create a supplement.gypi file under trunk/src. This file will be picked
|
||||
# up by gyp and used to enable the standalone build.
|
||||
"pattern": ".",
|
||||
"action": ["python", Var("root_dir") + "/tools/create_supplement_gypi.py",
|
||||
Var("root_dir") + "/src/supplement.gypi"],
|
||||
# Check for legacy named top-level dir (named 'trunk').
|
||||
'name': 'check_root_dir_name',
|
||||
'pattern': '.',
|
||||
'action': ['python','-c',
|
||||
('import os,sys;'
|
||||
'script = os.path.join("trunk","check_root_dir.py");'
|
||||
'_ = os.system("%s %s" % (sys.executable,script)) '
|
||||
'if os.path.exists(script) else 0')],
|
||||
},
|
||||
{
|
||||
# Pull clang on mac. If nothing changed, or on non-mac platforms, this takes
|
||||
# zero seconds to run. If something changed, it downloads a prebuilt clang.
|
||||
"pattern": ".",
|
||||
"action": ["python", Var("root_dir") + "/tools/clang/scripts/update.py",
|
||||
"--mac-only"],
|
||||
# Clone chromium and its deps.
|
||||
'name': 'sync chromium',
|
||||
'pattern': '.',
|
||||
'action': ['python', '-u', 'src/sync_chromium.py',
|
||||
'--target-revision', Var('chromium_revision')],
|
||||
},
|
||||
{
|
||||
# Update the cygwin mount on Windows.
|
||||
# This is necessary to get the correct mapping between e.g. /bin and the
|
||||
# cygwin path on Windows. Without it we can't run bash scripts in actions.
|
||||
# Ideally this should be solved in "pylib/gyp/msvs_emulation.py".
|
||||
"pattern": ".",
|
||||
"action": ["python", Var("root_dir") + "/build/win/setup_cygwin_mount.py",
|
||||
"--win-only"],
|
||||
# Create links to shared dependencies in Chromium.
|
||||
'name': 'setup_links',
|
||||
'pattern': '.',
|
||||
'action': ['python', 'src/setup_links.py'],
|
||||
},
|
||||
{
|
||||
# Download test resources, i.e. video and audio files. If the latest
|
||||
# version is already downloaded, this takes zero seconds to run.
|
||||
# If a newer version or no current download exists, it will download
|
||||
# the resources and extract them.
|
||||
"pattern": ".",
|
||||
"action": ["python", Var("root_dir") + "/tools/resources/update.py"],
|
||||
# This clobbers when necessary (based on get_landmines.py). It should be
|
||||
# an early hook but it will need to be run after syncing Chromium and
|
||||
# setting up the links, so the script actually exists.
|
||||
'name': 'landmines',
|
||||
'pattern': '.',
|
||||
'action': [
|
||||
'python',
|
||||
'src/build/landmines.py',
|
||||
'--landmine-scripts',
|
||||
'src/webrtc/build/get_landmines.py',
|
||||
'--src-dir',
|
||||
'src',
|
||||
],
|
||||
},
|
||||
{
|
||||
# Pull sanitizer-instrumented third-party libraries if requested via
|
||||
# GYP_DEFINES. This could be done as part of sync_chromium.py above
|
||||
# but then we would need to run all the Chromium hooks each time,
|
||||
# which will slow things down a lot.
|
||||
'name': 'instrumented_libraries',
|
||||
'pattern': '\\.sha1',
|
||||
'action': ['python', 'src/third_party/instrumented_libraries/scripts/download_binaries.py'],
|
||||
},
|
||||
{
|
||||
# Download test resources, i.e. video and audio files from Google Storage.
|
||||
'pattern': '.',
|
||||
'action': ['download_from_google_storage',
|
||||
'--directory',
|
||||
'--recursive',
|
||||
'--num_threads=10',
|
||||
'--no_auth',
|
||||
'--bucket', 'chromium-webrtc-resources',
|
||||
'src/resources'],
|
||||
},
|
||||
{
|
||||
# A change to a .gyp, .gypi, or to GYP itself should run the generator.
|
||||
"pattern": ".",
|
||||
"action": ["python", Var("root_dir") + "/build/gyp_chromium",
|
||||
"--depth=" + Var("root_dir"), Var("root_dir") + "/webrtc.gyp",
|
||||
Var("extra_gyp_flag")],
|
||||
'name': 'gyp',
|
||||
'pattern': '.',
|
||||
'action': ['python', 'src/webrtc/build/gyp_webrtc',
|
||||
Var('extra_gyp_flag')],
|
||||
},
|
||||
]
|
||||
|
||||
|
@ -1 +1 @@
|
||||
Refer to src/LICENSE_THIRD_PARTY.
|
||||
Refer to webrtc/LICENSE_THIRD_PARTY and talk/LICENSE_THIRD_PARTY.
|
||||
|
20
OWNERS
20
OWNERS
@ -1,5 +1,15 @@
|
||||
henrika@webrtc.org
|
||||
niklas.enbom@webrtc.org
|
||||
andrew@webrtc.org
|
||||
tina.legrand@webrtc.org
|
||||
tommi@webrtc.org
|
||||
andrew@webrtc.org
|
||||
henrika@webrtc.org
|
||||
mflodman@webrtc.org
|
||||
niklas.enbom@webrtc.org
|
||||
tina.legrand@webrtc.org
|
||||
tommi@webrtc.org
|
||||
per-file .gitignore=*
|
||||
per-file AUTHORS=*
|
||||
per-file .gn=kjellander@webrtc.org
|
||||
per-file BUILD.gn=kjellander@webrtc.org
|
||||
per-file DEPS=*
|
||||
per-file PRESUBMIT.py=kjellander@webrtc.org
|
||||
per-file setup_links.py=*
|
||||
per-file sync_chromium.py=kjellander@webrtc.org
|
||||
per-file WATCHLISTS=*
|
||||
|
278
PRESUBMIT.py
Normal file → Executable file
278
PRESUBMIT.py
Normal file → Executable file
@ -6,32 +6,13 @@
|
||||
# in the file PATENTS. All contributing project authors may
|
||||
# be found in the AUTHORS file in the root of the source tree.
|
||||
|
||||
import os.path
|
||||
import json
|
||||
import os
|
||||
import platform
|
||||
import re
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
# All folders in LINT_FOLDERS will be scanned by cpplint by the presubmit
|
||||
# script. Note that subfolders are not included.
|
||||
LINT_FOLDERS = ['src/video_engine']
|
||||
|
||||
def _LicenseHeader(input_api):
|
||||
"""Returns the license header regexp."""
|
||||
# Accept any year number from 2011 to the current year
|
||||
current_year = int(input_api.time.strftime('%Y'))
|
||||
allowed_years = (str(s) for s in reversed(xrange(2011, current_year + 1)))
|
||||
years_re = '(' + '|'.join(allowed_years) + ')'
|
||||
license_header = (
|
||||
r'.*? Copyright \(c\) %(year)s The WebRTC project authors\. '
|
||||
r'All Rights Reserved\.\n'
|
||||
r'.*?\n'
|
||||
r'.*? Use of this source code is governed by a BSD-style license\n'
|
||||
r'.*? that can be found in the LICENSE file in the root of the source\n'
|
||||
r'.*? tree\. An additional intellectual property rights grant can be '
|
||||
r'found\n'
|
||||
r'.*? in the file PATENTS\. All contributing project authors may\n'
|
||||
r'.*? be found in the AUTHORS file in the root of the source tree\.\n'
|
||||
) % {
|
||||
'year': years_re,
|
||||
}
|
||||
return license_header
|
||||
|
||||
def _CheckNoIOStreamInHeaders(input_api, output_api):
|
||||
"""Checks to make sure no .h files include <iostream>."""
|
||||
@ -46,13 +27,14 @@ def _CheckNoIOStreamInHeaders(input_api, output_api):
|
||||
files.append(f)
|
||||
|
||||
if len(files):
|
||||
return [ output_api.PresubmitError(
|
||||
return [output_api.PresubmitError(
|
||||
'Do not #include <iostream> in header files, since it inserts static ' +
|
||||
'initialization into every file including the header. Instead, ' +
|
||||
'#include <ostream>. See http://crbug.com/94794',
|
||||
files) ]
|
||||
files)]
|
||||
return []
|
||||
|
||||
|
||||
def _CheckNoFRIEND_TEST(input_api, output_api):
|
||||
"""Make sure that gtest's FRIEND_TEST() macro is not used, the
|
||||
FRIEND_TEST_ALL_PREFIXES() macro from testsupport/gtest_prod_util.h should be
|
||||
@ -71,10 +53,6 @@ def _CheckNoFRIEND_TEST(input_api, output_api):
|
||||
'gtest\'s FRIEND_TEST() macro. Include testsupport/gtest_prod_util.h and '
|
||||
'use FRIEND_TEST_ALL_PREFIXES() instead.\n' + '\n'.join(problems))]
|
||||
|
||||
def _IsLintWhitelisted(file_name):
|
||||
""" Checks if a file is whitelisted for lint check."""
|
||||
# TODO(mflodman) Include subfolders in the check.
|
||||
return (os.path.dirname(file_name) in LINT_FOLDERS)
|
||||
|
||||
def _CheckApprovedFilesLintClean(input_api, output_api,
|
||||
source_file_filter=None):
|
||||
@ -104,8 +82,8 @@ def _CheckApprovedFilesLintClean(input_api, output_api,
|
||||
verbosity_level = 1
|
||||
files = []
|
||||
for f in input_api.AffectedSourceFiles(source_file_filter):
|
||||
# Note that moved/renamed files also count as added for svn.
|
||||
if (f.Action() == 'A' or _IsLintWhitelisted(f.LocalPath())):
|
||||
# Note that moved/renamed files also count as added.
|
||||
if f.Action() == 'A':
|
||||
files.append(f.AbsoluteLocalPath())
|
||||
|
||||
for file_name in files:
|
||||
@ -122,12 +100,205 @@ def _CheckApprovedFilesLintClean(input_api, output_api,
|
||||
|
||||
return result
|
||||
|
||||
def _CheckNoRtcBaseDeps(input_api, gyp_files, output_api):
|
||||
pattern = input_api.re.compile(r"base.gyp:rtc_base\s*'")
|
||||
violating_files = []
|
||||
for f in gyp_files:
|
||||
gyp_exceptions = (
|
||||
'base_tests.gyp',
|
||||
'desktop_capture.gypi',
|
||||
'libjingle.gyp',
|
||||
'libjingle_tests.gyp',
|
||||
'p2p.gyp',
|
||||
'sound.gyp',
|
||||
'webrtc_test_common.gyp',
|
||||
'webrtc_tests.gypi',
|
||||
)
|
||||
if f.LocalPath().endswith(gyp_exceptions):
|
||||
continue
|
||||
contents = input_api.ReadFile(f)
|
||||
if pattern.search(contents):
|
||||
violating_files.append(f)
|
||||
if violating_files:
|
||||
return [output_api.PresubmitError(
|
||||
'Depending on rtc_base is not allowed. Change your dependency to '
|
||||
'rtc_base_approved and possibly sanitize and move the desired source '
|
||||
'file(s) to rtc_base_approved.\nChanged GYP files:',
|
||||
items=violating_files)]
|
||||
return []
|
||||
|
||||
def _CheckNoSourcesAboveGyp(input_api, gyp_files, output_api):
|
||||
# Disallow referencing source files with paths above the GYP file location.
|
||||
source_pattern = input_api.re.compile(r'sources.*?\[(.*?)\]',
|
||||
re.MULTILINE | re.DOTALL)
|
||||
file_pattern = input_api.re.compile(r"'((\.\./.*?)|(<\(webrtc_root\).*?))'")
|
||||
violating_gyp_files = set()
|
||||
violating_source_entries = []
|
||||
for gyp_file in gyp_files:
|
||||
contents = input_api.ReadFile(gyp_file)
|
||||
for source_block_match in source_pattern.finditer(contents):
|
||||
# Find all source list entries starting with ../ in the source block
|
||||
# (exclude overrides entries).
|
||||
for file_list_match in file_pattern.finditer(source_block_match.group(0)):
|
||||
source_file = file_list_match.group(0)
|
||||
if 'overrides/' not in source_file:
|
||||
violating_source_entries.append(source_file)
|
||||
violating_gyp_files.add(gyp_file)
|
||||
if violating_gyp_files:
|
||||
return [output_api.PresubmitError(
|
||||
'Referencing source files above the directory of the GYP file is not '
|
||||
'allowed. Please introduce new GYP targets and/or GYP files in the '
|
||||
'proper location instead.\n'
|
||||
'Invalid source entries:\n'
|
||||
'%s\n'
|
||||
'Violating GYP files:' % '\n'.join(violating_source_entries),
|
||||
items=violating_gyp_files)]
|
||||
return []
|
||||
|
||||
def _CheckGypChanges(input_api, output_api):
|
||||
source_file_filter = lambda x: input_api.FilterSourceFile(
|
||||
x, white_list=(r'.+\.(gyp|gypi)$',))
|
||||
|
||||
gyp_files = []
|
||||
for f in input_api.AffectedSourceFiles(source_file_filter):
|
||||
if f.LocalPath().startswith('webrtc'):
|
||||
gyp_files.append(f)
|
||||
|
||||
result = []
|
||||
if gyp_files:
|
||||
result.append(output_api.PresubmitNotifyResult(
|
||||
'As you\'re changing GYP files: please make sure corresponding '
|
||||
'BUILD.gn files are also updated.\nChanged GYP files:',
|
||||
items=gyp_files))
|
||||
result.extend(_CheckNoRtcBaseDeps(input_api, gyp_files, output_api))
|
||||
result.extend(_CheckNoSourcesAboveGyp(input_api, gyp_files, output_api))
|
||||
return result
|
||||
|
||||
def _CheckUnwantedDependencies(input_api, output_api):
|
||||
"""Runs checkdeps on #include statements added in this
|
||||
change. Breaking - rules is an error, breaking ! rules is a
|
||||
warning.
|
||||
"""
|
||||
# Copied from Chromium's src/PRESUBMIT.py.
|
||||
|
||||
# We need to wait until we have an input_api object and use this
|
||||
# roundabout construct to import checkdeps because this file is
|
||||
# eval-ed and thus doesn't have __file__.
|
||||
original_sys_path = sys.path
|
||||
try:
|
||||
checkdeps_path = input_api.os_path.join(input_api.PresubmitLocalPath(),
|
||||
'buildtools', 'checkdeps')
|
||||
if not os.path.exists(checkdeps_path):
|
||||
return [output_api.PresubmitError(
|
||||
'Cannot find checkdeps at %s\nHave you run "gclient sync" to '
|
||||
'download Chromium and setup the symlinks?' % checkdeps_path)]
|
||||
sys.path.append(checkdeps_path)
|
||||
import checkdeps
|
||||
from cpp_checker import CppChecker
|
||||
from rules import Rule
|
||||
finally:
|
||||
# Restore sys.path to what it was before.
|
||||
sys.path = original_sys_path
|
||||
|
||||
added_includes = []
|
||||
for f in input_api.AffectedFiles():
|
||||
if not CppChecker.IsCppFile(f.LocalPath()):
|
||||
continue
|
||||
|
||||
changed_lines = [line for _, line in f.ChangedContents()]
|
||||
added_includes.append([f.LocalPath(), changed_lines])
|
||||
|
||||
deps_checker = checkdeps.DepsChecker(input_api.PresubmitLocalPath())
|
||||
|
||||
error_descriptions = []
|
||||
warning_descriptions = []
|
||||
for path, rule_type, rule_description in deps_checker.CheckAddedCppIncludes(
|
||||
added_includes):
|
||||
description_with_path = '%s\n %s' % (path, rule_description)
|
||||
if rule_type == Rule.DISALLOW:
|
||||
error_descriptions.append(description_with_path)
|
||||
else:
|
||||
warning_descriptions.append(description_with_path)
|
||||
|
||||
results = []
|
||||
if error_descriptions:
|
||||
results.append(output_api.PresubmitError(
|
||||
'You added one or more #includes that violate checkdeps rules.',
|
||||
error_descriptions))
|
||||
if warning_descriptions:
|
||||
results.append(output_api.PresubmitPromptOrNotify(
|
||||
'You added one or more #includes of files that are temporarily\n'
|
||||
'allowed but being removed. Can you avoid introducing the\n'
|
||||
'#include? See relevant DEPS file(s) for details and contacts.',
|
||||
warning_descriptions))
|
||||
return results
|
||||
|
||||
|
||||
def _RunPythonTests(input_api, output_api):
|
||||
def join(*args):
|
||||
return input_api.os_path.join(input_api.PresubmitLocalPath(), *args)
|
||||
|
||||
test_directories = [
|
||||
join('tools', 'autoroller', 'unittests'),
|
||||
]
|
||||
|
||||
tests = []
|
||||
for directory in test_directories:
|
||||
tests.extend(
|
||||
input_api.canned_checks.GetUnitTestsInDirectory(
|
||||
input_api,
|
||||
output_api,
|
||||
directory,
|
||||
whitelist=[r'.+_test\.py$']))
|
||||
return input_api.RunTests(tests, parallel=True)
|
||||
|
||||
|
||||
def _CommonChecks(input_api, output_api):
|
||||
"""Checks common to both upload and commit."""
|
||||
# TODO(kjellander): Use presubmit_canned_checks.PanProjectChecks too.
|
||||
results = []
|
||||
results.extend(input_api.canned_checks.RunPylint(input_api, output_api,
|
||||
black_list=(r'^.*gviz_api\.py$',
|
||||
r'^.*gaeunit\.py$',
|
||||
# Embedded shell-script fakes out pylint.
|
||||
r'^build[\\\/].*\.py$',
|
||||
r'^buildtools[\\\/].*\.py$',
|
||||
r'^chromium[\\\/].*\.py$',
|
||||
r'^google_apis[\\\/].*\.py$',
|
||||
r'^net.*[\\\/].*\.py$',
|
||||
r'^out.*[\\\/].*\.py$',
|
||||
r'^testing[\\\/].*\.py$',
|
||||
r'^third_party[\\\/].*\.py$',
|
||||
r'^tools[\\\/]find_depot_tools.py$',
|
||||
r'^tools[\\\/]clang[\\\/].*\.py$',
|
||||
r'^tools[\\\/]generate_library_loader[\\\/].*\.py$',
|
||||
r'^tools[\\\/]gn[\\\/].*\.py$',
|
||||
r'^tools[\\\/]gyp[\\\/].*\.py$',
|
||||
r'^tools[\\\/]isolate_driver.py$',
|
||||
r'^tools[\\\/]protoc_wrapper[\\\/].*\.py$',
|
||||
r'^tools[\\\/]python[\\\/].*\.py$',
|
||||
r'^tools[\\\/]python_charts[\\\/]data[\\\/].*\.py$',
|
||||
r'^tools[\\\/]refactoring[\\\/].*\.py$',
|
||||
r'^tools[\\\/]swarming_client[\\\/].*\.py$',
|
||||
r'^tools[\\\/]vim[\\\/].*\.py$',
|
||||
# TODO(phoglund): should arguably be checked.
|
||||
r'^tools[\\\/]valgrind-webrtc[\\\/].*\.py$',
|
||||
r'^tools[\\\/]valgrind[\\\/].*\.py$',
|
||||
r'^tools[\\\/]win[\\\/].*\.py$',
|
||||
r'^xcodebuild.*[\\\/].*\.py$',),
|
||||
disabled_warnings=['F0401', # Failed to import x
|
||||
'E0611', # No package y in x
|
||||
'W0232', # Class has no __init__ method
|
||||
],
|
||||
pylintrc='pylintrc'))
|
||||
# WebRTC can't use the presubmit_canned_checks.PanProjectChecks function since
|
||||
# we need to have different license checks in talk/ and webrtc/ directories.
|
||||
# Instead, hand-picked checks are included below.
|
||||
|
||||
# Skip long-lines check for DEPS, GN and GYP files.
|
||||
long_lines_sources = lambda x: input_api.FilterSourceFile(x,
|
||||
black_list=(r'.+\.gyp$', r'.+\.gypi$', r'.+\.gn$', r'.+\.gni$', 'DEPS'))
|
||||
results.extend(input_api.canned_checks.CheckLongLines(
|
||||
input_api, output_api))
|
||||
input_api, output_api, maxlen=80, source_file_filter=long_lines_sources))
|
||||
results.extend(input_api.canned_checks.CheckChangeHasNoTabs(
|
||||
input_api, output_api))
|
||||
results.extend(input_api.canned_checks.CheckChangeHasNoStrayWhitespace(
|
||||
@ -135,17 +306,22 @@ def _CommonChecks(input_api, output_api):
|
||||
results.extend(input_api.canned_checks.CheckChangeTodoHasOwner(
|
||||
input_api, output_api))
|
||||
results.extend(_CheckApprovedFilesLintClean(input_api, output_api))
|
||||
results.extend(input_api.canned_checks.CheckLicense(
|
||||
input_api, output_api, _LicenseHeader(input_api)))
|
||||
results.extend(_CheckNoIOStreamInHeaders(input_api, output_api))
|
||||
results.extend(_CheckNoFRIEND_TEST(input_api, output_api))
|
||||
results.extend(_CheckGypChanges(input_api, output_api))
|
||||
results.extend(_CheckUnwantedDependencies(input_api, output_api))
|
||||
results.extend(_RunPythonTests(input_api, output_api))
|
||||
return results
|
||||
|
||||
|
||||
def CheckChangeOnUpload(input_api, output_api):
|
||||
results = []
|
||||
results.extend(_CommonChecks(input_api, output_api))
|
||||
results.extend(
|
||||
input_api.canned_checks.CheckGNFormatted(input_api, output_api))
|
||||
return results
|
||||
|
||||
|
||||
def CheckChangeOnCommit(input_api, output_api):
|
||||
results = []
|
||||
results.extend(_CommonChecks(input_api, output_api))
|
||||
@ -158,4 +334,32 @@ def CheckChangeOnCommit(input_api, output_api):
|
||||
input_api, output_api))
|
||||
results.extend(input_api.canned_checks.CheckChangeHasTestField(
|
||||
input_api, output_api))
|
||||
results.extend(input_api.canned_checks.CheckTreeIsOpen(
|
||||
input_api, output_api,
|
||||
json_url='http://webrtc-status.appspot.com/current?format=json'))
|
||||
return results
|
||||
|
||||
|
||||
# pylint: disable=W0613
|
||||
def GetPreferredTryMasters(project, change):
|
||||
cq_config_path = os.path.join(
|
||||
change.RepositoryRoot(), 'infra', 'config', 'cq.cfg')
|
||||
# commit_queue.py below is a script in depot_tools directory, which has a
|
||||
# 'builders' command to retrieve a list of CQ builders from the CQ config.
|
||||
is_win = platform.system() == 'Windows'
|
||||
masters = json.loads(subprocess.check_output(
|
||||
['commit_queue', 'builders', cq_config_path], shell=is_win))
|
||||
|
||||
try_config = {}
|
||||
for master in masters:
|
||||
try_config.setdefault(master, {})
|
||||
for builder in masters[master]:
|
||||
if 'presubmit' in builder:
|
||||
# Do not trigger presubmit builders, since they're likely to fail
|
||||
# (e.g. OWNERS checks before finished code review), and we're running
|
||||
# local presubmit anyway.
|
||||
pass
|
||||
else:
|
||||
try_config[master][builder] = ['defaulttests']
|
||||
|
||||
return try_config
|
||||
|
23
README.md
Normal file
23
README.md
Normal file
@ -0,0 +1,23 @@
|
||||
**WebRTC is a free, open software project** that provides browsers and mobile
|
||||
applications with Real-Time Communications (RTC) capabilities via simple APIs.
|
||||
The WebRTC components have been optimized to best serve this purpose.
|
||||
|
||||
**Our mission:** To enable rich, high-quality RTC applications to be
|
||||
developed for the browser, mobile platforms, and IoT devices, and allow them
|
||||
all to communicate via a common set of protocols.
|
||||
|
||||
The WebRTC initiative is a project supported by Google, Mozilla and Opera,
|
||||
amongst others. This page is maintained by the Google Chrome team.
|
||||
|
||||
### Development
|
||||
|
||||
See http://www.webrtc.org/native-code/development for instructions on how to get
|
||||
started developing with the native code.
|
||||
|
||||
### More info
|
||||
|
||||
* Official web site: http://www.webrtc.org
|
||||
* Master source code repo: https://chromium.googlesource.com/external/webrtc
|
||||
* Samples and reference apps: https://github.com/webrtc
|
||||
* Mailing list: http://groups.google.com/group/discuss-webrtc
|
||||
* Continuous build: http://build.chromium.org/p/client.webrtc
|
125
WATCHLISTS
125
WATCHLISTS
@ -14,17 +14,17 @@
|
||||
'this_file': {
|
||||
'filepath': '^WATCHLISTS$',
|
||||
},
|
||||
'all_src': {
|
||||
'filepath': 'src/.*',
|
||||
'all_webrtc': {
|
||||
# NOTE: if you like this you might like webrtc-reviews@webrtc.org!
|
||||
'filepath': 'webrtc/.*',
|
||||
},
|
||||
'root_files': {
|
||||
# src/build/ and non-recursive contents of ./ and src/
|
||||
'filepath': '^[^/]*$|src/[^/]*$|src/build/.*',
|
||||
# webrtc/build/ and non-recursive contents of ./ and webrtc/
|
||||
'filepath': '^[^/]*$|webrtc/[^/]*$|webrtc/build/.*',
|
||||
},
|
||||
'documented_interfaces': {
|
||||
'filepath': 'src/[^/]*\.h$|'\
|
||||
'src/video_engine/main/interface/.*|'\
|
||||
'src/voice_engine/main/interface/.*',
|
||||
'filepath': 'webrtc/[^/]*\.h$|'\
|
||||
'webrtc/voice_engine/include/.*',
|
||||
},
|
||||
'build_files': {
|
||||
'filepath': '\.gyp$|\.gypi$|Android\.mk$',
|
||||
@ -33,82 +33,115 @@
|
||||
'filepath': '\.java$|\.xml$',
|
||||
},
|
||||
'video_engine': {
|
||||
'filepath': 'src/video_engine/.*',
|
||||
'filepath': 'webrtc/video_engine/.*|'\
|
||||
'webrtc/video/.*',
|
||||
},
|
||||
'voice_engine': {
|
||||
'filepath': 'src/voice_engine/.*',
|
||||
'filepath': 'webrtc/voice_engine/.*',
|
||||
},
|
||||
'common_audio': {
|
||||
'filepath': 'src/common_audio/.*',
|
||||
'filepath': 'webrtc/common_audio/.*',
|
||||
},
|
||||
'common_video': {
|
||||
'filepath': 'webrtc/common_video/.*',
|
||||
},
|
||||
'video_capture': {
|
||||
'filepath': 'src/modules/video_capture/.*',
|
||||
'filepath': 'webrtc/modules/video_capture/.*',
|
||||
},
|
||||
'video_render': {
|
||||
'filepath': 'src/modules/video_render/.*',
|
||||
'filepath': 'webrtc/modules/video_render/.*',
|
||||
},
|
||||
'audio_device': {
|
||||
'filepath': 'src/modules/audio_device/.*',
|
||||
'filepath': 'webrtc/modules/audio_device/.*',
|
||||
},
|
||||
'audio_coding': {
|
||||
'filepath': 'src/modules/audio_coding/.*',
|
||||
'filepath': 'webrtc/modules/audio_coding/.*',
|
||||
},
|
||||
'neteq': {
|
||||
'filepath': 'src/modules/audio_coding/neteq/.*',
|
||||
'filepath': 'webrtc/modules/audio_coding/neteq/.*',
|
||||
},
|
||||
'audio_processing': {
|
||||
'filepath': 'src/modules/audio_processing/.*',
|
||||
},
|
||||
'video_codecs': {
|
||||
'filepath': 'src/modules/video_coding/codecs/.*',
|
||||
'filepath': 'webrtc/modules/audio_processing/.*',
|
||||
},
|
||||
'video_coding': {
|
||||
'filepath': 'src/modules/video_coding/.*',
|
||||
'filepath': 'webrtc/modules/video_coding/.*',
|
||||
},
|
||||
'video_processing': {
|
||||
'filepath': 'webrtc/modules/video_processing/.*',
|
||||
},
|
||||
'bitrate_controller': {
|
||||
'filepath': 'webrtc/modules/bitrate_controller/.*'
|
||||
},
|
||||
'remote_bitrate_estimator': {
|
||||
'filepath': 'webrtc/modules/remote_bitrate_estimator/.*'
|
||||
},
|
||||
'pacing': {
|
||||
'filepath': 'webrtc/modules/pacing/.*'
|
||||
},
|
||||
'rtp_rtcp': {
|
||||
'filepath': 'src/modules/rtp_rtcp/.*'
|
||||
'filepath': 'webrtc/modules/rtp_rtcp/.*'
|
||||
},
|
||||
'system_wrappers': {
|
||||
'filepath': 'src/system_wrappers/.*',
|
||||
'filepath': 'webrtc/system_wrappers/.*',
|
||||
},
|
||||
},
|
||||
|
||||
'WATCHLISTS': {
|
||||
'this_file': [''],
|
||||
'all_src': ['tterriberry@mozilla.com',
|
||||
'giles@mozilla.com'],
|
||||
'all_webrtc': ['tterriberry@mozilla.com'],
|
||||
'root_files': ['andrew@webrtc.org',
|
||||
'niklas.enbom@webrtc.org'],
|
||||
'niklas.enbom@webrtc.org',
|
||||
'yujie.mao@webrtc.org',
|
||||
'qiang.lu@intel.com',
|
||||
'peah@webrtc.org'],
|
||||
'documented_interfaces': ['interface-changes@webrtc.org',
|
||||
'rwolff@gocast.it'],
|
||||
'build_files': ['leozwang@webrtc.org'],
|
||||
'java_files': ['leozwang@webrtc.org'],
|
||||
'common_audio': ['bjornv@webrtc.org',
|
||||
'andrew@webrtc.org'],
|
||||
'video_engine': ['mflodman@webrtc.org',
|
||||
'perkj@webrtc.org'],
|
||||
'voice_engine': ['henrika@webrtc.org'],
|
||||
'video_capture': ['mflodman@webrtc.org',
|
||||
'perkj@webrtc.org',
|
||||
'leozwang@webrtc.org'],
|
||||
'video_render': ['mflodman@webrtc.org',
|
||||
'common_audio': ['aluebs@webrtc.org',
|
||||
'andrew@webrtc.org',
|
||||
'bjornv@webrtc.org',
|
||||
'peah@webrtc.org'],
|
||||
'video_engine': ['andresp@webrtc.org',
|
||||
'mflodman@webrtc.org',
|
||||
'perkj@webrtc.org',
|
||||
'leozwang@webrtc.org'],
|
||||
'stefan@webrtc.org',
|
||||
'yujie.mao@webrtc.org',
|
||||
'solenberg@webrtc.org'],
|
||||
'voice_engine': ['henrika@webrtc.org',
|
||||
'henrik.lundin@webrtc.org',
|
||||
'solenberg@webrtc.org',
|
||||
'peah@webrtc.org'],
|
||||
'video_capture': ['mflodman@webrtc.org',
|
||||
'perkj@webrtc.org'],
|
||||
'video_render': ['mflodman@webrtc.org',
|
||||
'perkj@webrtc.org'],
|
||||
'audio_device': ['henrika@webrtc.org',
|
||||
'leozwang@webrtc.org'],
|
||||
'audio_coding': ['tina.legrand@webrtc.org'],
|
||||
'peah@webrtc.org'],
|
||||
'audio_coding': ['tina.legrand@webrtc.org',
|
||||
'henrik.lundin@webrtc.org',
|
||||
'kwiberg@webrtc.org',
|
||||
'peah@webrtc.org'],
|
||||
'neteq': ['henrik.lundin@webrtc.org'],
|
||||
'audio_processing': ['andrew@webrtc.org',
|
||||
'audio_processing': ['aluebs@webrtc.org',
|
||||
'andrew@webrtc.org',
|
||||
'bjornv@webrtc.org',
|
||||
'leozwang@webrtc.org'],
|
||||
'video_codecs': ['henrik.lundin@webrtc.org',
|
||||
'pwestin@webrtc.org'],
|
||||
'video_coding': ['stefan@webrtc.org'],
|
||||
'kwiberg@webrtc.org',
|
||||
'henrik.lundin@webrtc.org',
|
||||
'peah@webrtc.org',
|
||||
'solenberg@webrtc.org'],
|
||||
'video_coding': ['stefan@webrtc.org',
|
||||
'mflodman@webrtc.org'],
|
||||
'video_processing': ['stefan@webrtc.org'],
|
||||
'bitrate_controller': ['stefan@webrtc.org',
|
||||
'mflodman@webrtc.org'],
|
||||
'remote_bitrate_estimator': ['stefan@webrtc.org',
|
||||
'mflodman@webrtc.org'],
|
||||
'pacing': ['stefan@webrtc.org',
|
||||
'mflodman@webrtc.org'],
|
||||
'rtp_rtcp': ['mflodman@webrtc.org',
|
||||
'pwestin@webrtc.org'],
|
||||
'stefan@webrtc.org'],
|
||||
'system_wrappers': ['mflodman@webrtc.org',
|
||||
'henrika@webrtc.org',
|
||||
'andrew@webrtc.org',
|
||||
'leozwang@webrtc.org'],
|
||||
'peah@webrtc.org'],
|
||||
},
|
||||
}
|
||||
|
39
all.gyp
Normal file
39
all.gyp
Normal file
@ -0,0 +1,39 @@
|
||||
# Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
|
||||
#
|
||||
# Use of this source code is governed by a BSD-style license
|
||||
# that can be found in the LICENSE file in the root of the source
|
||||
# tree. An additional intellectual property rights grant can be found
|
||||
# in the file PATENTS. All contributing project authors may
|
||||
# be found in the AUTHORS file in the root of the source tree.
|
||||
|
||||
{
|
||||
'variables': {
|
||||
'include_examples%': 1,
|
||||
'include_tests%': 1,
|
||||
'webrtc_root_additional_dependencies': [],
|
||||
},
|
||||
'targets': [
|
||||
{
|
||||
'target_name': 'All',
|
||||
'type': 'none',
|
||||
'dependencies': [
|
||||
'webrtc/webrtc.gyp:*',
|
||||
'talk/libjingle.gyp:*',
|
||||
'<@(webrtc_root_additional_dependencies)',
|
||||
],
|
||||
'conditions': [
|
||||
['include_examples==1', {
|
||||
'dependencies': [
|
||||
'webrtc/libjingle_examples.gyp:*',
|
||||
'webrtc/webrtc_examples.gyp:*',
|
||||
],
|
||||
}],
|
||||
['include_tests==1', {
|
||||
'dependencies': [
|
||||
'talk/libjingle_tests.gyp:*',
|
||||
],
|
||||
}],
|
||||
],
|
||||
},
|
||||
],
|
||||
}
|
@ -9,6 +9,7 @@
|
||||
# These defines will apply to all source files
|
||||
# Think again before changing it
|
||||
MY_WEBRTC_COMMON_DEFS := \
|
||||
'-DWEBRTC_POSIX' \
|
||||
'-DWEBRTC_LINUX' \
|
||||
'-DWEBRTC_THREAD_RR' \
|
||||
'-DWEBRTC_CLOCK_TYPE_REALTIME' \
|
||||
|
1
build_overrides/OWNERS
Normal file
1
build_overrides/OWNERS
Normal file
@ -0,0 +1 @@
|
||||
kjellander@webrtc.org
|
7
build_overrides/README.md
Normal file
7
build_overrides/README.md
Normal file
@ -0,0 +1,7 @@
|
||||
# Build overrides in GN
|
||||
|
||||
This directory is used to allow us to customize variables that differ between
|
||||
WebRTC being built as standalone and as a part of Chromium.
|
||||
|
||||
There's another build_overrides in Chromium that needs to contain the same
|
||||
set of files with the same set of variables (but with different values).
|
22
build_overrides/webrtc.gni
Normal file
22
build_overrides/webrtc.gni
Normal file
@ -0,0 +1,22 @@
|
||||
# Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
|
||||
#
|
||||
# Use of this source code is governed by a BSD-style license
|
||||
# that can be found in the LICENSE file in the root of the source
|
||||
# tree. An additional intellectual property rights grant can be found
|
||||
# in the file PATENTS. All contributing project authors may
|
||||
# be found in the AUTHORS file in the root of the source tree.
|
||||
|
||||
# This file contains overrides to GN variables that applies for the WebRTC
|
||||
# standalone build (i.e. not in Chromium).
|
||||
#
|
||||
# Every variable here needs to be present in the corresponding file in
|
||||
# build_overrides/ of Chromium.
|
||||
|
||||
build_with_chromium = false
|
||||
|
||||
# Excluded in Chromium since its prerequisites don't require Pulse Audio.
|
||||
rtc_include_pulse_audio = true
|
||||
|
||||
# Chromium uses its own IO handling, so the internal ADM is only built for
|
||||
# standalone WebRTC.
|
||||
rtc_include_internal_audio_device = true
|
57
check_root_dir.py
Executable file
57
check_root_dir.py
Executable file
@ -0,0 +1,57 @@
|
||||
#!/usr/bin/env python
|
||||
# Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
|
||||
#
|
||||
# Use of this source code is governed by a BSD-style license
|
||||
# that can be found in the LICENSE file in the root of the source
|
||||
# tree. An additional intellectual property rights grant can be found
|
||||
# in the file PATENTS. All contributing project authors may
|
||||
# be found in the AUTHORS file in the root of the source tree.
|
||||
|
||||
"""Checks for legacy root directory and instructs the user how to upgrade."""
|
||||
|
||||
import os
|
||||
import sys
|
||||
|
||||
SOLUTION_ROOT_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)),
|
||||
os.pardir)
|
||||
MESSAGE = """\
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
A C T I O N R E Q I R E D
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
|
||||
It looks like you have a legacy checkout where the solution's top-level
|
||||
directory is named 'trunk'. From now on, it must be named 'src'.
|
||||
|
||||
What you need to do is to:
|
||||
|
||||
1. Edit your .gclient file and change the solution name from 'trunk' to 'src'
|
||||
2. Rename your 'trunk' directory to 'src'
|
||||
3. Re-run gclient sync (or gclient runhooks)"""
|
||||
|
||||
|
||||
def main():
|
||||
gclient_filename = os.path.join(SOLUTION_ROOT_DIR, '.gclient')
|
||||
config_dict = {}
|
||||
try:
|
||||
with open(gclient_filename, 'rb') as gclient_file:
|
||||
exec(gclient_file, config_dict)
|
||||
for solution in config_dict.get('solutions', []):
|
||||
if solution['name'] == 'trunk':
|
||||
print MESSAGE
|
||||
if solution.get('custom_vars', {}).get('root_dir'):
|
||||
print ('4. Optional: Remove your "root_dir" entry from the '
|
||||
'custom_vars dictionary of the solution.')
|
||||
|
||||
# Remove the gclient cache file to avoid an error on the next sync.
|
||||
entries_file = os.path.join(SOLUTION_ROOT_DIR, '.gclient_entries')
|
||||
if os.path.exists(entries_file):
|
||||
os.unlink(entries_file)
|
||||
return 1
|
||||
return 0
|
||||
except Exception as e:
|
||||
print >> sys.stderr, "Error while parsing .gclient: ", e
|
||||
return 1
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.exit(main())
|
24
chromium/.gclient
Normal file
24
chromium/.gclient
Normal file
@ -0,0 +1,24 @@
|
||||
solutions = [{
|
||||
'name': 'src',
|
||||
'url': 'https://chromium.googlesource.com/chromium/src.git',
|
||||
'deps_file': '.DEPS.git',
|
||||
'managed': False,
|
||||
'custom_deps': {
|
||||
# Skip syncing some large dependencies WebRTC will never need.
|
||||
'src/chrome/tools/test/reference_build/chrome_linux': None,
|
||||
'src/chrome/tools/test/reference_build/chrome_mac': None,
|
||||
'src/chrome/tools/test/reference_build/chrome_win': None,
|
||||
'src/native_client': None,
|
||||
'src/third_party/cld_2/src': None,
|
||||
'src/third_party/ffmpeg': None,
|
||||
'src/third_party/hunspell_dictionaries': None,
|
||||
'src/third_party/liblouis/src': None,
|
||||
'src/third_party/pdfium': None,
|
||||
'src/third_party/skia': None,
|
||||
'src/third_party/trace-viewer': None,
|
||||
'src/third_party/webrtc': None,
|
||||
},
|
||||
'safesync_url': ''
|
||||
}]
|
||||
|
||||
cache_dir = None
|
1
chromium/OWNERS
Normal file
1
chromium/OWNERS
Normal file
@ -0,0 +1 @@
|
||||
kjellander@webrtc.org
|
5
chromium/README
Normal file
5
chromium/README
Normal file
@ -0,0 +1,5 @@
|
||||
This .gclient file is used to do download a copy of Chromium.
|
||||
WebRTC uses the Chromium build toolchain and a number of shared
|
||||
dependencies by creating symlinks to folders in this checkout,
|
||||
using the ../setup_links.py script.
|
||||
|
@ -1,11 +1,10 @@
|
||||
# This file is used by gcl to get repository specific information.
|
||||
CODE_REVIEW_SERVER: webrtc-codereview.appspot.com
|
||||
#CC_LIST:
|
||||
#VIEW_VC:
|
||||
#STATUS:
|
||||
CODE_REVIEW_SERVER: codereview.webrtc.org
|
||||
CC_LIST: webrtc-reviews@webrtc.org
|
||||
VIEW_VC: https://chromium.googlesource.com/external/webrtc/+/
|
||||
TRY_ON_UPLOAD: False
|
||||
TRYSERVER_HTTP_HOST: webrtc-cb-linux-master.cbf.corp.google.com
|
||||
TRYSERVER_HTTP_PORT: 9018
|
||||
#TRYSERVER_SVN_URL:
|
||||
#GITCL_PREUPLOAD:
|
||||
#GITCL_PREDCOMMIT:
|
||||
TRYSERVER_SVN_URL: svn://svn.chromium.org/chrome-try/try-webrtc
|
||||
TRYSERVER_PROJECT: webrtc
|
||||
TRYSERVER_ROOT: src
|
||||
PROJECT: webrtc
|
||||
PENDING_REF_PREFIX: refs/pending/
|
||||
|
Binary file not shown.
Binary file not shown.
BIN
data/audio_processing/output_data_mac.pb
Normal file
BIN
data/audio_processing/output_data_mac.pb
Normal file
Binary file not shown.
1
infra/OWNERS
Normal file
1
infra/OWNERS
Normal file
@ -0,0 +1 @@
|
||||
kjellander@webrtc.org
|
3
infra/config/OWNERS
Normal file
3
infra/config/OWNERS
Normal file
@ -0,0 +1,3 @@
|
||||
set noparent
|
||||
sergiyb@chromium.org
|
||||
kjellander@webrtc.org
|
1
infra/config/README.md
Normal file
1
infra/config/README.md
Normal file
@ -0,0 +1 @@
|
||||
This directory contains configuration files for infra services.
|
64
infra/config/cq.cfg
Normal file
64
infra/config/cq.cfg
Normal file
@ -0,0 +1,64 @@
|
||||
# Commit Queue configuration file. The documentation of the format can be found
|
||||
# at http://luci-config.appspot.com/schemas/projects/refs:cq.cfg.
|
||||
|
||||
version: 1
|
||||
cq_name: "webrtc"
|
||||
cq_status_url: "https://chromium-cq-status.appspot.com"
|
||||
commit_burst_delay: 60
|
||||
max_commit_burst: 1
|
||||
hide_ref_in_committed_msg: true
|
||||
target_ref: "refs/pending/heads/master"
|
||||
|
||||
rietveld {
|
||||
url: "https://codereview.webrtc.org"
|
||||
}
|
||||
|
||||
|
||||
verifiers {
|
||||
reviewer_lgtm {
|
||||
committer_list: "project-webrtc-committers"
|
||||
}
|
||||
|
||||
tree_status {
|
||||
tree_status_url: "https://webrtc-status.appspot.com"
|
||||
}
|
||||
|
||||
try_job {
|
||||
buckets {
|
||||
name: "tryserver.webrtc"
|
||||
builders { name: "android_dbg" }
|
||||
builders { name: "android_rel" }
|
||||
builders { name: "android_arm64_rel" }
|
||||
builders { name: "android_clang_dbg" }
|
||||
builders { name: "android_gn_dbg" }
|
||||
builders { name: "android_gn_rel" }
|
||||
builders { name: "ios_arm64_dbg" }
|
||||
builders { name: "ios_arm64_rel" }
|
||||
builders { name: "ios_dbg" }
|
||||
builders { name: "ios_rel" }
|
||||
builders { name: "ios32_sim_dbg" }
|
||||
builders { name: "ios64_sim_dbg" }
|
||||
builders { name: "linux_compile_dbg" }
|
||||
builders { name: "linux_asan" }
|
||||
builders { name: "linux_gn_dbg" }
|
||||
builders { name: "linux_gn_rel" }
|
||||
builders { name: "linux_msan" }
|
||||
builders { name: "linux_rel" }
|
||||
builders { name: "linux_tsan2" }
|
||||
builders { name: "mac_compile_dbg" }
|
||||
builders { name: "mac_compile_x64_dbg" }
|
||||
builders { name: "mac_asan" }
|
||||
builders { name: "mac_rel" }
|
||||
builders { name: "mac_x64_gn_dbg" }
|
||||
builders { name: "mac_x64_gn_rel" }
|
||||
builders { name: "mac_x64_rel" }
|
||||
builders { name: "presubmit" }
|
||||
builders { name: "win_compile_dbg" }
|
||||
builders { name: "win_rel" }
|
||||
builders { name: "win_x64_gn_dbg" }
|
||||
builders { name: "win_x64_gn_rel" }
|
||||
builders { name: "win_x64_rel" }
|
||||
builders { name: "win_drmemory_light" }
|
||||
}
|
||||
}
|
||||
}
|
107
libvpx.mk
107
libvpx.mk
@ -1,107 +0,0 @@
|
||||
# Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
|
||||
#
|
||||
# Use of this source code is governed by a BSD-style license
|
||||
# that can be found in the LICENSE file in the root of the source
|
||||
# tree. An additional intellectual property rights grant can be found
|
||||
# in the file PATENTS. All contributing project authors may
|
||||
# be found in the AUTHORS file in the root of the source tree.
|
||||
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
MY_LIBVPX_PATH = ../libvpx
|
||||
|
||||
LOCAL_SRC_FILES = \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/alloccommon.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/blockd.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/debugmodes.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/entropy.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/entropymode.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/entropymv.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/extend.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/filter.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/findnearmv.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/generic/systemdependent.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/idctllm.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/invtrans.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/loopfilter.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/loopfilter_filters.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/mbpitch.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/modecont.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/modecontext.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/quant_common.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/recon.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/reconinter.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/reconintra.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/reconintra4x4.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/setupintrarecon.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/swapyv12buffer.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/textblit.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/treecoder.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/vp8_cx_iface.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/vp8_dx_iface.c \
|
||||
$(MY_LIBVPX_PATH)/vpx_config.c \
|
||||
$(MY_LIBVPX_PATH)/vpx/src/vpx_codec.c \
|
||||
$(MY_LIBVPX_PATH)/vpx/src/vpx_decoder.c \
|
||||
$(MY_LIBVPX_PATH)/vpx/src/vpx_image.c \
|
||||
$(MY_LIBVPX_PATH)/vpx_mem/vpx_mem.c \
|
||||
$(MY_LIBVPX_PATH)/vpx_scale/generic/vpxscale.c \
|
||||
$(MY_LIBVPX_PATH)/vpx_scale/generic/yv12config.c \
|
||||
$(MY_LIBVPX_PATH)/vpx_scale/generic/yv12extend.c \
|
||||
$(MY_LIBVPX_PATH)/vpx_scale/generic/gen_scalers.c \
|
||||
$(MY_LIBVPX_PATH)/vpx_scale/generic/scalesystemdependent.c \
|
||||
$(MY_LIBVPX_PATH)/vpx/src/vpx_encoder.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/bitstream.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/boolhuff.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/dct.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/encodeframe.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/encodeintra.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/encodemb.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/encodemv.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/ethreading.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/firstpass.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/generic/csystemdependent.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/mcomp.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/modecosts.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/pickinter.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/picklpf.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/psnr.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/quantize.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/ratectrl.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/rdopt.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/sad_c.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/segmentation.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/tokenize.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/treewriter.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/onyx_if.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/temporal_filter.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/variance_c.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/decoder/dboolhuff.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/decoder/decodemv.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/decoder/decodframe.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/decoder/dequantize.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/decoder/detokenize.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/decoder/generic/dsystemdependent.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/decoder/onyxd_if.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/decoder/reconintra_mt.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/decoder/threading.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/decoder/idct_blk.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/common/arm/arm_systemdependent.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/encoder/arm/arm_csystemdependent.c \
|
||||
$(MY_LIBVPX_PATH)/vp8/decoder/arm/arm_dsystemdependent.c \
|
||||
|
||||
LOCAL_CFLAGS := \
|
||||
-DHAVE_CONFIG_H=vpx_config.h \
|
||||
-include $(LOCAL_PATH)/third_party/libvpx/source/config/android/vpx_config.h
|
||||
|
||||
LOCAL_MODULE := libwebrtc_vpx
|
||||
|
||||
LOCAL_C_INCLUDES := \
|
||||
external/libvpx \
|
||||
external/libvpx/vpx_ports \
|
||||
external/libvpx/vp8/common \
|
||||
external/libvpx/vp8/encoder \
|
||||
external/libvpx/vp8 \
|
||||
external/libvpx/vpx_codec
|
||||
|
||||
include $(BUILD_STATIC_LIBRARY)
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
|
||||
* Copyright 2011 The WebRTC Project Authors. All rights reserved.
|
||||
*
|
||||
* Use of this source code is governed by a BSD-style license
|
||||
* that can be found in the LICENSE file in the root of the source
|
||||
|
@ -1,110 +0,0 @@
|
||||
vars = {
|
||||
# Use this googlecode_url variable only if there is an internal mirror for it.
|
||||
# If you do not know, use the full path while defining your new deps entry.
|
||||
"googlecode_url": "http://%s.googlecode.com/svn",
|
||||
"chromium_trunk" : "http://src.chromium.org/svn/trunk",
|
||||
"chromium_revision": "153489",
|
||||
# Still needs the libjingle_revision here because some of
|
||||
# the deps have to be pulled from libjingle repository.
|
||||
"libjingle_revision": "175",
|
||||
}
|
||||
|
||||
# NOTE: Prefer revision numbers to tags for svn deps. Use http rather than
|
||||
# https; the latter can cause problems for users behind proxies.
|
||||
deps = {
|
||||
"trunk/chromium_deps":
|
||||
File(Var("chromium_trunk") + "/src/DEPS@" + Var("chromium_revision")),
|
||||
|
||||
"trunk/third_party/webrtc":
|
||||
From("trunk/chromium_deps", "src/third_party/webrtc"),
|
||||
|
||||
# WebRTC deps.
|
||||
"trunk/third_party/libvpx":
|
||||
From("trunk/chromium_deps", "src/third_party/libvpx"),
|
||||
|
||||
"trunk/build":
|
||||
Var("chromium_trunk") + "/src/build@" + Var("chromium_revision"),
|
||||
|
||||
"trunk/testing/gtest":
|
||||
From("trunk/chromium_deps", "src/testing/gtest"),
|
||||
|
||||
"trunk/tools/gyp":
|
||||
From("trunk/chromium_deps", "src/tools/gyp"),
|
||||
|
||||
"trunk/tools/clang":
|
||||
Var("chromium_trunk") + "/src/tools/clang@" + Var("chromium_revision"),
|
||||
|
||||
# Needed by build/common.gypi.
|
||||
"trunk/tools/win/supalink":
|
||||
Var("chromium_trunk") + "/src/tools/win/supalink@" + Var("chromium_revision"),
|
||||
|
||||
"trunk/third_party/protobuf":
|
||||
Var("chromium_trunk") + "/src/third_party/protobuf@" + Var("chromium_revision"),
|
||||
|
||||
"trunk/third_party/libjpeg_turbo/":
|
||||
From("trunk/chromium_deps", "src/third_party/libjpeg_turbo"),
|
||||
|
||||
"trunk/third_party/libjpeg":
|
||||
Var("chromium_trunk") + "/src/third_party/libjpeg@" + Var("chromium_revision"),
|
||||
|
||||
"trunk/third_party/yasm":
|
||||
Var("chromium_trunk") + "/src/third_party/yasm@" + Var("chromium_revision"),
|
||||
|
||||
"trunk/third_party/expat":
|
||||
Var("chromium_trunk") + "/src/third_party/expat@" + Var("chromium_revision"),
|
||||
|
||||
"trunk/third_party/yasm/source/patched-yasm":
|
||||
From("trunk/chromium_deps", "src/third_party/yasm/source/patched-yasm"),
|
||||
|
||||
"trunk/third_party/libyuv":
|
||||
From("trunk/chromium_deps", "src/third_party/libyuv"),
|
||||
|
||||
# libjingle deps.
|
||||
"trunk/third_party/libjingle/":
|
||||
File(Var("chromium_trunk") + "/src/third_party/libjingle/libjingle.gyp@" + Var("chromium_revision")),
|
||||
|
||||
"trunk/third_party/libjingle/source":
|
||||
From("trunk/chromium_deps", "src/third_party/libjingle/source"),
|
||||
|
||||
"trunk/third_party/libjingle/overrides/talk/base":
|
||||
(Var("googlecode_url") % "libjingle") + "/trunk/talk/base@" + Var("libjingle_revision"),
|
||||
|
||||
"trunk/third_party/libsrtp/":
|
||||
From("trunk/chromium_deps", "src/third_party/libsrtp"),
|
||||
|
||||
"trunk/third_party/jsoncpp/":
|
||||
Var("chromium_trunk") + "/src/third_party/jsoncpp@" + Var("chromium_revision"),
|
||||
|
||||
"trunk/third_party/jsoncpp/source":
|
||||
"http://jsoncpp.svn.sourceforge.net/svnroot/jsoncpp/trunk/jsoncpp@248",
|
||||
}
|
||||
|
||||
deps_os = {
|
||||
"win": {
|
||||
"trunk/third_party/cygwin/":
|
||||
Var("chromium_trunk") + "/deps/third_party/cygwin@66844",
|
||||
|
||||
# Used by libjpeg-turbo
|
||||
"trunk/third_party/yasm/binaries":
|
||||
From("trunk/chromium_deps", "src/third_party/yasm/binaries"),
|
||||
},
|
||||
"unix": {
|
||||
"trunk/third_party/gold":
|
||||
From("trunk/chromium_deps", "src/third_party/gold"),
|
||||
},
|
||||
}
|
||||
|
||||
hooks = [
|
||||
{
|
||||
# Pull clang on mac. If nothing changed, or on non-mac platforms, this takes
|
||||
# zero seconds to run. If something changed, it downloads a prebuilt clang.
|
||||
"pattern": ".",
|
||||
"action": ["python", "trunk/tools/clang/scripts/update.py", "--mac-only"],
|
||||
},
|
||||
{
|
||||
# A change to a .gyp, .gypi, or to GYP itself should run the generator.
|
||||
"pattern": ".",
|
||||
"action": ["python", "trunk/build/gyp_chromium", "--depth=trunk", "trunk/peerconnection.gyp"],
|
||||
},
|
||||
]
|
||||
|
@ -1,5 +0,0 @@
|
||||
henrike@webrtc.org
|
||||
mallinath@webrtc.org
|
||||
perkj@webrtc.org
|
||||
wu@webrtc.org
|
||||
tommi@webrtc.org
|
@ -1,12 +0,0 @@
|
||||
This folder can be used to pull together the chromium version of webrtc
|
||||
and libjingle, and build the peerconnection sample client and server. This will
|
||||
check out a new repository in which you can build peerconnection_server.
|
||||
|
||||
Steps:
|
||||
1) Create a new directory for the new repository (outside the webrtc repo):
|
||||
mkdir peerconnection
|
||||
cd peerconnection
|
||||
2) gclient config --name trunk http://webrtc.googlecode.com/svn/trunk/peerconnection
|
||||
3) gclient sync
|
||||
4) cd trunk
|
||||
5) make peerconnection_server peerconnection_client
|
@ -1,25 +0,0 @@
|
||||
# Below are normally provided by Chromium's base.gyp and required for
|
||||
# libjingle.gyp.
|
||||
{
|
||||
'targets': [
|
||||
{
|
||||
'target_name': 'base',
|
||||
'type': 'none',
|
||||
'direct_dependent_settings': {
|
||||
'include_dirs': [
|
||||
'..',
|
||||
],
|
||||
},
|
||||
'conditions': [
|
||||
['OS == "linux"', {
|
||||
'link_settings': {
|
||||
'libraries': [
|
||||
# We need rt for clock_gettime() used in libjingle.
|
||||
'-lrt',
|
||||
],
|
||||
},
|
||||
}],
|
||||
],
|
||||
},
|
||||
],
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
# This is a dummy gyp file to satisfy libjingle.gyp.
|
||||
{
|
||||
'targets': [
|
||||
{
|
||||
'target_name': 'net',
|
||||
'type': 'none',
|
||||
},
|
||||
],
|
||||
}
|
@ -1,92 +0,0 @@
|
||||
# Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
|
||||
#
|
||||
# Use of this source code is governed by a BSD-style license
|
||||
# that can be found in the LICENSE file in the root of the source
|
||||
# tree. An additional intellectual property rights grant can be found
|
||||
# in the file PATENTS. All contributing project authors may
|
||||
# be found in the AUTHORS file in the root of the source tree.
|
||||
|
||||
{
|
||||
'includes': [ 'third_party/webrtc/build/common.gypi', ],
|
||||
'variables': {
|
||||
'peerconnection_sample': 'third_party/libjingle/source/talk/examples/peerconnection',
|
||||
},
|
||||
'conditions': [
|
||||
['OS=="win"', {
|
||||
'targets': [
|
||||
{
|
||||
'target_name': 'peerconnection_client',
|
||||
'type': 'executable',
|
||||
'sources': [
|
||||
'<(peerconnection_sample)/client/conductor.cc',
|
||||
'<(peerconnection_sample)/client/conductor.h',
|
||||
'<(peerconnection_sample)/client/defaults.cc',
|
||||
'<(peerconnection_sample)/client/defaults.h',
|
||||
'<(peerconnection_sample)/client/main.cc',
|
||||
'<(peerconnection_sample)/client/main_wnd.cc',
|
||||
'<(peerconnection_sample)/client/main_wnd.h',
|
||||
'<(peerconnection_sample)/client/peer_connection_client.cc',
|
||||
'<(peerconnection_sample)/client/peer_connection_client.h',
|
||||
'third_party/libjingle/source/talk/base/win32socketinit.cc',
|
||||
'third_party/libjingle/source/talk/base/win32socketserver.cc',
|
||||
],
|
||||
'msvs_settings': {
|
||||
'VCLinkerTool': {
|
||||
'SubSystem': '2', # Windows
|
||||
},
|
||||
},
|
||||
'dependencies': [
|
||||
'third_party/libjingle/libjingle.gyp:libjingle_peerconnection',
|
||||
],
|
||||
'include_dirs': [
|
||||
'src',
|
||||
'src/modules/interface',
|
||||
'third_party/libjingle/source',
|
||||
],
|
||||
},
|
||||
], # targets
|
||||
}, ], # OS="win"
|
||||
['OS=="linux"', {
|
||||
'targets': [
|
||||
{
|
||||
'target_name': 'peerconnection_client',
|
||||
'type': 'executable',
|
||||
'sources': [
|
||||
'<(peerconnection_sample)/client/conductor.cc',
|
||||
'<(peerconnection_sample)/client/conductor.h',
|
||||
'<(peerconnection_sample)/client/defaults.cc',
|
||||
'<(peerconnection_sample)/client/defaults.h',
|
||||
'<(peerconnection_sample)/client/linux/main.cc',
|
||||
'<(peerconnection_sample)/client/linux/main_wnd.cc',
|
||||
'<(peerconnection_sample)/client/linux/main_wnd.h',
|
||||
'<(peerconnection_sample)/client/peer_connection_client.cc',
|
||||
'<(peerconnection_sample)/client/peer_connection_client.h',
|
||||
],
|
||||
'dependencies': [
|
||||
'third_party/jsoncpp/jsoncpp.gyp:jsoncpp',
|
||||
'third_party/libjingle/libjingle.gyp:libjingle_peerconnection',
|
||||
# TODO(tommi): Switch to this and remove specific gtk dependency
|
||||
# sections below for cflags and link_settings.
|
||||
# '<(DEPTH)/build/linux/system.gyp:gtk',
|
||||
],
|
||||
'include_dirs': [
|
||||
'third_party/libjingle/source',
|
||||
],
|
||||
'cflags': [
|
||||
'<!@(pkg-config --cflags gtk+-2.0)',
|
||||
],
|
||||
'link_settings': {
|
||||
'ldflags': [
|
||||
'<!@(pkg-config --libs-only-L --libs-only-other gtk+-2.0 gthread-2.0)',
|
||||
],
|
||||
'libraries': [
|
||||
'<!@(pkg-config --libs-only-l gtk+-2.0 gthread-2.0)',
|
||||
'-lX11',
|
||||
'-lXext',
|
||||
],
|
||||
},
|
||||
},
|
||||
], # targets
|
||||
}, ], # OS="linux"
|
||||
],
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
# This file will be picked up by gyp to initialize some global settings.
|
||||
{
|
||||
'variables': {
|
||||
'build_with_chromium': 1,
|
||||
'enable_protobuf': 1,
|
||||
'enabled_libjingle_device_manager': 1,
|
||||
'include_internal_audio_device': 1,
|
||||
'include_internal_video_capture': 1,
|
||||
'include_internal_video_render': 1,
|
||||
'include_pulse_audio': 1,
|
||||
}
|
||||
}
|
17
pylintrc
Normal file
17
pylintrc
Normal file
@ -0,0 +1,17 @@
|
||||
[MESSAGES CONTROL]
|
||||
|
||||
# Disable the message, report, category or checker with the given id(s).
|
||||
# TODO(kjellander): Reduce this list to as small as possible.
|
||||
disable=I0010,I0011,bad-continuation,broad-except,duplicate-code,eval-used,exec-used,fixme,invalid-name,missing-docstring,no-init,no-member,too-few-public-methods,too-many-ancestors,too-many-arguments,too-many-branches,too-many-function-args,too-many-instance-attributes,too-many-lines,too-many-locals,too-many-public-methods,too-many-return-statements,too-many-statements
|
||||
|
||||
|
||||
[REPORTS]
|
||||
|
||||
# Don't write out full reports, just messages.
|
||||
reports=no
|
||||
|
||||
|
||||
[FORMAT]
|
||||
|
||||
# We use two spaces for indents, instead of the usual four spaces or tab.
|
||||
indent-string=' '
|
2
resources/OWNERS
Normal file
2
resources/OWNERS
Normal file
@ -0,0 +1,2 @@
|
||||
*
|
||||
|
1
resources/att-downlink.rx.sha1
Normal file
1
resources/att-downlink.rx.sha1
Normal file
@ -0,0 +1 @@
|
||||
2a4617e3497d8faa2fdccfa8964da26499eb13d6
|
1
resources/att-uplink.rx.sha1
Normal file
1
resources/att-uplink.rx.sha1
Normal file
@ -0,0 +1 @@
|
||||
8ea680a570df53fba206b984f38d4762481322eb
|
1
resources/audio_coding/F00.BIT20.sha1
Normal file
1
resources/audio_coding/F00.BIT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
27e30ed5e0d449db1cd729c382e18455ad3834fe
|
1
resources/audio_coding/F00.BIT30.sha1
Normal file
1
resources/audio_coding/F00.BIT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
6bafbd8667365939c327eef627fa0f94a75e5fa9
|
1
resources/audio_coding/F00.INP.sha1
Normal file
1
resources/audio_coding/F00.INP.sha1
Normal file
@ -0,0 +1 @@
|
||||
44bb846907928e958531e805758767bf9353e03c
|
1
resources/audio_coding/F00.OUT20.sha1
Normal file
1
resources/audio_coding/F00.OUT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
bb80d3c48c42bb14c8e613a8576cb77283cda3a7
|
1
resources/audio_coding/F00.OUT30.sha1
Normal file
1
resources/audio_coding/F00.OUT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
450b538234feff02f35b3e57fbeea5d93a41abe0
|
1
resources/audio_coding/F00_tlm10.OUT20.sha1
Normal file
1
resources/audio_coding/F00_tlm10.OUT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
96fb5327ff7a1fe87bd4512773ce7347b4d72888
|
1
resources/audio_coding/F00_tlm10.OUT30.sha1
Normal file
1
resources/audio_coding/F00_tlm10.OUT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
ea527e8e61241ea73265abba5765793511c42291
|
1
resources/audio_coding/F01.BIT20.sha1
Normal file
1
resources/audio_coding/F01.BIT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
a6230cfa6786ba3d81510aabcaa68bd9b1610d1a
|
1
resources/audio_coding/F01.BIT30.sha1
Normal file
1
resources/audio_coding/F01.BIT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
4f706d94506e0a4dc56f63940caa588e2531a455
|
1
resources/audio_coding/F01.INP.sha1
Normal file
1
resources/audio_coding/F01.INP.sha1
Normal file
@ -0,0 +1 @@
|
||||
23780ea4c8893813787f7ab1dc7ab68075ad89c0
|
1
resources/audio_coding/F01.OUT20.sha1
Normal file
1
resources/audio_coding/F01.OUT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
1ffcead0db4293f5f36abfdc7cd959d6733358d4
|
1
resources/audio_coding/F01.OUT30.sha1
Normal file
1
resources/audio_coding/F01.OUT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
37b5e29f294c3612d4425775b422d7dc9b346965
|
1
resources/audio_coding/F01_tlm10.OUT20.sha1
Normal file
1
resources/audio_coding/F01_tlm10.OUT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
a5e8c268936d7c8d03edd708c675254474aed944
|
1
resources/audio_coding/F01_tlm10.OUT30.sha1
Normal file
1
resources/audio_coding/F01_tlm10.OUT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
9893504bdaa560a4ddb67a99e6701e8d4244896a
|
1
resources/audio_coding/F02.BIT20.sha1
Normal file
1
resources/audio_coding/F02.BIT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
ea44732065b09eec558af1957da21c9061c19c08
|
1
resources/audio_coding/F02.BIT30.sha1
Normal file
1
resources/audio_coding/F02.BIT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
40a5e2850e9e838429911cc3dbb1ff6c9bf38387
|
1
resources/audio_coding/F02.INP.sha1
Normal file
1
resources/audio_coding/F02.INP.sha1
Normal file
@ -0,0 +1 @@
|
||||
57bf2aaa27527d51085e040ccead4b99f160bb2f
|
1
resources/audio_coding/F02.OUT20.sha1
Normal file
1
resources/audio_coding/F02.OUT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
13bb10aca91ddd8af71751944e18243735bdda98
|
1
resources/audio_coding/F02.OUT30.sha1
Normal file
1
resources/audio_coding/F02.OUT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
21764cf8bb5e635e842eaf92403b22ce04732805
|
1
resources/audio_coding/F02_tlm10.OUT20.sha1
Normal file
1
resources/audio_coding/F02_tlm10.OUT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
5e0053a0de7b4708402fcc0a1b5ae024815938a3
|
1
resources/audio_coding/F02_tlm10.OUT30.sha1
Normal file
1
resources/audio_coding/F02_tlm10.OUT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
d57986d3dc65c1cadc41419a77ed1472b73050b4
|
1
resources/audio_coding/F03.BIT20.sha1
Normal file
1
resources/audio_coding/F03.BIT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
c145a1a211103145fbb21cf1c78ab90abce83228
|
1
resources/audio_coding/F03.BIT30.sha1
Normal file
1
resources/audio_coding/F03.BIT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
2ccd6fe240e41906c9f06e05cbde486c1f2bebf7
|
1
resources/audio_coding/F03.INP.sha1
Normal file
1
resources/audio_coding/F03.INP.sha1
Normal file
@ -0,0 +1 @@
|
||||
fb7ad10e20f2de4334f8c122c8582f18b91f0552
|
1
resources/audio_coding/F03.OUT20.sha1
Normal file
1
resources/audio_coding/F03.OUT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
db4e9d9e09b55c3fe5536628c1f2f07f4bad068b
|
1
resources/audio_coding/F03.OUT30.sha1
Normal file
1
resources/audio_coding/F03.OUT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
f48b05dce8cb0370cda4b93da45b4edc3fdd42d0
|
1
resources/audio_coding/F04.BIT20.sha1
Normal file
1
resources/audio_coding/F04.BIT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
8cc1f82ee0d1b7df39840895d3e99756920b85ad
|
1
resources/audio_coding/F04.BIT30.sha1
Normal file
1
resources/audio_coding/F04.BIT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
85ca3d9a5ca61c1bb9d798ba6d3551945ab7667d
|
1
resources/audio_coding/F04.INP.sha1
Normal file
1
resources/audio_coding/F04.INP.sha1
Normal file
@ -0,0 +1 @@
|
||||
730581035d5af832d1b05c8f3a623ec93863b3e3
|
1
resources/audio_coding/F04.OUT20.sha1
Normal file
1
resources/audio_coding/F04.OUT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
985e5ffa0b98718afadfb1f02b5595fb24a9476c
|
1
resources/audio_coding/F04.OUT30.sha1
Normal file
1
resources/audio_coding/F04.OUT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
8b035fb0f9ce3bdc2ae6c983e232c257a515a781
|
1
resources/audio_coding/F05.BIT20.sha1
Normal file
1
resources/audio_coding/F05.BIT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
9069fecc3cd13bf901781af4ece8b374b5285984
|
1
resources/audio_coding/F05.BIT30.sha1
Normal file
1
resources/audio_coding/F05.BIT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
44a04e133c15e013f6b4424877528a4445e28bef
|
1
resources/audio_coding/F05.INP.sha1
Normal file
1
resources/audio_coding/F05.INP.sha1
Normal file
@ -0,0 +1 @@
|
||||
c3dde10c32f12da58181ecaccb7aeaa515239233
|
1
resources/audio_coding/F05.OUT20.sha1
Normal file
1
resources/audio_coding/F05.OUT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
260f51f8320d92d3c8b834c1f38879baa12a7a5a
|
1
resources/audio_coding/F05.OUT30.sha1
Normal file
1
resources/audio_coding/F05.OUT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
72abb4c1d84a4cff1efed4d3e01280d839a9f691
|
1
resources/audio_coding/F06.BIT20.sha1
Normal file
1
resources/audio_coding/F06.BIT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
b6530247acdfd7ae7b3fd80c677d71045351ad07
|
1
resources/audio_coding/F06.BIT30.sha1
Normal file
1
resources/audio_coding/F06.BIT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
0318de4dc48422bfe125fd6f827e6e7114dc61bc
|
1
resources/audio_coding/F06.INP.sha1
Normal file
1
resources/audio_coding/F06.INP.sha1
Normal file
@ -0,0 +1 @@
|
||||
80359cff72cbdc04a337a51c2fcc0c74890710b4
|
1
resources/audio_coding/F06.OUT20.sha1
Normal file
1
resources/audio_coding/F06.OUT20.sha1
Normal file
@ -0,0 +1 @@
|
||||
c7bc71abc973440123a517f61e3dbcb96089ee3f
|
1
resources/audio_coding/F06.OUT30.sha1
Normal file
1
resources/audio_coding/F06.OUT30.sha1
Normal file
@ -0,0 +1 @@
|
||||
5fde2defd2350b5ca7d3b8f8ceef75d2b7fd7f03
|
18
resources/audio_coding/READ.ME
Normal file
18
resources/audio_coding/READ.ME
Normal file
@ -0,0 +1,18 @@
|
||||
Test files for Audio Coding Module
|
||||
|
||||
testfile32kHz.pcm - mono speech file samples at 32 kHz
|
||||
teststereo32kHz.pcm - stereo speech file samples at 32 kHz
|
||||
|
||||
Test and reference vectors to verify correct execution of PacketCable
|
||||
iLBC Fixed Point Reference Code
|
||||
|
||||
Version 1.0.6
|
||||
Format: all .INP and .OUT files contain 16 bit sampled data using the
|
||||
Intel (PC) format. The .BIT files are stored in the appropriate byte
|
||||
sequence (big-endian format).
|
||||
|
||||
*.INP - input files
|
||||
*.BIT20 - bit stream files 20 ms mode
|
||||
*.OUT20 - output files 20 ms mode (on a channel without packet loss)
|
||||
*.BIT30 - bit stream files 30 ms mode
|
||||
*.OUT30 - output files 30 ms mode (on a channel without packet loss)
|
1
resources/audio_coding/clean.chn.sha1
Normal file
1
resources/audio_coding/clean.chn.sha1
Normal file
@ -0,0 +1 @@
|
||||
7fe50497b4fef1bbaca4bbb4f00c9f069ef63dc0
|
1
resources/audio_coding/music_stereo_48kHz.pcm.sha1
Normal file
1
resources/audio_coding/music_stereo_48kHz.pcm.sha1
Normal file
@ -0,0 +1 @@
|
||||
77b123a152911b538951cadbee45007f9d1a370c
|
1
resources/audio_coding/neteq4_network_stats.dat.sha1
Normal file
1
resources/audio_coding/neteq4_network_stats.dat.sha1
Normal file
@ -0,0 +1 @@
|
||||
e5e2d0ff26d16339cf0f37a3512bfa2d390a9a9a
|
@ -0,0 +1 @@
|
||||
373f15261ef1dca3b61bd62d7f5e6dd085ae3eb8
|
1
resources/audio_coding/neteq4_rtcp_stats.dat.sha1
Normal file
1
resources/audio_coding/neteq4_rtcp_stats.dat.sha1
Normal file
@ -0,0 +1 @@
|
||||
948753a2087fbb5b74a3ea0b1aef8593c9c30b10
|
1
resources/audio_coding/neteq4_universal_ref.pcm.sha1
Normal file
1
resources/audio_coding/neteq4_universal_ref.pcm.sha1
Normal file
@ -0,0 +1 @@
|
||||
f587883b7c371ee8d87dbf1b0f07525af7d959b8
|
@ -0,0 +1 @@
|
||||
f587883b7c371ee8d87dbf1b0f07525af7d959b8
|
@ -0,0 +1 @@
|
||||
08266b198e7686b3cd9330813e0d2cd72fc8fdc2
|
1
resources/audio_coding/neteq_network_stats.dat.sha1
Normal file
1
resources/audio_coding/neteq_network_stats.dat.sha1
Normal file
@ -0,0 +1 @@
|
||||
e3c189b500d92fd0f10cb4c770c298cee7008749
|
@ -0,0 +1 @@
|
||||
343061419a64ca99323fc0d25a43149a5d40cf07
|
1
resources/audio_coding/neteq_rtcp_stats.dat.sha1
Normal file
1
resources/audio_coding/neteq_rtcp_stats.dat.sha1
Normal file
@ -0,0 +1 @@
|
||||
759d57e87517e0290144add9ba53d5c6dec1c27e
|
1
resources/audio_coding/neteq_universal_new.rtp.sha1
Normal file
1
resources/audio_coding/neteq_universal_new.rtp.sha1
Normal file
@ -0,0 +1 @@
|
||||
8dd7585937f1f3b17666035a7aec5c0431d4b30b
|
1
resources/audio_coding/neteq_universal_ref.pcm.sha1
Normal file
1
resources/audio_coding/neteq_universal_ref.pcm.sha1
Normal file
@ -0,0 +1 @@
|
||||
236da353f05d329f6c83e441b80dbfcc18706cfb
|
@ -0,0 +1 @@
|
||||
1d2d353be4345d30506866ca32fa72825c6d65b8
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user