Commit Graph

4829 Commits

Author SHA1 Message Date
9561183708 Changed mixing to be done at the minimal possible frequency.
This change changes mixing to be done at the lowest possible
APM-native rate that does not lead to quality loss. An Audio
Processing-native rate is one of 8, 16, 32, or 48 kHz. Mixing at a
lower sampling rate and avoiding resampling can in many cases lead to
big efficiency improvements, as reported by experiments.

This CL also fixes a design issue with the AudioMixer: audio at
non-native rates is no longer fed to the APM instance which is the
limiter.

NOTRY=True
BUG=webrtc:6346

Review-Url: https://codereview.webrtc.org/2458703002
Cr-Commit-Position: refs/heads/master@{#14980}
2016-11-08 14:39:58 +00:00
6eaa55867b Disabling NOTREACHED which we're hitting flakily in browser tests.
I have no idea how bad it is that we're hitting this limit; I'm just
doing this to stop the tests from flaking.

BUG=webrtc:6484

Review-Url: https://codereview.webrtc.org/2477663002
Cr-Commit-Position: refs/heads/master@{#14974}
2016-11-08 13:32:07 +00:00
79e05888e8 Set actual transport overhead in rtp_rtcp
BUG=webrtc:6557

Review-Url: https://codereview.webrtc.org/2437503004
Cr-Commit-Position: refs/heads/master@{#14968}
2016-11-08 10:50:16 +00:00
9ed35a4bd3 Fix forward declaration typo in UlpfecGenerator.
BUG=webrtc:5654
NOTRY=true

Review-Url: https://codereview.webrtc.org/2481343004
Cr-Commit-Position: refs/heads/master@{#14963}
2016-11-08 08:29:06 +00:00
556f49d6b6 Remove the requirement of D3D_FEATURE_LEVEL_11_0, but export the D3D_FEATURE_LEVEL through APIs
D3D_FEATURE_LEVEL_11_0 is not offically documented on MSDN to be a requirement
of DXGI duplicator APIs. So instead of using D3D_FEATURE_LEVEL_11_0 as a
requirement in D3dDevice::Initialize(), this change adds a
ScreenCapturerWinDirectx::SupportedFeatureLevel() function to retrieves minimum
and maximium for further reference (in HostTraits to control the experiment).

BUG=314516

Review-Url: https://codereview.webrtc.org/2468083002
Cr-Commit-Position: refs/heads/master@{#14962}
2016-11-08 02:35:19 +00:00
6f601afcf4 Disable ScreenCapturerIntegrationTests because of flaky
ScreenCapturerIntegrationTests are still flaky on Windows.

BUG=webrtc:6666

TBR=kjellander@webrtc.org

Review-Url: https://codereview.webrtc.org/2486553002
Cr-Commit-Position: refs/heads/master@{#14961}
2016-11-08 00:38:44 +00:00
fce4905987 Implement and use new DesktopCapturer APIs in WebRTC
This change replaces all GetWindowList / GetScreenList with GetScreenList,
SelectWindow / SelectScreen with SelectSource, and BringSelectedWindowToFront
with FocusOnSelectedSource in WebRTC.

BUG=webrtc:6513

Review-Url: https://codereview.webrtc.org/2479553006
Cr-Commit-Position: refs/heads/master@{#14960}
2016-11-07 23:25:22 +00:00
ec7b009752 Finish reformatting RTCPUtility::RTCPParserV2::Validate()
Half of the function's code was reformatted and reindented in
https://codereview.webrtc.org/1307663004, but the bottom half was still
adhering to an old coding style and using different indentation values.

Not only does this make the code look confusing, but it can cause build
issues on certain compilers: for example, GCC 6.2.0 with -Wall causes
the build to fail because -Wmisleading-indentation is enabled.

BUG=None
R=asapersson@webrtc.org,danilchap@webrtc.org

Review-Url: https://codereview.webrtc.org/2479193002
Cr-Commit-Position: refs/heads/master@{#14957}
2016-11-07 18:46:03 +00:00
8927b0596c Reland of "Change TWCC send interval to reduce overhead on low BW situations."
"Change TWCC send interval to reduce overhead on low BW situations." was first committed in https://codereview.webrtc.org/2381833003/

but was reverted in https://codereview.webrtc.org/2468413009/ due to "float-cast-overflow".

BUG=webrtc:6442, webrtc:6669

Review-Url: https://codereview.webrtc.org/2482823002
Cr-Commit-Position: refs/heads/master@{#14954}
2016-11-07 15:51:27 +00:00
6a5047dad3 Add a webrtc{en,de}coderfactory implementation for VideoToolbox
This CL removes the coupling of the VideoToolbox h264 implementation
to the generic h264 code. The files have been moved into sdb/obj/Framework
and all dependency on them has been removed from the rest of WebRTC.
We now add it as an external encoder via a factory supplied to the
CreatePeerConnectionFactory call. This also brings the iOS implementation
closer to what we do on Android for MediaCodec.

BUG=webrtc:6619

Review-Url: https://codereview.webrtc.org/2463313002
Cr-Commit-Position: refs/heads/master@{#14953}
2016-11-07 15:26:05 +00:00
f502222443 - Adds thread safety annotations to the AudioDeviceBuffer class.
- Removes the lock that was used to protect the audio transport object.
  It is now protected "by design" instead.
- Removes rec/play_bytes_per_sample_ since we only support 16-bit samples.

BUG=webrtc:6560
R=kwiberg@webrtc.org

Review URL: https://codereview.webrtc.org/2466613002 .

Cr-Commit-Position: refs/heads/master@{#14950}
2016-11-07 14:57:11 +00:00
41b8ca0420 PacketBuffer no longer copy the bitstream data of incoming packets.
This change the interface of the PacketBuffer since the bitstream data of the packet has to be persistent when inserted into the PacketBuffer.

BUG=webrtc:5514
R=stefan@webrtc.org

Review URL: https://codereview.webrtc.org/2476283002 .

Cr-Commit-Position: refs/heads/master@{#14949}
2016-11-07 14:42:32 +00:00
a75d12d09d H264SpsPpsTracker now return PacketAction on CopyAndFixBitstream.
To differentiate between when a packet should be dropped or when a keyframe
is missing its SPS and/or SPS CopyAndFixBitstream now returns:
 - kInsert, the packet should be inserted into the PacketBuffer.
 - kDrop, the packet should be dropped.
 - kRequestKeyframe, a keyframe should be requested.

BUG=webrtc:5514

Review-Url: https://codereview.webrtc.org/2477343002
Cr-Commit-Position: refs/heads/master@{#14948}
2016-11-07 13:11:44 +00:00
f082c2aa8d Set min BWE bitrate form 10kbps to 5kbps and centralize minimum bitrate.
BUG=webrtc:6522

Review-Url: https://codereview.webrtc.org/2415543002
Cr-Commit-Position: refs/heads/master@{#14947}
2016-11-07 12:17:19 +00:00
c285012d3f Disable flaky test (ScreenCapturerIntegrationTest.CaptureUpdatedRegion)
NOTRY=true
BUG=webrtc:6666

Review-Url: https://codereview.webrtc.org/2485593002
Cr-Commit-Position: refs/heads/master@{#14946}
2016-11-07 11:50:14 +00:00
1743a19183 Simplify SetFecParameters signature.
- Change const ptr to const ref in parameter list.
  Using nullptr as argument was invalid, so no need to send
  pointer instead of reference.
- Change return type to void or bool, where appropriate

BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2455963003
Cr-Commit-Position: refs/heads/master@{#14945}
2016-11-07 11:36:14 +00:00
f1bb476050 Simplify {,Set}UlpfecConfig interface.
Prior to this change, we signalled that ULPFEC was disabled
through a bool, but that RED was disabled by setting its
payload type to -1. The latter is consistent with how we
disable RED/ULPFEC in the config, so this CL removes the
ULPFEC bool from the {,Set}UlpfecConfig chain of member
functions.

BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2460533002
Cr-Commit-Position: refs/heads/master@{#14944}
2016-11-07 11:05:09 +00:00
87d7d77700 Add new codec for FlexFEC.
This CL does nothing except adding new strings and enums corresponding to
the new codec.

R=stefan@webrtc.org
BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2470103002
Cr-Commit-Position: refs/heads/master@{#14943}
2016-11-07 11:04:03 +00:00
d8048955fb Rename {,Set}GenericFECStatus to {,Set}UlpfecConfig.
At the same time, change to using int's instead of uint8_t's for the payload type.
This allows us to signal disabled FEC or RED using the sentinel value -1, which
is commonplace in other parts of the code.

These APIs will be deprecated when ULPFEC is deprecated.

BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2448463003
Cr-Commit-Position: refs/heads/master@{#14942}
2016-11-07 10:08:58 +00:00
36928454fa Allocate extra buffer space in FrameObject in case of H264.
Since ffmpeg use an optimized bitstream reader that reads in chunks of 32/64
bits the bitstream buffer has to be increased in order for the reader to not
read out of bounds.

BUG=webrtc:5514
R=stefan@webrtc.org

Review URL: https://codereview.webrtc.org/2476513004 .

Cr-Commit-Position: refs/heads/master@{#14941}
2016-11-07 09:42:43 +00:00
18ee17d1e7 Refactor VideoDenoiser to use a buffer pool, replacing explicit double buffering.
Also improve denoiser to not assume identical stride of all involved
frames, and delete the no longer needed function I420Buffer::CopyKeepStride.

BUG=None

Review-Url: https://codereview.webrtc.org/2469763002
Cr-Commit-Position: refs/heads/master@{#14940}
2016-11-07 09:35:05 +00:00
c97d1150f2 Delete unneeded includes.
BUG=None

Review-Url: https://codereview.webrtc.org/2467013003
Cr-Commit-Position: refs/heads/master@{#14939}
2016-11-07 09:28:03 +00:00
2cb155aa8a Remove deprected functions from EncodedImageCallback and RtpRtcp
Removed EncodedImageCallback::Encoded() and RtpRtcp::SendOutgoingData().
These methods should no longer be used anywhere and it's safe to remove
them.

BUG=chromium:621691

Committed: https://crrev.com/c681250aaa2025836db7669694e323898e5c2ca7
Review-Url: https://codereview.webrtc.org/2405173006
Cr-Original-Commit-Position: refs/heads/master@{#14923}
Cr-Commit-Position: refs/heads/master@{#14935}
2016-11-04 18:39:37 +00:00
3326d0ac82 Revert of Change TWCC send interval to reduce overhead on low BW situations. (patchset #10 id:200001 of https://codereview.webrtc.org/2381833003/ )
Reason for revert:
Breaks internal tests.

Original issue's description:
> Change TWCC send interval to reduce overhead on low BW situations.
>
> BUG=webrtc:6442
>
> Committed: https://crrev.com/861e9374640eaa37ba5d905e3e0971df04b4fc9e
> Cr-Commit-Position: refs/heads/master@{#14910}

TBR=minyue@webrtc.org,stefan@webrtc.org,michaelt@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:6442

Review-Url: https://codereview.webrtc.org/2468413009
Cr-Commit-Position: refs/heads/master@{#14933}
2016-11-04 16:48:50 +00:00
Per
00983572b0 Replace Check for too many pending frames in I420_buffer_pool with returning nullptr. Added histograms for when this happens in VP8Impl.
BUG=chromium:542522
R=tommi@webrtc.org

Review URL: https://codereview.webrtc.org/2474783005 .

Cr-Commit-Position: refs/heads/master@{#14930}
2016-11-04 07:57:39 +00:00
07c147d25d Cap probing bitrate by the max bitrate instead of hardcoded 10Mbps.
Previously probing bitrate was capped at 10Mbps, which is too low for some
application. Now ProbeContoller limits max probing rate to max allowed
bitrate, which can be specified by the application.

BUG=webrtc:6332

Review-Url: https://codereview.webrtc.org/2430133005
Cr-Commit-Position: refs/heads/master@{#14927}
2016-11-03 18:59:57 +00:00
91b957d3e4 Revert of Remove deprected functions from EncodedImageCallback and RtpRtcp (patchset #4 id:100001 of https://codereview.webrtc.org/2405173006/ )
Reason for revert:
Still breaks internal downstream project.
Sergey: Please update internal project before relanding this.

Original issue's description:
> Remove deprected functions from EncodedImageCallback and RtpRtcp
>
> Removed EncodedImageCallback::Encoded() and RtpRtcp::SendOutgoingData().
> These methods should no longer be used anywhere and it's safe to remove
> them.
>
> BUG=chromium:621691
>
> Committed: https://crrev.com/c681250aaa2025836db7669694e323898e5c2ca7
> Cr-Commit-Position: refs/heads/master@{#14923}

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

Review-Url: https://codereview.webrtc.org/2479643002
Cr-Commit-Position: refs/heads/master@{#14925}
2016-11-03 18:53:50 +00:00
c681250aaa Remove deprected functions from EncodedImageCallback and RtpRtcp
Removed EncodedImageCallback::Encoded() and RtpRtcp::SendOutgoingData().
These methods should no longer be used anywhere and it's safe to remove
them.

BUG=chromium:621691

Review-Url: https://codereview.webrtc.org/2405173006
Cr-Commit-Position: refs/heads/master@{#14923}
2016-11-03 18:06:42 +00:00
c295e00fa0 Add FlexfecSender.
This class will interface RTPSenderVideo with the underlying
erasure code. It is functionally similar to ProducerFec
(to be renamed UlpfecGenerator). In fact, the FlexfecSender is a
friend of ProducerFec, and reuses most of its implementation.
Besides the fact that FlexfecSender outputs FlexFEC packets,
the main difference with ProducerFec is that FlexfecSender
allocates RTP sequence numbers, whereas ProducerFec does not
do this for the RED-encapsulated ULPFEC packets.

This class is split as interface/implementation, since it will
be owned by VideoSendStream initially. Further along, it may be
owned by PacedSender.

BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2441613002
Cr-Commit-Position: refs/heads/master@{#14922}
2016-11-03 16:22:41 +00:00
8848828708 RtpFrameObject::GetCodecHeader now return rtc::Optional<RTPVideoTypeHeader>
Since it is unsafe to hand out a pointer to a packet that might be removed/
overwritten at any time we now return a copy of the header if it exist.

BUG=webrtc:5514

Review-Url: https://codereview.webrtc.org/2468183002
Cr-Commit-Position: refs/heads/master@{#14920}
2016-11-03 15:57:03 +00:00
0a4c1616bf Make FlexfecReceiver a concrete class.
There is no need for it to be an interface.

In this CL, I also took the opportunity to make two small fixes:
- remove the 'flexfec_' prefix from some member variables
- remove unnecessary use of a stringstream object

BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2471073003
Cr-Commit-Position: refs/heads/master@{#14919}
2016-11-03 15:18:33 +00:00
9531092e72 BWE simulator depends on congestion controller.
BUG=webrtc:6497

Review-Url: https://codereview.webrtc.org/2470133003
Cr-Commit-Position: refs/heads/master@{#14918}
2016-11-03 15:14:13 +00:00
43a9dc0f93 Revert of move deprected functions from EncodedImageCallback and RtpRtcp (patchset #1 id:1 of https://codereview.webrtc.org/2467373003/ )
Reason for revert:
Made a mistake while reverting.

Original issue's description:
> Reland of move deprected functions from EncodedImageCallback and RtpRtcp (patchset #2 id:240001 of https://codereview.webrtc.org/2474433008/ )
>
> Reason for revert:
> Breaks everything
>
> Original issue's description:
> > Revert of Remove deprected functions from EncodedImageCallback and RtpRtcp (patchset #4 id:100001 of https://codereview.webrtc.org/2405173006/ )
> >
> > Reason for revert:
> > This might be breaking projects downstream.
> >
> > Original issue's description:
> > > Remove deprected functions from EncodedImageCallback and RtpRtcp
> > >
> > > Removed EncodedImageCallback::Encoded() and RtpRtcp::SendOutgoingData().
> > > These methods should no longer be used anywhere and it's safe to remove
> > > them.
> > >
> > > BUG=chromium:621691
> > >
> > > Committed: https://crrev.com/fa565842718ad178a7562721b25d916fbabc2b92
> > > Cr-Commit-Position: refs/heads/master@{#14902}
> >
> > TBR=mflodman@webrtc.org,stefan@webrtc.org,sergeyu@chromium.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=chromium:621691
> >
> > Committed: https://crrev.com/6c78307a21252c2dbd704f6d5e92a220fb722ed4
> > Cr-Commit-Position: refs/heads/master@{#14914}
>
> TBR=mflodman@webrtc.org,stefan@webrtc.org,sergeyu@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=chromium:621691
>
> Committed: https://crrev.com/a1d6cd64083a3c0173aeefe38425a56de8942745
> Cr-Commit-Position: refs/heads/master@{#14915}

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

Review-Url: https://codereview.webrtc.org/2477773002
Cr-Commit-Position: refs/heads/master@{#14916}
2016-11-03 14:52:42 +00:00
a1d6cd6408 Reland of move deprected functions from EncodedImageCallback and RtpRtcp (patchset #2 id:240001 of https://codereview.webrtc.org/2474433008/ )
Reason for revert:
Breaks everything

Original issue's description:
> Revert of Remove deprected functions from EncodedImageCallback and RtpRtcp (patchset #4 id:100001 of https://codereview.webrtc.org/2405173006/ )
>
> Reason for revert:
> This might be breaking projects downstream.
>
> Original issue's description:
> > Remove deprected functions from EncodedImageCallback and RtpRtcp
> >
> > Removed EncodedImageCallback::Encoded() and RtpRtcp::SendOutgoingData().
> > These methods should no longer be used anywhere and it's safe to remove
> > them.
> >
> > BUG=chromium:621691
> >
> > Committed: https://crrev.com/fa565842718ad178a7562721b25d916fbabc2b92
> > Cr-Commit-Position: refs/heads/master@{#14902}
>
> TBR=mflodman@webrtc.org,stefan@webrtc.org,sergeyu@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=chromium:621691
>
> Committed: https://crrev.com/6c78307a21252c2dbd704f6d5e92a220fb722ed4
> Cr-Commit-Position: refs/heads/master@{#14914}

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

Review-Url: https://codereview.webrtc.org/2467373003
Cr-Commit-Position: refs/heads/master@{#14915}
2016-11-03 14:39:04 +00:00
6c78307a21 Revert of Remove deprected functions from EncodedImageCallback and RtpRtcp (patchset #4 id:100001 of https://codereview.webrtc.org/2405173006/ )
Reason for revert:
This might be breaking projects downstream.

Original issue's description:
> Remove deprected functions from EncodedImageCallback and RtpRtcp
>
> Removed EncodedImageCallback::Encoded() and RtpRtcp::SendOutgoingData().
> These methods should no longer be used anywhere and it's safe to remove
> them.
>
> BUG=chromium:621691
>
> Committed: https://crrev.com/fa565842718ad178a7562721b25d916fbabc2b92
> Cr-Commit-Position: refs/heads/master@{#14902}

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

Review-Url: https://codereview.webrtc.org/2474433008
Cr-Commit-Position: refs/heads/master@{#14914}
2016-11-03 14:33:25 +00:00
861e937464 Change TWCC send interval to reduce overhead on low BW situations.
BUG=webrtc:6442

Review-Url: https://codereview.webrtc.org/2381833003
Cr-Commit-Position: refs/heads/master@{#14910}
2016-11-03 13:02:21 +00:00
e941306bd6 NetEq: Don't forget to save the codec name
BUG=chromium:661362

Review-Url: https://codereview.webrtc.org/2472083002
Cr-Commit-Position: refs/heads/master@{#14909}
2016-11-03 12:29:12 +00:00
34852cf707 H264SpsPpsTracker class which keep tracks of SPS/PPS.
The H264SpsPpsTracker class:
 - Keeps track of all received SPS/PPS.
 - Decides whether a packet should be inserted into the PacketBuffer or not.
   - Don't insert if this packet only contains SPS and/or PPS.
   - Don't insert if this is the first packet of and IDR and we have not
     received the required SPS/PPS.
 - Insert start codes, and in the case of the first packet of an IDR prepend
   the bitstream with the given SPS/PPS for this IDR.

BUG=webrtc:5514

Review-Url: https://codereview.webrtc.org/2466993003
Cr-Commit-Position: refs/heads/master@{#14906}
2016-11-03 11:03:06 +00:00
54fd57980f Add CreateWindowCapturer() and CreateScreenCapturer() in DesktopCapturer
This change copies ScreenCapturerDifferWrapper to a new
DesktopCapturerDifferWrapper, and adds DesktopCapturer::CreateWindowCapturer and
DesktopCapturer::CreateScreenCapturer functions to replace
WindowCapturer::Create and ScreenCapturer::Create.

BUG=webrtc:6513

Committed: https://crrev.com/b763e39beba92b45baa09542f949daabbe6258a3
Review-Url: https://codereview.webrtc.org/2468753002
Cr-Original-Commit-Position: refs/heads/master@{#14880}
Cr-Commit-Position: refs/heads/master@{#14903}
2016-11-02 21:49:38 +00:00
fa56584271 Remove deprected functions from EncodedImageCallback and RtpRtcp
Removed EncodedImageCallback::Encoded() and RtpRtcp::SendOutgoingData().
These methods should no longer be used anywhere and it's safe to remove
them.

BUG=chromium:621691

Review-Url: https://codereview.webrtc.org/2405173006
Cr-Commit-Position: refs/heads/master@{#14902}
2016-11-02 20:14:24 +00:00
d0a151c698 Update default values for APM stats to match old behavior.
In the new APM statistics interface, the default values did not match those previously used in AudioSendStream::Stats.

BUG=webrtc:6525

Review-Url: https://codereview.webrtc.org/2469783002
Cr-Commit-Position: refs/heads/master@{#14896}
2016-11-02 16:14:42 +00:00
1515e95329 Add audio_format_conversion to deps for audio_decoder_factory_interface.
This fix is made to remove the discrepancy between GYP and GN audio_decoder_factory_interface target.

BUG=webrtc:6412
NOTRY=True

Review-Url: https://codereview.webrtc.org/2472643003
Cr-Commit-Position: refs/heads/master@{#14894}
2016-11-02 15:43:42 +00:00
hta
5881d552c5 Remove webrtc::Video from H264 encoder internals
This CL replaces the use of webrtc::Video as an internal
variable in the H.264 encoder with the specific fields
that are used by this encoder.

In support of refactorings discussed around:

BUG=600254

Committed: https://crrev.com/2549437b5ccf5aae2e6f1a1491c5f505d1859f9c
Review-Url: https://codereview.webrtc.org/2468903003
Cr-Original-Commit-Position: refs/heads/master@{#14887}
Cr-Commit-Position: refs/heads/master@{#14892}
2016-11-02 14:22:29 +00:00
de9e5fffa2 Add stats for frequency offset when converting RTP timestamp to NTP time.
- Add histogram: "WebRTC.Video.RtpToNtpFreqOffsetInKhz"

  The absolute value of the difference between the estimated frequency during RTP timestamp to NTP time conversion and the actual value (i.e. 90 kHz) is measured per received video frame. The max offset during 40 second intervals is stored. The average of these stored offsets per received video stream is recorded when a stream is removed.

Updated rtp_to_ntp.cc:
- Add validation for only inserting newer RTCP sender reports to the rtcp list.

- Move calculation of frequency/offset (from RTP/NTP timestamp pairs) to UpdateRtcpList. Calculated when a new RTCP SR in inserted (and not in RtpToNtpMs per packet).

BUG=webrtc:6579

Review-Url: https://codereview.webrtc.org/2385763002
Cr-Commit-Position: refs/heads/master@{#14891}
2016-11-02 14:14:10 +00:00
0dbcfa51a2 Make video denoiser tests standalone, not using the VideoProcessingTest fixture.
BUG=None

Review-Url: https://codereview.webrtc.org/2464073002
Cr-Commit-Position: refs/heads/master@{#14890}
2016-11-02 14:11:11 +00:00
cb18ee6127 Add support for 3-byte headers in VideoToolbox NALU parser.
BUG=webrtc:6278
R=tkchin@webrtc.org, tommi@webrtc.org

Review URL: https://codereview.webrtc.org/2356793002 .

Cr-Commit-Position: refs/heads/master@{#14889}
2016-11-02 14:07:12 +00:00
hta
6ad7fa4606 Revert of Remove webrtc::Video from H264 encoder internals (patchset #2 id:20001 of https://codereview.webrtc.org/2468903003/ )
Reason for revert:
Landed the wrong patchset. Nothing broken.

Original issue's description:
> Remove webrtc::Video from H264 encoder internals
>
> This CL replaces the use of webrtc::Video as an internal
> variable in the H.264 encoder with the specific fields
> that are used by this encoder.
>
> In support of refactorings discussed around:
>
> BUG=600254
>
> Committed: https://crrev.com/2549437b5ccf5aae2e6f1a1491c5f505d1859f9c
> Cr-Commit-Position: refs/heads/master@{#14887}

TBR=magjed@webrtc.org,stefan@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=600254

Review-Url: https://codereview.webrtc.org/2472673002
Cr-Commit-Position: refs/heads/master@{#14888}
2016-11-02 13:53:25 +00:00
hta
2549437b5c Remove webrtc::Video from H264 encoder internals
This CL replaces the use of webrtc::Video as an internal
variable in the H.264 encoder with the specific fields
that are used by this encoder.

In support of refactorings discussed around:

BUG=600254

Review-Url: https://codereview.webrtc.org/2468903003
Cr-Commit-Position: refs/heads/master@{#14887}
2016-11-02 13:45:57 +00:00
4d0ec05323 Revert of Add CreateWindowCapturer() and CreateScreenCapturer() in DesktopCapturer (patchset #2 id:40001 of https://codereview.webrtc.org/2468753002/ )
Reason for revert:
Prevents WebRTC rolls into Chrome.

https://build.chromium.org/p/chromium.linux/builders/Blimp%20Linux%20%28dbg%29/builds/14848/steps/compile/logs/stdio

The reason for reverting is: Breaks
https://build.chromium.org/p/chromium.linux/builders/Blimp%20Linux%20%28dbg%2...
[881/894] SOLINK ./libcontent.so
FAILED: libcontent.so libcontent.so.TOC
../../third_party/webrtc/modules/desktop_capture/desktop_capturer.cc:45: error:
undefined reference to
'webrtc::DesktopCapturer::CreateRawWindowCapturer(webrtc::DesktopCaptureOptions
const&)'
../../third_party/webrtc/modules/desktop_capture/desktop_capturer.cc:56: error:
undefined reference to
'webrtc::DesktopCapturer::CreateRawScreenCapturer(webrtc::DesktopCaptureOptions
const&)'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.

Original issue's description:
> Add CreateWindowCapturer() and CreateScreenCapturer() in DesktopCapturer
>
> This change copies ScreenCapturerDifferWrapper to a new
> DesktopCapturerDifferWrapper, and adds DesktopCapturer::CreateWindowCapturer and
> DesktopCapturer::CreateScreenCapturer functions to replace
> WindowCapturer::Create and ScreenCapturer::Create.
>
> BUG=webrtc:6513
>
> Committed: https://crrev.com/b763e39beba92b45baa09542f949daabbe6258a3
> Cr-Commit-Position: refs/heads/master@{#14880}

TBR=sergeyu@chromium.org,zijiehe@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6513

Review-Url: https://codereview.webrtc.org/2471773002
Cr-Commit-Position: refs/heads/master@{#14884}
2016-11-02 10:13:23 +00:00
b763e39beb Add CreateWindowCapturer() and CreateScreenCapturer() in DesktopCapturer
This change copies ScreenCapturerDifferWrapper to a new
DesktopCapturerDifferWrapper, and adds DesktopCapturer::CreateWindowCapturer and
DesktopCapturer::CreateScreenCapturer functions to replace
WindowCapturer::Create and ScreenCapturer::Create.

BUG=webrtc:6513

Review-Url: https://codereview.webrtc.org/2468753002
Cr-Commit-Position: refs/heads/master@{#14880}
2016-11-01 23:02:51 +00:00