16791 Commits

Author SHA1 Message Date
henrik.lundin
24180017d5 ACM: Change test output files from PCM to WAV
This makes the test files easier to analyze.

BUG=none

Review-Url: https://codereview.webrtc.org/2752543007
Cr-Commit-Position: refs/heads/master@{#17559}
2017-04-06 09:40:37 +00:00
kjellander
4fcfdd8ff0 Enable rtc_unittests on iOS simulator
The recent change in https://codereview.chromium.org/2780513006
seems to make it possible for us to enable this test.

BUG=webrtc:5572, webrtc:5566
NOTRY=True

Review-Url: https://codereview.webrtc.org/2799033004
Cr-Commit-Position: refs/heads/master@{#17558}
2017-04-06 09:21:45 +00:00
ossu
a280f7c026 Added integer parsing functions in base/string_to_number.h
They provide parsing of numbers from char* and std::string into any of
the fundamental integer types. Values are returned
in an rtc::Optional, which is left empty if parsing was unsuccessful.

BUG=webrtc:5806

Review-Url: https://codereview.webrtc.org/2696003004
Cr-Commit-Position: refs/heads/master@{#17557}
2017-04-06 09:02:15 +00:00
kjellander
b1e3fc4515 Enable tools_unittests and rtc_stats_unittests on iOS Simulator
The tests have been passing for some time, but were never added.

BUG=webrtc:5572, webrtc:5566
NOTRY=True

Review-Url: https://codereview.webrtc.org/2800813005
Cr-Commit-Position: refs/heads/master@{#17556}
2017-04-06 08:48:37 +00:00
henrika
e24991d7d6 Adds AudioDeviceTest.RunPlayoutAndRecordingInFullDuplex unittest.
BUG=webrtc:7273

Review-Url: https://codereview.webrtc.org/2788883002
Cr-Commit-Position: refs/heads/master@{#17555}
2017-04-06 08:14:23 +00:00
danilchap
978504e25c Move rtp header extension length check from Packet::FindExtension to ExtensionT::Parse
to allow to read variable-length extensions.

BUG=webrtc:7433

Review-Url: https://codereview.webrtc.org/2801733002
Cr-Commit-Position: refs/heads/master@{#17554}
2017-04-06 08:03:53 +00:00
buildbot
ed6343d90a Roll chromium_revision 875e8893e9..3014f8b41e (462360:462374)
Change log: 875e8893e9..3014f8b41e
Full diff: 875e8893e9..3014f8b41e

Changed dependencies:
* src/third_party: 752ee4ed36..2ac0de41b5
DEPS diff: 875e8893e9..3014f8b41e/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2804923002
Cr-Commit-Position: refs/heads/master@{#17553}
2017-04-06 07:13:25 +00:00
kjellander
251eb2715a Roll chromium_revision 75820eb165..875e8893e9 (460410:462360)
Change log: 75820eb165..875e8893e9
Full diff: 75820eb165..875e8893e9

Changed dependencies:
* src/base: 6792d12fa4..df3e9281e0
* src/build: 133db8fa95..9fd03dc810
* src/ios: 59e0612124..492cb21bcf
* src/testing: 6320131fde..a69f75b10b
* src/third_party: 456a10fada..752ee4ed36
* src/third_party/android_tools: https://chromium.googlesource.com/android_tools.git/+log/b43a6a289a..b65c4776da
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/d04ca95356..c8ff30cbe7
* src/third_party/catapult: 83f447ccc9..80a58afe72
* src/third_party/libFuzzer/src: 57ed386045..16f5f743c1
* src/third_party/libsrtp: d15364a801..ccf84786f8
* src/third_party/libvpx/source/libvpx: 2fac50fa0e..32b3d2f174
* src/third_party/lss: https://chromium.googlesource.com/linux-syscall-support.git/+log/3f6478ac95..63f24c8221
* src/third_party/robolectric/robolectric: 5244ef6a3a..2a0b6ba221
* src/tools: 513860a676..7d28b21d6d
DEPS diff: 75820eb165..875e8893e9/DEPS

Clang version changed 296321:298539
Details: 75820eb165..875e8893e9/tools/clang/scripts/update.py

TBR=marpan@webrtc.org,
BUG=None

Review-Url: https://codereview.webrtc.org/2802653004
Cr-Commit-Position: refs/heads/master@{#17552}
2017-04-06 05:49:24 +00:00
guidou
f6a4f37685 Reland of Fixed error for missing explict class initialization error on iOS WebRTC buildbots (patchset #1 id:1 of https://codereview.webrtc.org/2803933002/ )
Reason for revert:
The revert did not fix the issue. Apparently this was actually the fix.

Original issue's description:
> Revert of Fixed error for missing explict class initialization error on iOS WebRTC buildbots (patchset #1 id:1 of https://codereview.webrtc.org/2799813002/ )
>
> Reason for revert:
> Causes compile error on iOS.
> export DEVELOPER_DIR=/b/build/slave/ios-device-xcode-clang/build/src/build/ios_files/Xcode.app;  /b/build/slave/cache/goma_client/gomacc clang++ -MMD -MF obj/third_party/webrtc/modules/audio_processing/audio_processing/render_buffer.o.d -DWEBRTC_APM_DEBUG_DUMP=0 -DWEBRTC_AUDIOPROC_DEBUG_DUMP -DWEBRTC_INTELLIGIBILITY_ENHANCER=0 -DWEBRTC_NS_FIXED -DV8_DEPRECATION_WARNINGS -DNO_TCMALLOC -DDISABLE_NACL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"298539-1\" -DCR_XCODE_VERSION=0821 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DNS_BLOCK_ASSERTIONS=1 -DWEBRTC_RESTRICT_LOGGING -DEXPAT_RELATIVE_PATH -DHAVE_SCTP -DENABLE_EXTERNAL_AUTH -DHAVE_WEBRTC_VIDEO -DHAVE_WEBRTC_VOICE -DLOGGING_INSIDE_WEBRTC -DUSE_WEBRTC_DEV_BRANCH -DWEBRTC_ARCH_ARM -DWEBRTC_ARCH_ARM_V7 -DWEBRTC_HAS_NEON -DFEATURE_ENABLE_VOICEMAIL -DEXPAT_RELATIVE_PATH -DGTEST_RELATIVE_PATH -DNO_SOUND_SYSTEM -DWEBRTC_CHROMIUM_BUILD -DWEBRTC_POSIX -DWEBRTC_MAC -DWEBRTC_IOS -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -I../.. -Igen -I../../third_party/webrtc_overrides -I../../third_party -I../../third_party -I../../third_party/webrtc/modules/audio_coding/codecs/isac/main/include -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/webrtc/common_audio/resampler/include -I../../third_party/webrtc/common_audio/signal_processing/include -I../../third_party/webrtc/common_audio/vad/include -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -fcolor-diagnostics -arch armv7 -Wall -Werror -Wextra -Wundeclared-selector -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Os -gdwarf-2 -isysroot /b/build/slave/ios-device-xcode-clang/build/src/build/ios_files/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.2.sdk -stdlib=libc++ -miphoneos-version-min=9.0 -fvisibility=hidden -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -fvisibility-inlines-hidden -std=c++11 -fno-rtti -fno-exceptions -c ../../third_party/webrtc/modules/audio_processing/aec3/render_buffer.cc -o obj/third_party/webrtc/modules/audio_processing/audio_processing/render_buffer.o
> ../../third_party/webrtc/modules/audio_processing/aec3/render_buffer.cc:20:15: error: constructor for 'webrtc::RenderBuffer' must explicitly initialize the const member 'fft_'
> RenderBuffer::RenderBuffer(Aec3Optimization optimization,
>               ^
> ../../third_party/webrtc/modules/audio_processing/aec3/render_buffer.h:75:17: note: 'fft_' declared here
>   const Aec3Fft fft_;
>                 ^
>
> See https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Ftryserver.chromium.mac%2Fios-device-xcode-clang%2F70027%2F%2B%2Frecipes%2Fsteps%2Fcompile__with_patch_%2F0%2Fstdout
>
> Original issue's description:
> > Fixed error for missing explicit class initialization error on iOS buildbots
> >
> > TBR=henrik.lundin@webrtc.org
> >
> > BUG=webrtc:6018
> >
> > Review-Url: https://codereview.webrtc.org/2799813002
> > Cr-Commit-Position: refs/heads/master@{#17549}
> > Committed: 5ac18af71b
>
> TBR=henrik.lundin@webrtc.org,peah@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:6018
>
> Review-Url: https://codereview.webrtc.org/2803933002
> Cr-Commit-Position: refs/heads/master@{#17550}
> Committed: 854e507853

TBR=henrik.lundin@webrtc.org,peah@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6018

Review-Url: https://codereview.webrtc.org/2798913003
Cr-Commit-Position: refs/heads/master@{#17551}
2017-04-06 05:06:36 +00:00
guidou
854e507853 Revert of Fixed error for missing explict class initialization error on iOS WebRTC buildbots (patchset #1 id:1 of https://codereview.webrtc.org/2799813002/ )
Reason for revert:
Causes compile error on iOS.
export DEVELOPER_DIR=/b/build/slave/ios-device-xcode-clang/build/src/build/ios_files/Xcode.app;  /b/build/slave/cache/goma_client/gomacc clang++ -MMD -MF obj/third_party/webrtc/modules/audio_processing/audio_processing/render_buffer.o.d -DWEBRTC_APM_DEBUG_DUMP=0 -DWEBRTC_AUDIOPROC_DEBUG_DUMP -DWEBRTC_INTELLIGIBILITY_ENHANCER=0 -DWEBRTC_NS_FIXED -DV8_DEPRECATION_WARNINGS -DNO_TCMALLOC -DDISABLE_NACL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"298539-1\" -DCR_XCODE_VERSION=0821 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DNS_BLOCK_ASSERTIONS=1 -DWEBRTC_RESTRICT_LOGGING -DEXPAT_RELATIVE_PATH -DHAVE_SCTP -DENABLE_EXTERNAL_AUTH -DHAVE_WEBRTC_VIDEO -DHAVE_WEBRTC_VOICE -DLOGGING_INSIDE_WEBRTC -DUSE_WEBRTC_DEV_BRANCH -DWEBRTC_ARCH_ARM -DWEBRTC_ARCH_ARM_V7 -DWEBRTC_HAS_NEON -DFEATURE_ENABLE_VOICEMAIL -DEXPAT_RELATIVE_PATH -DGTEST_RELATIVE_PATH -DNO_SOUND_SYSTEM -DWEBRTC_CHROMIUM_BUILD -DWEBRTC_POSIX -DWEBRTC_MAC -DWEBRTC_IOS -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -I../.. -Igen -I../../third_party/webrtc_overrides -I../../third_party -I../../third_party -I../../third_party/webrtc/modules/audio_coding/codecs/isac/main/include -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/webrtc/common_audio/resampler/include -I../../third_party/webrtc/common_audio/signal_processing/include -I../../third_party/webrtc/common_audio/vad/include -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -fcolor-diagnostics -arch armv7 -Wall -Werror -Wextra -Wundeclared-selector -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Os -gdwarf-2 -isysroot /b/build/slave/ios-device-xcode-clang/build/src/build/ios_files/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.2.sdk -stdlib=libc++ -miphoneos-version-min=9.0 -fvisibility=hidden -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -fvisibility-inlines-hidden -std=c++11 -fno-rtti -fno-exceptions -c ../../third_party/webrtc/modules/audio_processing/aec3/render_buffer.cc -o obj/third_party/webrtc/modules/audio_processing/audio_processing/render_buffer.o
../../third_party/webrtc/modules/audio_processing/aec3/render_buffer.cc:20:15: error: constructor for 'webrtc::RenderBuffer' must explicitly initialize the const member 'fft_'
RenderBuffer::RenderBuffer(Aec3Optimization optimization,
              ^
../../third_party/webrtc/modules/audio_processing/aec3/render_buffer.h:75:17: note: 'fft_' declared here
  const Aec3Fft fft_;
                ^

See https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Ftryserver.chromium.mac%2Fios-device-xcode-clang%2F70027%2F%2B%2Frecipes%2Fsteps%2Fcompile__with_patch_%2F0%2Fstdout

Original issue's description:
> Fixed error for missing explicit class initialization error on iOS buildbots
>
> TBR=henrik.lundin@webrtc.org
>
> BUG=webrtc:6018
>
> Review-Url: https://codereview.webrtc.org/2799813002
> Cr-Commit-Position: refs/heads/master@{#17549}
> Committed: 5ac18af71b

TBR=henrik.lundin@webrtc.org,peah@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6018

Review-Url: https://codereview.webrtc.org/2803933002
Cr-Commit-Position: refs/heads/master@{#17550}
2017-04-06 04:28:05 +00:00
peah
5ac18af71b Fixed error for missing explicit class initialization error on iOS buildbots
TBR=henrik.lundin@webrtc.org

BUG=webrtc:6018

Review-Url: https://codereview.webrtc.org/2799813002
Cr-Commit-Position: refs/heads/master@{#17549}
2017-04-05 22:10:34 +00:00
zijiehe
7343c8e09f DirectX capturer may crash after switching shared screen
The root cause is because the offset used in DxgiOutputDuplicator should always
depend on the position of the monitor in the system instead of the offset in the
target frame. Otherwise, once switching between two monitors with different
screen size, the updated region in the context would base on the old monitor,
and cause the copied regions to be out of the source DesktopFrame.
This issue also impacts the SpreadContextChange() function, the updated region
stores in the Context should also only depend on the position of the monitor.

BUG=chromium:706797

Review-Url: https://codereview.webrtc.org/2801433002
Cr-Commit-Position: refs/heads/master@{#17548}
2017-04-05 21:21:58 +00:00
peah
cf02cf13a7 Major AEC3 render pipeline changes
This CL adds major render pipeline changes to the AEC3 code. The reason
for these are that
1) It allows the echo removal unit to receive information about the content
in bands beyond band 0, thereby allowing removal of high-frequency
echoes
2) It allows more controlled handling of the render buffers, allowing proper
buffer behaviour during capture glitches and clock-drift.

Unfortunately, the render pipeline caused a lot of related changes in much
of the rest of the AEC3 files. Most of these are, however, caused by
a change of class name.

Another unfortunate effect of this CL, is that a number of unittest cease to
compile. I chose to temporarily solve that by removing them from the
build using #if/#endif. The reason for that is that those will anyway again
need to be changed in the next review, and doing like this avoids them
having to be reviewed twice.

BUG=webrtc:6018

Review-Url: https://codereview.webrtc.org/2784023002
Cr-Commit-Position: refs/heads/master@{#17547}
2017-04-05 21:18:07 +00:00
sakal
4aceaf268e Android: Move Histogram from api to src.
This class is already package-local.

BUG=webrtc:7172

Review-Url: https://codereview.webrtc.org/2799643003
Cr-Commit-Position: refs/heads/master@{#17546}
2017-04-05 19:18:59 +00:00
sakal
c522e758f6 Use new RTCCameraVideoCapturer in AppRTCMobile.
Because the new API doesn't use constraints, refactors settings to instead have a
video resolution setting.

BUG=webrtc:7177

Review-Url: https://codereview.webrtc.org/2778163005
Cr-Commit-Position: refs/heads/master@{#17545}
2017-04-05 19:17:48 +00:00
kwiberg
1ba21eb063 Add [c]begin() and [c]end() member functions to rtc::Buffer
I can't believe it's been this long before I found out we didn't have
them...

BUG=none

Review-Url: https://codereview.webrtc.org/2804673002
Cr-Commit-Position: refs/heads/master@{#17544}
2017-04-05 14:38:06 +00:00
alessiob
dea682d25b This CL fixes the following:
- snake_case -> CapWords
- compulsory docstring added
- style

A followup CL will fix remaining issues as raised by the next version of the WebRTC Python linter (update in progress).

BUG=webrtc:7218
NOTRY=True

Review-Url: https://codereview.webrtc.org/2793903006
Cr-Commit-Position: refs/heads/master@{#17543}
2017-04-05 14:25:33 +00:00
mbonadei
129fc9ce94 Enabling 'gn check' on //webrtc/tools.
BUG=webrtc:6828
NOTRY=True

Review-Url: https://codereview.webrtc.org/2799633002
Cr-Commit-Position: refs/heads/master@{#17542}
2017-04-05 14:14:31 +00:00
kjellander
c88b5d56ad Reland of PyLint fixes for tools-webrtc and webrtc/tools (patchset #1 id:1 of https://codereview.webrtc.org/2737233003/ )
Reason for revert:
Fixing errors for reland. I have tested that this does not make Chromium video quality tests fail.

Original issue's description:
> Revert of PyLint fixes for tools-webrtc and webrtc/tools (patchset #3 id:40001 of https://codereview.webrtc.org/2736233003/ )
>
> Reason for revert:
> Fails video quality tests in Chrome:  http://build.chromium.org/p/chromium.webrtc.fyi/builders/Win10%20Tester/builds/6568
> I should have looked more closer at those :(
>
> Original issue's description:
> > PyLint fixes for tools-webrtc and webrtc/tools
> >
> > Fix a lot of errors before bringing in the new config in
> > https://codereview.webrtc.org/2737963003/
> >
> > BUG=webrtc:7303
> > NOTRY=True
> >
> > Review-Url: https://codereview.webrtc.org/2736233003
> > Cr-Commit-Position: refs/heads/master@{#17137}
> > Committed: f5318e1f39
>
> TBR=oprypin@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7303
>
> Review-Url: https://codereview.webrtc.org/2737233003
> Cr-Commit-Position: refs/heads/master@{#17142}
> Committed: 94f4d9effc

NOTRY=true
BUG=webrtc:7312

Review-Url: https://codereview.webrtc.org/2741733003
Cr-Commit-Position: refs/heads/master@{#17541}
2017-04-05 13:42:43 +00:00
henrik.lundin
adf0635ed5 Make GetConfig() part of the AudioProcessing interface
BUG=chromium:708475
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_rel_ng

Review-Url: https://codereview.webrtc.org/2802603003
Cr-Commit-Position: refs/heads/master@{#17540}
2017-04-05 12:48:24 +00:00
nisse
368f5cf27e Replace use of system_wrappers/include/logging.h by base/logging.h.
BUG=webrtc:5118

Review-Url: https://codereview.webrtc.org/2781343002
Cr-Commit-Position: refs/heads/master@{#17539}
2017-04-05 12:00:33 +00:00
magjed
2299b0ab97 Android: Remove VideoCapturerAndroid
This class has been deprecated for a long time and has been replaced by
Camera1Capturer.

BUG=webrtc:7440

Review-Url: https://codereview.webrtc.org/2789183004
Cr-Commit-Position: refs/heads/master@{#17538}
2017-04-05 10:41:17 +00:00
ilnik
d60d06a9f9 Reland of Move video_encoder.h and video_decoder.h to /api and create GN targets for them (patchset #1 id:1 of https://codereview.webrtc.org/2794033002/ )
Reason for revert:
Reland with temporary deprecated API to not break chromium and google3.

Original issue's description:
> Revert of Move video_encoder.h and video_decoder.h to /api and create GN targets for them (patchset #8 id:140001 of https://codereview.webrtc.org/2780943003/ )
>
> Reason for revert:
> Suspect of breaking Chrome FYI bots.
>
> See
> https://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac%20Builder/builds/23065
> https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder
>
> Example logs:
> ../../content/renderer/media/gpu/rtc_video_encoder_unittest.cc:18:46: fatal error: third_party/webrtc/video_encoder.h: No such file or directory
>  #include "third_party/webrtc/video_encoder.h"
>                                               ^
>
> Original issue's description:
> > Move video_encoder.h and video_decoder.h to /api and create GN targets for them
> >
> > BUG=webrtc:5881
> > # Because PRESUBMIT ignores LINT blacklist for moved files and these
> > # headers have some not easy to resolve issues.
> > NOPRESUBMIT=True
> >
> > Review-Url: https://codereview.webrtc.org/2780943003
> > Cr-Commit-Position: refs/heads/master@{#17511}
> > Committed: c42f540570
>
> TBR=solenberg@webrtc.org,sprang@webrtc.org,ilnik@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:5881
>
> Review-Url: https://codereview.webrtc.org/2794033002
> Cr-Commit-Position: refs/heads/master@{#17514}
> Committed: 716d7ac5c1

TBR=solenberg@webrtc.org,sprang@webrtc.org,guidou@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5881

Review-Url: https://codereview.webrtc.org/2795163002
Cr-Commit-Position: refs/heads/master@{#17537}
2017-04-05 10:02:20 +00:00
nisse
d8ce1e172e Move SelectMediaType from RampUpTester to BaseTest.
This provides a better default for audio-only tests.

BUG=None

Review-Url: https://codereview.webrtc.org/2794193003
Cr-Commit-Position: refs/heads/master@{#17536}
2017-04-05 07:33:40 +00:00
asapersson
6eca98b7e5 Add histogram stats for number of cpu/quality adapt changes per minute for sent video streams:
- "WebRTC.Video.AdaptChangesPerMinute.Cpu"
- "WebRTC.Video.AdaptChangesPerMinute.Quality"

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2786593003
Cr-Commit-Position: refs/heads/master@{#17535}
2017-04-05 06:40:50 +00:00
zstein
d48dbda434 Add a minimal RtpTransport class for use by BaseChannel.
This will eventually implement webrtc::RtpTransportInterface from api/ortc.
It needs to live in the pc build target until the pc <- ortc dependency is inverted.

BUG=webrtc:7013

Review-Url: https://codereview.webrtc.org/2792223002
Cr-Commit-Position: refs/heads/master@{#17534}
2017-04-05 02:45:57 +00:00
jtteh
465faf0061 [iOS] Changed ptr to const ref for RTCConfiguration initialization
BUG=webrtc:7431

Review-Url: https://codereview.webrtc.org/2794193002
Cr-Commit-Position: refs/heads/master@{#17533}
2017-04-04 21:00:16 +00:00
yujo
ba13131f9a Trivial data() and mutable_data() implementations
This will allow migrating existing references to data_ over to data() and
mutable_data(), so that https://codereview.webrtc.org/2750783004/ can be
imported cleanly.

BUG=webrtc:7343
TBR=henrika@webrtc.org

Review-Url: https://codereview.webrtc.org/2795103002
Cr-Commit-Position: refs/heads/master@{#17532}
2017-04-04 20:40:59 +00:00
alessiob
baf9b58cb4 README.md with deps, build, usage, troubleshooting
BUG=webrtc:7218
NOTRY=True

Review-Url: https://codereview.webrtc.org/2722823002
Cr-Commit-Position: refs/heads/master@{#17531}
2017-04-04 14:27:03 +00:00
guidou
c3372583d4 Revert of Deliver video frames on Android, on the decode thread. (patchset #7 id:120001 of https://codereview.webrtc.org/2764573002/ )
Reason for revert:
Breaks Chrome FYI Android bots.

See:
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28L%20Nexus9%29/builds/20418
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28L%20Nexus6%29/builds/14724
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28L%20Nexus5%29/builds/20133
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28K%20Nexus5%29/builds/15111

Original issue's description:
> Deliver video frames on Android, on the decode thread.
>
> VideoCoding
> * Adding a method for polling for frames on Android only until the capture implementation takes care of this (longer term plan).
>
> CodecDatabase
> * Add an accessor for the current decoder
> * Use std::unique_ptr<> for ownership.
> * Remove "Release()" and "ReleaseDecoder()". Instead just delete.
> * Remove |friend| relationship between CodecDatabase and VCMGenericDecoder.
>
> VCMDecodedFrameCallback
> * DCHECKs for thread correctness.
> * Remove |lock_| now that a threading model has been established and verified.
>
> VCMGenericDecoder
> * All methods now have thread checks.
> * Variable access associated with thread checkers.
>
> VideoReceiver
> * Added two notification methods, DecoderThreadStarting() and DecoderThreadStopped()
>   * Allows us to establish a period when the decoder thread is not running and it is safe to modify variables such as callbacks, that are only read when the decoder thread is running.
>   * Allows us to DCHECK thread guarantees.
>   * Allows synchronizing callbacks from the module process thread and have them only active while the decoder thread is running.
>   * The above, allows us to establish two modes for the thread, single-threaded-mutable and multi-threaded-const.
>   * Using that knowledge, we can remove |receive_crit_| as well as locking for a number of member variables.
>
> MediaCodecVideoDecoder
> * Removed frame polling code from this class, since this is now done from the root thread function in VideoReceiveStream.
>
> VideoReceiveStream
> * On Android: Polls for decoded frames every 10ms (same interval as previously in MediaCodecVideoDecoder)
> * [Un]Registers the |video_receiver_| with the module thread only around the time the decoder thread is started/stopped.
> * Notifies the receiver of start/stop events of the decoder thread.
> * Changed the decoder thread to use the new PlatformThread callback type.
>
> BUG=webrtc:7361, 695438
>
> Review-Url: https://codereview.webrtc.org/2764573002
> Cr-Commit-Position: refs/heads/master@{#17527}
> Committed: e3aa88bbd5

TBR=sakal@webrtc.org,mflodman@webrtc.org,stefan@webrtc.org,tommi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7361, 695438

Review-Url: https://codereview.webrtc.org/2792033003
Cr-Commit-Position: refs/heads/master@{#17530}
2017-04-04 14:16:21 +00:00
alessiob
fbd4f85f2d Javascript audio player for the exported HTML file.
BUG=webrtc:7218
NOTRY=True

Review-Url: https://codereview.webrtc.org/2721023002
Cr-Commit-Position: refs/heads/master@{#17529}
2017-04-04 13:59:14 +00:00
asapersson
fab67071a4 Add number of quality adapt changes to VideoSendStream stats.
The stats will be used in an upcoming cl to track the rate of adapt changes.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2775173004
Cr-Commit-Position: refs/heads/master@{#17528}
2017-04-04 12:51:49 +00:00
tommi
e3aa88bbd5 Deliver video frames on Android, on the decode thread.
VideoCoding
* Adding a method for polling for frames on Android only until the capture implementation takes care of this (longer term plan).

CodecDatabase
* Add an accessor for the current decoder
* Use std::unique_ptr<> for ownership.
* Remove "Release()" and "ReleaseDecoder()". Instead just delete.
* Remove |friend| relationship between CodecDatabase and VCMGenericDecoder.

VCMDecodedFrameCallback
* DCHECKs for thread correctness.
* Remove |lock_| now that a threading model has been established and verified.

VCMGenericDecoder
* All methods now have thread checks.
* Variable access associated with thread checkers.

VideoReceiver
* Added two notification methods, DecoderThreadStarting() and DecoderThreadStopped()
  * Allows us to establish a period when the decoder thread is not running and it is safe to modify variables such as callbacks, that are only read when the decoder thread is running.
  * Allows us to DCHECK thread guarantees.
  * Allows synchronizing callbacks from the module process thread and have them only active while the decoder thread is running.
  * The above, allows us to establish two modes for the thread, single-threaded-mutable and multi-threaded-const.
  * Using that knowledge, we can remove |receive_crit_| as well as locking for a number of member variables.

MediaCodecVideoDecoder
* Removed frame polling code from this class, since this is now done from the root thread function in VideoReceiveStream.

VideoReceiveStream
* On Android: Polls for decoded frames every 10ms (same interval as previously in MediaCodecVideoDecoder)
* [Un]Registers the |video_receiver_| with the module thread only around the time the decoder thread is started/stopped.
* Notifies the receiver of start/stop events of the decoder thread.
* Changed the decoder thread to use the new PlatformThread callback type.

BUG=webrtc:7361, 695438

Review-Url: https://codereview.webrtc.org/2764573002
Cr-Commit-Position: refs/heads/master@{#17527}
2017-04-04 10:53:02 +00:00
alessiob
aa7d935cd5 Evaluation scores export library and CSS file for the exported HTML file
BUG=webrtc:7218
NOTRY=True

Review-Url: https://codereview.webrtc.org/2723703002
Cr-Commit-Position: refs/heads/master@{#17526}
2017-04-04 09:58:09 +00:00
alessiob
8edb8397f8 Reland of Export library that generates an HTLM file with the scores organized in tables. (patchset #1 id:1 of https://codereview.webrtc.org/2791293002/ )
Reason for revert:
Relanding https://codereview.webrtc.org/2717973006

BUG=webrtc:7218

Original issue's description:
> Revert of Export library that generates an HTLM file with the scores organized in tables. (patchset #3 id:40001 of https://codereview.webrtc.org/2717973006/ )
>
> Reason for revert:
> Issue with rebasing from depending CL
>
> Original issue's description:
> > Export library that generates an HTLM file with the scores organized in tables.
> >
> > BUG=webrtc:7218
> > NOTRY=True
> >
> > Review-Url: https://codereview.webrtc.org/2717973006
> > Cr-Commit-Position: refs/heads/master@{#17512}
> > Committed: 29e3330139
>
> TBR=aleloi@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7218
>
> Review-Url: https://codereview.webrtc.org/2791293002
> Cr-Commit-Position: refs/heads/master@{#17513}
> Committed: 880c85ba7e

TBR=aleloi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7218

Review-Url: https://codereview.webrtc.org/2798553002
Cr-Commit-Position: refs/heads/master@{#17525}
2017-04-04 09:36:24 +00:00
danilchap
fab482b326 Simplify RTPSender::RegisterRtpHeaderExtension
DCHECK instead of run-time check extension type is correct.

BUG=webrtc:1994

Review-Url: https://codereview.webrtc.org/2795723002
Cr-Commit-Position: refs/heads/master@{#17524}
2017-04-04 09:33:48 +00:00
kthelgason
55a0135484 Make sure we observe enough frames before scaling.
If the encoder takes a long time to start up and emit frames the polling
interval of the quality scaler would get out of sync. This causes it to
sometimes make scaling decisions based on only a handful of frames.
This CL ensures that we have observed some minimum number of frames
before deciding to scale up or down.

BUG=b/36734056

Review-Url: https://codereview.webrtc.org/2789483002
Cr-Commit-Position: refs/heads/master@{#17523}
2017-04-04 09:31:42 +00:00
buildbot
751c9dc904 Roll chromium_revision 581ff14023..75820eb165 (459789:460410)
Change log: 581ff14023..75820eb165
Full diff: 581ff14023..75820eb165

Changed dependencies:
* src/base: 52145f4993..6792d12fa4
* src/build: 55558c4eb0..133db8fa95
* src/ios: f5f17bbe4d..59e0612124
* src/testing: 554a1ebbe9..6320131fde
* src/third_party: 14e95b4f93..456a10fada
* src/third_party/catapult: 0cfeabf700..83f447ccc9
* src/tools: 0ef14c1d4d..513860a676
DEPS diff: 581ff14023..75820eb165/DEPS

Clang version changed 296321:298539
Details: 581ff14023..75820eb165/tools/clang/scripts/update.py

TBR=
BUG=None
NOTRY=True

Review-Url: https://codereview.webrtc.org/2785763002
Cr-Commit-Position: refs/heads/master@{#17522}
2017-04-04 09:14:11 +00:00
Henrik Kjellander
5115645c01 CQ: Remove Linux ARM64 Debug trybot from default set.
It appears recent changes in Chromium (crbug.com/708104) is causing
this to fail.
Need to disable this to unblock rolling.

BUG=webrtc:7024
TBR=oprypin@webrtc.org

Review-Url: https://codereview.webrtc.org/2790263003 .
Cr-Commit-Position: refs/heads/master@{#17521}
2017-04-04 08:59:33 +00:00
minyue
3153c6dce5 Fixing DTX unittest for AudioEncoderOpus.
BUG=None

Review-Url: https://codereview.webrtc.org/2785363002
Cr-Commit-Position: refs/heads/master@{#17520}
2017-04-04 06:34:39 +00:00
Henrik Kjellander
4271224aef CQ: Remove linux32_rel from default trybots
We need to unblock rolling.

BUG=webrtc:7413
TBR=ehmaldonado@webrtc.org

Review-Url: https://codereview.webrtc.org/2794203003 .
Cr-Commit-Position: refs/heads/master@{#17519}
2017-04-04 06:33:30 +00:00
sergeyu
0786c04f97 Fix crash in XServerPixelBuffer.
XServerPixelBuffer contains x_image_ field, that may be allocated using
XGetImage() or XShmCreateImage() depending how the last frame was captured.
x_image_ is passed XShmGetImage(), which may crash if it gets image
allocated with XGetImage(). Added x_shm_image_ to ensure that SHM and
non-SHM capture paths are separate and XShmGetImage() is allways called
with the correct XImage.

The linked bug appears to be a regressiona after
https://codereview.webrtc.org/2044693002

BUG=chromium:697823

Review-Url: https://codereview.webrtc.org/2796673002
Cr-Commit-Position: refs/heads/master@{#17518}
2017-04-04 01:08:08 +00:00
jtteh
4eeb53748a [iOS] Added an initialization method to RTCConfiguration that takes a
native configuration.
Added a getConfiguration getter method to RTCPeerConnection to return
the RTCConfiguration.

BUG=webrtc:7431

Review-Url: https://codereview.webrtc.org/2790833002
Cr-Commit-Position: refs/heads/master@{#17517}
2017-04-03 22:06:37 +00:00
zijiehe
9ab17d3478 Forward capturer_id to shared desktopframe
capturer_id() field has not been forward to the shared DesktopFrame.

BUG=650926, 679523

Review-Url: https://codereview.webrtc.org/2796583002
Cr-Commit-Position: refs/heads/master@{#17516}
2017-04-03 18:51:18 +00:00
deadbeef
c964d0b3fa Fixing some case-sensitive codec name comparisons.
As specified in RFC 4288, Section 4.2, and RFC 4855, Section 3, these
names should be case-insensitive. They already were being treated as
case-insensitive in some other places.

This bug was resulting in either a crash or no decoded video, depending
on the platform.

BUG=webrtc:6439, webrtc:7027

Review-Url: https://codereview.webrtc.org/2782273002
Cr-Commit-Position: refs/heads/master@{#17515}
2017-04-03 17:03:35 +00:00
guidou
716d7ac5c1 Revert of Move video_encoder.h and video_decoder.h to /api and create GN targets for them (patchset #8 id:140001 of https://codereview.webrtc.org/2780943003/ )
Reason for revert:
Suspect of breaking Chrome FYI bots.

See
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac%20Builder/builds/23065
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder

Example logs:
../../content/renderer/media/gpu/rtc_video_encoder_unittest.cc:18:46: fatal error: third_party/webrtc/video_encoder.h: No such file or directory
 #include "third_party/webrtc/video_encoder.h"
                                              ^

Original issue's description:
> Move video_encoder.h and video_decoder.h to /api and create GN targets for them
>
> BUG=webrtc:5881
> # Because PRESUBMIT ignores LINT blacklist for moved files and these
> # headers have some not easy to resolve issues.
> NOPRESUBMIT=True
>
> Review-Url: https://codereview.webrtc.org/2780943003
> Cr-Commit-Position: refs/heads/master@{#17511}
> Committed: c42f540570

TBR=solenberg@webrtc.org,sprang@webrtc.org,ilnik@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5881

Review-Url: https://codereview.webrtc.org/2794033002
Cr-Commit-Position: refs/heads/master@{#17514}
2017-04-03 16:15:52 +00:00
alessiob
880c85ba7e Revert of Export library that generates an HTLM file with the scores organized in tables. (patchset #3 id:40001 of https://codereview.webrtc.org/2717973006/ )
Reason for revert:
Issue with rebasing from depending CL

Original issue's description:
> Export library that generates an HTLM file with the scores organized in tables.
>
> BUG=webrtc:7218
> NOTRY=True
>
> Review-Url: https://codereview.webrtc.org/2717973006
> Cr-Commit-Position: refs/heads/master@{#17512}
> Committed: 29e3330139

TBR=aleloi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7218

Review-Url: https://codereview.webrtc.org/2791293002
Cr-Commit-Position: refs/heads/master@{#17513}
2017-04-03 15:46:58 +00:00
alessiob
29e3330139 Export library that generates an HTLM file with the scores organized in tables.
BUG=webrtc:7218
NOTRY=True

Review-Url: https://codereview.webrtc.org/2717973006
Cr-Commit-Position: refs/heads/master@{#17512}
2017-04-03 15:39:06 +00:00
ilnik
c42f540570 Move video_encoder.h and video_decoder.h to /api and create GN targets for them
BUG=webrtc:5881
# Because PRESUBMIT ignores LINT blacklist for moved files and these
# headers have some not easy to resolve issues.
NOPRESUBMIT=True

Review-Url: https://codereview.webrtc.org/2780943003
Cr-Commit-Position: refs/heads/master@{#17511}
2017-04-03 15:37:32 +00:00
alessiob
eb4662a64d Single simulation runner.
BUG=webrtc:7218
NOTRY=True

Review-Url: https://codereview.webrtc.org/2720203003
Cr-Commit-Position: refs/heads/master@{#17510}
2017-04-03 15:34:46 +00:00