5549 Commits

Author SHA1 Message Date
Henrik Lundin
156af4ae61 neteq_rtpplay: Add buffer size (target and current) to print-out
Bug: none
Change-Id: Id940471235e9f54e1e46569c74255759a891395d
Reviewed-on: https://webrtc-review.googlesource.com/24100
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20783}
2017-11-20 08:07:30 +00:00
Magnus Jedvert
df4883dbf0 Reland "Update internal encoder factory to new interface"
This is a reland of 2c8c8e26fc58a0f2789b7a5cd2646a8319c14d3e
Original change's description:
> Update internal encoder factory to new interface
>
> TBR=stefan@webrtc.org
>
> Bug: webrtc:7925
> Change-Id: I0bb97acdf0d58a9ce531ecdd672bb17ef96360df
> Reviewed-on: https://webrtc-review.googlesource.com/21162
> Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20717}

TBR=andersc@webrtc.org,brandt@webrtc.org,stefan@webrtc.org

Bug: webrtc:7925
Change-Id: I0d269b3edb029e372a36c3b461a577bca2b6d0cb
Reviewed-on: https://webrtc-review.googlesource.com/24000
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20747}
2017-11-18 10:48:28 +00:00
lliuu
dc1e3e8414 Fix excessive audio device logging on Windows
Reverted the logic introduced in https://codereview.webrtc.org/2933953003
This is because the audio device buffer behavior changed with https://codereview.webrtc.org/3009193002, and the RequestPlayoutData method now returns number of samples in each channel, which creates mismatch the reverted CL.

Bug: webrtc:8548
Change-Id: Id4711ca48437ddd3483327c2a4c7827d09e5b770
Reviewed-on: https://webrtc-review.googlesource.com/24122
Reviewed-by: Niklas Enbom <niklas.enbom@webrtc.org>
Commit-Queue: Lu Liu <lliuu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20737}
2017-11-17 20:00:31 +00:00
Per Åhgren
38e2d95bda AEC3 delay estimator refactoring and introducing ability to customize
This CL refactors the delay estimator in AEC3.
Furthermore, it adds:
1. Allow for a customized delay estimator behavior to simplify
development.
2. Exposes that behavior to clear configuration settings.
3. Adds logging of the delay range supported by the delay
estimator.

Bug: webrtc:8519
Change-Id: I1764a090519a78b021b2e7de565c52a6c02c848e
Reviewed-on: https://webrtc-review.googlesource.com/21166
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20733}
2017-11-17 17:51:37 +00:00
Ilya Nikolaevskiy
76f2a85027 In generic encoder ensure capture timestamp is preserved.
Because some hardware encoders may not preserve capture timestamp, use
rtp timestamp as a key to capture time storage and restore corrupted
capture timestamps whenever possible.

Bug: webrtc:8497
Change-Id: Ib3449313c65e864a89cd645a3f5dec99aa9cf8e4
Reviewed-on: https://webrtc-review.googlesource.com/23620
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20732}
2017-11-17 16:06:17 +00:00
Oskar Sundbom
12ab00b4d8 Optional: Use nullopt and implicit construction in /modules/audio_coding
Changes places where we explicitly construct an Optional to instead use
nullopt or the requisite value type only.

This CL was uploaded by git cl split.

R=kwiberg@webrtc.org

Bug: None
Change-Id: I055411a3e521964c81100869a197dd92f5608f1b
Reviewed-on: https://webrtc-review.googlesource.com/23619
Commit-Queue: Oskar Sundbom <ossu@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20728}
2017-11-17 11:58:37 +00:00
Patrik Höglund
f715c53bca Fix circular deps in common_audio.
This makes it easier to import cleanly downstream, and makes it
a lot easier to reason about.

Bug: webrtc:6828
Change-Id: I953e129de73053f8619333fe7e318b36e3a1fffa
Reviewed-on: https://webrtc-review.googlesource.com/22722
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20727}
2017-11-17 11:20:17 +00:00
Sebastian Jansson
feee08f4da Marked UnwrapWithoutUpdate function as const
Bug: webrtc:8415
Change-Id: Ic38622fce9d504b16ef5d586973fb03535a5150c
Reviewed-on: https://webrtc-review.googlesource.com/23980
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20726}
2017-11-17 10:32:26 +00:00
henrika
32026c3078 Removes Set/GetLoudspeakerStatus APIs from the ADM.
int32_t SetLoudspeakerStatus(bool enable)
int32_t GetLoudspeakerStatus(bool* enabled) const

These APIs are only implemented on iOS and they do not belong in the
native audio layer since the client can achieve the same functionality
by using the shared audio session in sdk/objc/Framework/Headers/WebRTC/RTCAudioSession.h.
It also gives the client a better flexibility in how the audio routing is done.

Bug: webrtc:7306
Change-Id: I853e2f57e0f5ae0a0f9fc4729ce961d81f92588b
Reviewed-on: https://webrtc-review.googlesource.com/23740
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20721}
2017-11-16 19:44:24 +00:00
Zhi Huang
aea84f5519 Revert "Update internal encoder factory to new interface"
This reverts commit 2c8c8e26fc58a0f2789b7a5cd2646a8319c14d3e.

Reason for revert: Broke the internal projects.

Original change's description:
> Update internal encoder factory to new interface
> 
> TBR=stefan@webrtc.org
> 
> Bug: webrtc:7925
> Change-Id: I0bb97acdf0d58a9ce531ecdd672bb17ef96360df
> Reviewed-on: https://webrtc-review.googlesource.com/21162
> Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20717}

TBR=brandtr@webrtc.org,magjed@webrtc.org,andersc@webrtc.org,stefan@webrtc.org

Change-Id: I989070277885ee70fe6b38272d0001cff890f3ef
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7925
Reviewed-on: https://webrtc-review.googlesource.com/23780
Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20720}
2017-11-16 18:46:35 +00:00
Magnus Jedvert
2c8c8e26fc Update internal encoder factory to new interface
TBR=stefan@webrtc.org

Bug: webrtc:7925
Change-Id: I0bb97acdf0d58a9ce531ecdd672bb17ef96360df
Reviewed-on: https://webrtc-review.googlesource.com/21162
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20717}
2017-11-16 17:55:24 +00:00
Danil Chapovalov
c0fd5f97a8 Add Thread-safe wrapper for RtcpTransceiver
Bug: webrtc:8239
Change-Id: I4cc2f7f2b27c764e1aae734f933902102b345614
Reviewed-on: https://webrtc-review.googlesource.com/21680
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20714}
2017-11-16 15:12:03 +00:00
Gustaf Ullberg
fe4d673393 Compute ERL over all frequency bins in AEC3.
Bug: webrtc:8533
Change-Id: I7160361b3468bb24cef9e6d390f10b23b988edd3
Reviewed-on: https://webrtc-review.googlesource.com/23242
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20713}
2017-11-16 14:40:33 +00:00
Sebastian Jansson
8d9c5406c7 Deprecated BitrateController::CreateRtcpBandwidthObserver.
The RtcpBandwidthObserverImpl did not provide any features that a raw pointer does not have. deprecating it to simplify further refactoring down the line. Preferring raw pointer usage as it provides equivalent functionality in less code.


Bug: webrtc:8415
Change-Id: Id2c4c73a331835f124da8d308615ca2ce34b2d1b
Reviewed-on: https://webrtc-review.googlesource.com/22500
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20712}
2017-11-16 13:52:03 +00:00
Oskar Sundbom
18f26d1434 Optional: Use nullopt and implicit construction in /modules/remote_bitrate_estimator
Changes places where we explicitly construct an Optional to instead use
nullopt or the requisite value type only.

This CL was uploaded by git cl split.

R=terelius@webrtc.org

Bug: None
Change-Id: I1d2538482e2390d91f3285124d011a578da4b61b
Reviewed-on: https://webrtc-review.googlesource.com/23564
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Oskar Sundbom <ossu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20710}
2017-11-16 12:42:24 +00:00
Gustaf Ullberg
c9b89aaa16 Compute ERLE over all frequency bins in AEC3.
Bug: webrtc:8533
Change-Id: I0a373f22ec377b226d3bc7d88d3245a99e18c7a0
Reviewed-on: https://webrtc-review.googlesource.com/23621
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20709}
2017-11-16 12:37:03 +00:00
Ilya Nikolaevskiy
8b64fd8a85 Reland of "Use moving median filters in RemoteNtpTimeEstimator, RtpToNtpEstimator""
Use moving median filters in RemoteNtpTimeEstimator, RtpToNtpEstimator

If Webrtc-ClockEstimation experiment is enabled, median filtering is
applied to results of RtpToNtpEstimator and RemoteNtpEstimator to smooth
out random errors introduced by incorrect RTCP SR reports and networking delays.

Bug: webrtc:8468
Change-Id: I592c4083fefc0dbdebe7b3ff30b92e95ba337595

NOTRY=TRUE
NOPRESUBMIT=TRUE

Change-Id: I592c4083fefc0dbdebe7b3ff30b92e95ba337595
Reviewed-on: https://webrtc-review.googlesource.com/23263
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20708}
2017-11-16 12:10:04 +00:00
Danil Chapovalov
84c1a15d3c Remove deprecated field names in struct RTCPReportBlock
Bug: webrtc:8033
Change-Id: Ic7ea4fdd6cd30a2a490f1bd9fdd9a4f0a4d51f4a
Reviewed-on: https://webrtc-review.googlesource.com/23262
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20706}
2017-11-16 11:15:43 +00:00
henrika
1a0e896ba8 Restores state of WebRtcAudioRecord to 2017-05-26
Bug: b/32742417
Change-Id: I06e198b8ce1c3f05bc05436a160bff25d5d9fa59
Reviewed-on: https://webrtc-review.googlesource.com/23241
Reviewed-by: Alex Glaznev <glaznev@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20704}
2017-11-16 09:00:58 +00:00
henrika
c97cf03ede Removes unused sample-rate APIs from the ADM.
The following four methods are removed:

SetRecordingSampleRate(const uint32_t samplesPerSec)
RecordingSampleRate(uint32_t* samplesPerSec) const
SetPlayoutSampleRate(const uint32_t samplesPerSec)
PlayoutSampleRate(uint32_t* samplesPerSec) const

Bug: webrtc:7306
Change-Id: I2c3c2e7bd3fb1264da197699fd5de15ab6c35c1b
Reviewed-on: https://webrtc-review.googlesource.com/22001
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20703}
2017-11-16 08:59:53 +00:00
Oleh Prypin
6581f21f0e Fix some missed stdlib includes
Ran into these when trying a newer libstdc++

Bug: None
Change-Id: Ie3ce0ae1ae1e6da1a15476fbf942b48b37adc9fa
Reviewed-on: https://webrtc-review.googlesource.com/23501
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20701}
2017-11-16 08:50:44 +00:00
Mirko Bonadei
f6703c4dcb Revert "Use moving median filters in RemoteNtpTimeEstimator, RtpToNtpEstimator"
This reverts commit 550b666e20a13f9c22effce878a8e0078a0f7bad.

Reason for revert: breaks downstream projects.

Original change's description:
> Use moving median filters in RemoteNtpTimeEstimator, RtpToNtpEstimator
> 
> If Webrtc-ClockEstimation experiment is enabled, median filtering is
> applied to results of RtpToNtpEstimator and RemoteNtpEstimator to smooth
> out random errors introduced by incorrect RTCP SR reports and networking
> delays.
> 
> Bug: webrtc:8468
> Change-Id: Iec6d094d2809d1efeb0b9483059167d9a03880da
> Reviewed-on: https://webrtc-review.googlesource.com/22682
> Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Reviewed-by: Åsa Persson <asapersson@webrtc.org>
> Reviewed-by: Per Kjellander <perkj@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20682}

TBR=ilnik@webrtc.org,asapersson@webrtc.org,perkj@webrtc.org

Change-Id: I17345d912bbaf635612c9b399d5f9166de818190
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8468
Reviewed-on: https://webrtc-review.googlesource.com/23320
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20689}
2017-11-15 16:14:42 +00:00
Ilya Nikolaevskiy
550b666e20 Use moving median filters in RemoteNtpTimeEstimator, RtpToNtpEstimator
If Webrtc-ClockEstimation experiment is enabled, median filtering is
applied to results of RtpToNtpEstimator and RemoteNtpEstimator to smooth
out random errors introduced by incorrect RTCP SR reports and networking
delays.

Bug: webrtc:8468
Change-Id: Iec6d094d2809d1efeb0b9483059167d9a03880da
Reviewed-on: https://webrtc-review.googlesource.com/22682
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20682}
2017-11-15 11:24:30 +00:00
mallikarjun82
12e555b715 Delete wrapper API ConvertToI420 for YUV conversion to I420
Directly use the libyuv API for YUV conversion to I420

Bug: None
Change-Id: Iea6e8fa8f7179c800ea850305170002398cb00dc
Reviewed-on: https://webrtc-review.googlesource.com/17260
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Alex Glaznev <glaznev@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20681}
2017-11-15 11:10:20 +00:00
Lu Liu
1b23e3782c Add the new CreateAudioDeviceWithDataObserver to header file
Bug: webrtc:8528
Change-Id: If34dc9d3b6592e8f0003caf528b27177ea7bd56a
Reviewed-on: https://webrtc-review.googlesource.com/23005
Commit-Queue: Lu Liu <lliuu@webrtc.org>
Commit-Queue: Niklas Enbom <niklas.enbom@webrtc.org>
Reviewed-by: Niklas Enbom <niklas.enbom@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20679}
2017-11-14 22:07:59 +00:00
Danil Chapovalov
651707bdf0 Remove deprecated SetREMB functions from RtpRtcp
Bug: None
Change-Id: I8b299d8e83d99fc2d074df876c95ca2680226efa
Reviewed-on: https://webrtc-review.googlesource.com/22061
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20676}
2017-11-14 18:21:46 +00:00
Ilya Nikolaevskiy
b9fb78f425 Cap amount of warning log messages in generic encoder
Bug: None
Change-Id: I4fe2f027eb92c59eb901c88bf244300252588c27
Reviewed-on: https://webrtc-review.googlesource.com/22921
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20674}
2017-11-14 16:53:36 +00:00
Magnus Jedvert
ee92d626bd Update VideoEncoderSoftwareFallbackWrapper to take VideoEncoder as arg
VideoEncoderSoftwareFallbackWrapper is updated to take a VideoEncoder as
argument instead relying on built-in SW codecs. The purpose is to make
VideoEncoderSoftwareFallbackWrapper more modular and not depend on
built-in SW encoders.

Bug: webrtc:7925
Change-Id: I99896f0751cfb77e01efd29c97d3bd07bdb2c7c0
Reviewed-on: https://webrtc-review.googlesource.com/22320
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20671}
2017-11-14 10:47:46 +00:00
Ilya Nikolaevskiy
558cabf670 Refactor RtpToNtpEstimator and MovingMedianFilter
In preparation for a new remote clock estimation:
RtpToNtpEstimator will now store unwrapped rtp timestamps in
|measurements| and |calculated| flag is out of |Parameters| struct.

Additional missing |Reset| method added to MovingMedianFilter and
PercentileFilter

Bug: webrtc:8468
Change-Id: I1bb454ba0c93720cbb30bfded19677daaf9f721c
Reviewed-on: https://webrtc-review.googlesource.com/22020
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20669}
2017-11-14 10:34:56 +00:00
henrika
8962b54a43 Removes Set/GetRecordingChannel() from the ADM
These two unused APIs are removed:

SetRecordingChannel(const ChannelType channel)
RecordingChannel(ChannelType* channel) const

Bug: webrtc:7306
Change-Id: I3289c4b9a5eebb64cc0aa3a1c1144e9c4d6a661d
Reviewed-on: https://webrtc-review.googlesource.com/22681
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20667}
2017-11-14 08:30:16 +00:00
Mirko Bonadei
61a7b141eb Removing conditional visibility.
Conditional visibility is complex to maintain and it is not well
supported by other build systems.

This CL removes it and falls back on the more relaxed visibility value
("*" in this case).
It is not a problem because the targets that are using conditional
visibility are all marked as "testonly" and this is probably enough to
keep the build graph clean.

Bug: None
Change-Id: I2d2b5ac9a02d08c2863950116db455976ee1459c
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/14902
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20658}
2017-11-13 15:39:11 +00:00
Danil Chapovalov
d328229d38 Add sending REMB support to RtcpTransceiver
Bug: webrtc:8239
Change-Id: If22de91a69b5752baf616520a247f2fdedacc220
Reviewed-on: https://webrtc-review.googlesource.com/22080
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20657}
2017-11-13 14:50:11 +00:00
Patrik Höglund
b5b5bcee72 Separate i420 and i444 implementations to separate targets.
This means we can properly declare the dependency between
libjingle_peerconnection_api and video_frame_api. i420
pulls in system_wrappers, which can't be a dependency of
the public API.

Plan:
1) Land this CL + send out PSA
2) Make all direct users of i420_buffer depend on the
   new video_frame_api_i420 target
3) Move i420_buffer.cc to the new target
4) Make libjingle_peerconnection_api depend on
   video_frame_api, since it no longer contains i420 code

Bug: webrtc:7504
Change-Id: I30d90f2ac7af53748859bbde8aed92386d5501f9
Reviewed-on: https://webrtc-review.googlesource.com/9382
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20656}
2017-11-13 14:27:39 +00:00
Magnus Jedvert
46a2765c56 Reland "Update internal SW codecs to return unique_ptrs"
This reverts commit 34c8e6bce8af0c31f2b0b31d691a6a931fa3cb7b.

Reason for revert: Fix Android compilation

Original change's description:
> Revert "Update internal SW codecs to return unique_ptrs"
>
> This reverts commit 4fe6adc06a8524ac25f85260bfe392eb31dae6b4.
>
> Reason for revert: Breaks android compile.
>
> Original change's description:
> > Update internal SW codecs to return unique_ptrs
> >
> > TBR=stefan@webrtc.org
> >
> > Bug: webrtc:7925
> > Change-Id: I84239b071a2608d928f09b06809090eec5eafb14
> > Reviewed-on: https://webrtc-review.googlesource.com/21165
> > Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> > Reviewed-by: Erik Språng <sprang@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#20650}
>
> TBR=magjed@webrtc.org,sprang@webrtc.org,stefan@webrtc.org
>
> Change-Id: If33c3a0ee0dfce63d105558a2897a472f0633306
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:7925
> Reviewed-on: https://webrtc-review.googlesource.com/22540
> Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20652}

TBR=magjed@webrtc.org,sprang@webrtc.org,stefan@webrtc.org

Change-Id: Ic8551af4687e927c9b605060155abdd5bc6208b2
Bug: webrtc:7925
Reviewed-on: https://webrtc-review.googlesource.com/22541
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20655}
2017-11-13 14:23:58 +00:00
henrika
616e3138b8 Removes id parameter in ADM factory method (reland)
Second attempt to land https://webrtc-review.googlesource.com/c/src/+/21980

Bug: webrtc:7306
Change-Id: Idbbb6d5371b154247ea3db55c28e5c0618c4fae1
Reviewed-on: https://webrtc-review.googlesource.com/22480
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20653}
2017-11-13 13:28:18 +00:00
Magnus Jedvert
34c8e6bce8 Revert "Update internal SW codecs to return unique_ptrs"
This reverts commit 4fe6adc06a8524ac25f85260bfe392eb31dae6b4.

Reason for revert: Breaks android compile.

Original change's description:
> Update internal SW codecs to return unique_ptrs
> 
> TBR=stefan@webrtc.org
> 
> Bug: webrtc:7925
> Change-Id: I84239b071a2608d928f09b06809090eec5eafb14
> Reviewed-on: https://webrtc-review.googlesource.com/21165
> Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20650}

TBR=magjed@webrtc.org,sprang@webrtc.org,stefan@webrtc.org

Change-Id: If33c3a0ee0dfce63d105558a2897a472f0633306
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7925
Reviewed-on: https://webrtc-review.googlesource.com/22540
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20652}
2017-11-13 13:02:30 +00:00
Åsa Persson
eb4500701b Remove use of SetEncodingDataInternal in MediaOptimization.
Add method FilenameWithParams to TestConfig.

Bug: none
Change-Id: I9f683e661537148dc01bee25f7510938fa656dc5
Reviewed-on: https://webrtc-review.googlesource.com/21382
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20651}
2017-11-13 12:39:48 +00:00
Magnus Jedvert
4fe6adc06a Update internal SW codecs to return unique_ptrs
TBR=stefan@webrtc.org

Bug: webrtc:7925
Change-Id: I84239b071a2608d928f09b06809090eec5eafb14
Reviewed-on: https://webrtc-review.googlesource.com/21165
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20650}
2017-11-13 12:31:18 +00:00
Åsa Persson
45bbc8ac19 Change forced software encoder fallback for VP8 to be only based on resolution and not bitrate.
Switches from VP8 HW to VP8 SW for resolutions <= max_pixels. 

|<- min_pixels  VP8 SW  max_pixels ->|  VP8 HW  |

Bug: webrtc:6634
Change-Id: Ib324df2b8418659c29d999259c0ed47448310696
Reviewed-on: https://webrtc-review.googlesource.com/7362
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20646}
2017-11-13 10:58:42 +00:00
Lu Liu
cda2562b06 Revert "Removes id parameter in ADM factory method"
This reverts commit cba3d274daaf57b3c6e8bc6cd10b959cf2ec73bf.

Reason for revert: Breaking internal projects

Original change's description:
> Removes id parameter in ADM factory method
> 
> Bug: webrtc:7306
> Change-Id: I1c9def8c9bcd30da245ecf1894670f4b492547fc
> Reviewed-on: https://webrtc-review.googlesource.com/21980
> Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
> Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20630}

TBR=solenberg@webrtc.org,henrika@webrtc.org

Change-Id: Ie60a44d64df28ec8779305f3c7e3b071100c643f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7306
Reviewed-on: https://webrtc-review.googlesource.com/22200
Reviewed-by: Lu Liu <lliuu@webrtc.org>
Commit-Queue: Lu Liu <lliuu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20637}
2017-11-10 19:32:20 +00:00
Emircan Uysaler
574eaa4cda Add alpha channel to VideoFrameBuffer containers
- Add alpha accessors to PlanarYuvBuffer interface, null by defualt.
- Add WrapI420ABuffer() that creates a container which implements these
accessors.
- Show the use via StereoDecoderAdapter.

This CL is the step 2 for adding alpha channel support over the wire in webrtc.
See https://webrtc-review.googlesource.com/c/src/+/7800 for the experimental
CL that gives an idea about how it will come together.
Design Doc: https://goo.gl/sFeSUT

Bug: webrtc:7671
Change-Id: Id5691cde00088ec811b63d89080d33ad2d6e3939
Reviewed-on: https://webrtc-review.googlesource.com/21130
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Emircan Uysaler <emircan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20635}
2017-11-10 17:13:25 +00:00
Mirko Bonadei
0ec39e2d0f Switching to RTC_ prefixed LOG macros.
Unprefixed LOG macros will be removed on 10/11/2017, this CL just
switch some LOG macros to RTC_LOG.

TBR=ilnik@webrtc.org,sprang@webrtc.org

Bug: webrtc:8452
Change-Id: I3828c145897818ded56d342eba5f7496431715a4
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/22083
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20633}
2017-11-10 15:39:46 +00:00
Ilya Nikolaevskiy
e0da9eab5f Don't count frames passed to VP8 BWE disabled streams as being encoded
This excludes these frames from being counted as dropped by encoder.
Also fix bitrate projected distribution for vp9 svc for outliers
detection.

Bug: webrtc:8497
Change-Id: Id37487456170c61e2323a660668f0c319ea5831d
Reviewed-on: https://webrtc-review.googlesource.com/21223
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20632}
2017-11-10 15:11:25 +00:00
henrika
cba3d274da Removes id parameter in ADM factory method
Bug: webrtc:7306
Change-Id: I1c9def8c9bcd30da245ecf1894670f4b492547fc
Reviewed-on: https://webrtc-review.googlesource.com/21980
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20630}
2017-11-10 13:11:05 +00:00
Niels Möller
c241af9cca Add timing info to all encoded frames.
Even if we're not going to transmit any timing info over the wire.

Bug: webrtc:8504
Change-Id: Id54192a10e6b2a6a2cb57a2ff6b28fc0d16e471d
Reviewed-on: https://webrtc-review.googlesource.com/21160
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20628}
2017-11-10 12:15:35 +00:00
Danil Chapovalov
d2f37d85bd Add Incoming packet handler to RtcpTransceiver
Bug: webrtc:8239
Change-Id: Iebe1b6a2649f01e4f6e3780ac96cb05611d8671c
Reviewed-on: https://webrtc-review.googlesource.com/17560
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20624}
2017-11-09 19:55:43 +00:00
Magnus Jedvert
7501b1c3d1 Reland "Update internal video decoder factory to new interface"
This reverts commit 267d84baf0597f89a3d1f66d323db754bc5d9239.

Reason for reland: Fix the bug; decoder is not allowed to ever be null and we need to use a
NullVideoDecoder that ignores calls instead.

Original change's description:
> Revert "Update internal video decoder factory to new interface"
>
> This reverts commit b2fc9b1b104240e68047901309deaee3e8b94bea.
>
> Reason for revert: Suspected to cause failures on Android bots on webrtc.fyi, see https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28K%20Nexus5%29/builds/21051
>
> Original change's description:
> > Update internal video decoder factory to new interface
> >
> > We want to move away from cricket::WebRtcVideoDecoderFactory and this CL
> > updates the internal factory. Also, VideoDecoderSoftwareFallbackWrapper
> > is updated to take a VideoDecoder as argument instead of a factory so it
> > can be used with external SW decoders.
> >
> > Bug: webrtc:7925
> > Change-Id: Ie6dc6c24f8610a2129620c6e2b42e3cebb2ddef7
> > Reviewed-on: https://webrtc-review.googlesource.com/7301
> > Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#20597}
>
> TBR=brandtr@webrtc.org,magjed@webrtc.org,andersc@webrtc.org
>
> Change-Id: I0a12c98fdc30f00d58c85ee7e088f50160d39724
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:7925
> Reviewed-on: https://webrtc-review.googlesource.com/21420
> Reviewed-by: Christian Fremerey <chfremer@webrtc.org>
> Commit-Queue: Christian Fremerey <chfremer@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20605}

TBR=brandtr@webrtc.org,magjed@webrtc.org,andersc@webrtc.org,chfremer@webrtc.org,chfremer@google.com

Change-Id: I6cf5794dc3fadfa86809a94da80b69dbb4c56f52
No-Try: true
Bug: webrtc:7925
Reviewed-on: https://webrtc-review.googlesource.com/21541
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20623}
2017-11-09 14:29:12 +00:00
henrika
34029e209d Removes usage of AudioRecord.Builder on Android
NOTRY=TRUE

Bug: b/32742417
Change-Id: Ib56e3d9da45b3d3fbe8b1658aaf6d97a99ea1886
Reviewed-on: https://webrtc-review.googlesource.com/18461
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Alex Glaznev <glaznev@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20621}
2017-11-09 13:18:02 +00:00
Danil Chapovalov
d4fdc27b91 Introduce MicrosecondsToCompactNtp function
webrtc clocks use 10based fraction time to calculate intervals.
Rtcp require 16based fraction time to report intervals.

Bug: webrtc:8239
Change-Id: I25cab5ad7b7614c86c174813a195e7ba767ee43b
Reviewed-on: https://webrtc-review.googlesource.com/21383
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20619}
2017-11-09 12:44:22 +00:00
Mirko Bonadei
675513b96a Stop using LOG macros in favor of RTC_ prefixed macros.
This CL has been generated with the following script:

for m in PLOG \
  LOG_TAG \
  LOG_GLEM \
  LOG_GLE_EX \
  LOG_GLE \
  LAST_SYSTEM_ERROR \
  LOG_ERRNO_EX \
  LOG_ERRNO \
  LOG_ERR_EX \
  LOG_ERR \
  LOG_V \
  LOG_F \
  LOG_T_F \
  LOG_E \
  LOG_T \
  LOG_CHECK_LEVEL_V \
  LOG_CHECK_LEVEL \
  LOG
do
  git grep -l $m | xargs sed -i "s,\b$m\b,RTC_$m,g"
done
git checkout rtc_base/logging.h
git cl format

Bug: webrtc:8452
Change-Id: I1a53ef3e0a5ef6e244e62b2e012b864914784600
Reviewed-on: https://webrtc-review.googlesource.com/21325
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20617}
2017-11-09 11:56:32 +00:00