10739 Commits

Author SHA1 Message Date
Peter Boström
50fca62809 Remove fake cricket::VideoCapturer devices.
Changes rtc_media to depend on rtc_base_approved instead of rtc_base.

BUG=
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11507}
2016-02-05 18:40:44 +00:00
hbos
7cd94f66eb Default build flag |rtc_use_h264| to |proprietary_codecs|
if not on Android/iOS.

This means proprietary_codecs=1 && ffmpeg_branding=Chrome
can be used to enable this H.264 enc/dec implementation
instead of rtc_use_h264=1 && ffmpeg_branding=Chrome.
This is used by both Chromium trybots (but not default
Chromium build) and offical Chrome build, meaning we will
be able to test and enable H.264 in chromium.

This change would otherwise be enough to launch this
feature in Chrome, but because we do not want to do that
before we have chromium browser tests and are ready to flip
the switch, this CL prevents chromium from using H.264 just
yet: https://codereview.chromium.org/1641163002/ (landing
this after that CL).

BUG=chromium:500605, chromium:468365

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

Cr-Commit-Position: refs/heads/master@{#11506}
2016-02-05 18:31:26 +00:00
hbos
900f97534b H264: Improve FFmpeg decoder performance by using I420BufferPool.
Had to update I420BufferPool to allow zero-initializing buffers.

BUG=chromium:500605, chromium:468365, webrtc:5428

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

Cr-Commit-Position: refs/heads/master@{#11505}
2016-02-05 16:08:39 +00:00
Peter Boström
c6e16e3d91 Use a delayed encoder in GetStats test.
Guarantees seeing non-zero CpuOveruseMetrics stats.

BUG=
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11504}
2016-02-05 13:16:03 +00:00
Peter Boström
f751bf8679 Set VideoReceiveStream members in init list.
Removes scoped_ptrs and resets, preventing some heap allocation but also
overall showing that these objects won't be reconstructed on the fly.

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

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

Cr-Commit-Position: refs/heads/master@{#11503}
2016-02-05 13:00:58 +00:00
danilchap
f174e3a260 [rtp_rtcp] rtcp::Tmmbr cleaned and got Parse function
Added accessor and Parse function
removed dependencies on structures from rtcp_utility.h (except RtcpCommonHeader)

BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11502}
2016-02-05 12:56:40 +00:00
peah
48fa27136a Made implicit casts in the echo canceller explicit.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11501}
2016-02-05 11:16:27 +00:00
Peter Boström
1d04ac6f29 Untangle ViEChannel and ViEEncoder.
Extracts shared members outside the two objects, removing PayloadRouter
from receivers and the VCM for ViEChannel from senders.

Removes Start/StopThreadsAndSetSharedMembers that was used to set the
shared state between them.

Also adding DCHECKs to document what's only used by the
sender/receiver side.

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

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

Cr-Commit-Position: refs/heads/master@{#11500}
2016-02-05 10:25:52 +00:00
Peter Boström
e449915455 Measure encoding time on encode callbacks.
Permits measuring encoding time even when performed on another thread,
typically for hardware encoding, instead of assuming that encoding is
blocking the calling thread.

Permitted encoding time is increased for hardware encoders since they
can be timed to keep 30fps, for instance, without indicating overload.

Merges EncodingTimeObserver into EncodedFrameObserver to have one post-encode
callback.

BUG=webrtc:5042, webrtc:5132
R=asapersson@webrtc.org, mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11499}
2016-02-05 10:13:41 +00:00
nisse
8e8908aadd Delete FrameInput method and FrameInputWrapper class.
Added VideoTrackInterface::GetSink method, for use by
VideoRtpReceiver. This lets us delete FrameInput.

I realized this change doesn't depend on VideoSinkInterface changes,
so this is a more standalone version of cl
https://codereview.webrtc.org/1664773002/

BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#11498}
2016-02-05 09:52:20 +00:00
jbauch
25d1f28fa9 Fix race between Thread ctor/dtor and MessageQueueManager registrations.
This CL fixes a race where for Thread objects the parent MessageQueue
constructor registers the object in the MessageQueueManager even though
the Thread is not constructed completely yet. Same happens during
destruction.

BUG=webrtc:1225

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

Cr-Commit-Position: refs/heads/master@{#11497}
2016-02-05 08:25:04 +00:00
kjellander
988d31eb9b Move gtest_prod_util.h out of webrtc/test tree.
This is needed because the target is defined in webrtc/common.gyp
and its current location crosses package boundaries when generating
projects for some build systems.

NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11496}
2016-02-05 08:23:57 +00:00
kjellander
a96e2d77cb Move talk/media to webrtc/media
I removed the 'libjingle' target in talk/libjingle.gyp and replaced
all users of it with base/base.gyp:rtc_base. It seems the jsoncpp
and expat dependencies were not used by it's previous references.

The files in talk/media/testdata were uploaded to Google Storage and
added .sha1 files in resources/media instead of simply moving them.

The previously disabled warnings that were inherited from
talk/build/common.gypi are now replaced by target-specific disabling
of only the failing warnings. Additional disabling was needed since the stricter
compilation warnings that applies to code in webrtc/.

License headers will be updated in a follow-up CL in order to not
break Git history.

Other modifications:
* Updated the header guards.
* Sorted the includes using chromium/src/tools/sort-headers.py
  except for these files:
  talk/app/webrtc/peerconnectionendtoend_unittest.cc
  talk/app/webrtc/java/jni/androidmediadecoder_jni.cc
  talk/app/webrtc/java/jni/androidmediaencoder_jni.cc
  webrtc/media/devices/win32devicemanager.cc.
* Unused GYP reference to libjingle_tests_additional_deps was removed.
* Removed duplicated GYP entries of
  webrtc/base/testutils.cc
  webrtc/base/testutils.h

The HAVE_WEBRTC_VIDEO and HAVE_WEBRTC_VOICE defines were used by only talk/media,
so they were moved to the media.gyp.

I also checked that none of
EXPAT_RELATIVE_PATH,
FEATURE_ENABLE_VOICEMAIL,
GTEST_RELATIVE_PATH,
JSONCPP_RELATIVE_PATH,
LOGGING=1,
SRTP_RELATIVE_PATH,
FEATURE_ENABLE_SSL,
FEATURE_ENABLE_VOICEMAIL,
FEATURE_ENABLE_PSTN,
HAVE_SCTP,
HAVE_SRTP,
are used by the talk/media code.

For Chromium, the following changes will need to be applied to the roll CL that updates the
DEPS for WebRTC and libjingle: https://codereview.chromium.org/1604303002/

BUG=webrtc:5420
NOPRESUBMIT=True
TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11495}
2016-02-05 07:52:35 +00:00
kjellander
a713a40fd6 Roll chromium_revision 4c670a4..6e376b8 (373575:373731)
Change log: 4c670a4..6e376b8
Full diff: 4c670a4..6e376b8

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11494}
2016-02-05 04:04:44 +00:00
kjellander
b647aca12a Roll chromium_revision fbab684..4c670a4 (373504:373575)
Change log: fbab684..4c670a4
Full diff: fbab684..4c670a4

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11493}
2016-02-04 20:09:44 +00:00
glaznev
ae95ff32ff Add more logging and fix PTS overflow for HW decoder.
- Reduce maximum pending frames for H.264 decoder to 8.
- Log data for next 2 output frames every time frame drop
happens or decoder drain is triggered.
- When timeout happens for dequeueInputBuffer call try to
drain the decoder and get input buffer one more time.
- Fix PTS values overflow.

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

Cr-Commit-Position: refs/heads/master@{#11492}
2016-02-04 19:47:20 +00:00
danilchap
a92d6be411 rtcp::TmmbItem designed to replace RTCPUtility::RTCPPacketRTPFBTMMBRItem (for creating and parsing rtcp TMMBR/TMMBN packets)
std::vector<rtcp::TmmbItem> will replace TMMBRSet class for storage, processing and preparing TMBBR/TMMBN
(i.e. this TmmbItem replaces Timber structure introduced in https://codereview.webrtc.org/1474693002 )
Previous structures store bitrate in kbps. TmmbItem use bps removing need to regularly divide and multiply by 1000.

BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11491}
2016-02-04 15:33:44 +00:00
ivoc
20834ca806 Adds a nullptr check to prevent a rare crash when starting or stopping an RtcEventLog.
BUG=webrtc:4741,chromium:581788

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

Cr-Commit-Position: refs/heads/master@{#11490}
2016-02-04 14:33:41 +00:00
kjellander@webrtc.org
15ba6242ad Revert of Rename iOS test specs to match buildbot names. (patchset #1 id:1 of https://codereview.webrtc.org/1665783002/ )
Reason for revert:
*sigh* that didn't work, the reading of the JSON file fails (which I was suspecting it would).
Example: https://build.chromium.org/p/client.webrtc.fyi/builders/iOS64%20Simulator%20Debug/builds/17/steps/steps/logs/stdio

I'll rename all the iOS bots instead since I think it's reasonably rare we link to their logs, so there won't be that many broken URLs.

Original issue's description:
> Rename iOS test specs to match buildbot names.
>
> I really prefer not using spaces in any filenames but
> if we were to rename all the bots all existing URLs to builds
> would stop working (or we'd loose the build history), so I'd
> like to see if this works first.
> The bots that hits the errors are the new ones I'm experimenting
> with in client.webrtc.fyi. Example failing build:
> https://build.chromium.org/p/client.webrtc.fyi/builders/iOS64%20Simulator%20Debug
>
> BUG=chromium:498746
> NOTRY=True
> TBR=phoglund@webrtc.org
>
> Committed: https://crrev.com/86512b401ecee4b5e18ee6fbec28ec9c1d0ead9b
> Cr-Commit-Position: refs/heads/master@{#11473}

TBR=phoglund@webrtc.org
NOTRY=True
NOPRESUBMIT=True
BUG=chromium:498746

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

Cr-Commit-Position: refs/heads/master@{#11489}
2016-02-04 14:13:51 +00:00
kjellander
daa672d7ab Roll chromium_revision 28e68f8..fbab684 (373442:373504)
Change log: 28e68f8..fbab684
Full diff: 28e68f8..fbab684

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11488}
2016-02-04 13:00:47 +00:00
stefan
ba4c0e45ff Add send-side BWE to WebRtcVoiceEngine under a finch experiment.
This adds negotiation of both transport sequence number and transport
feedback. Only offers transport seq num if the
WebRTC-Audio-SendSideBwe finch experiment is enabled.

TBR=mflodman@webrtc.org
BUG=webrtc:5263

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

Cr-Commit-Position: refs/heads/master@{#11487}
2016-02-04 12:12:31 +00:00
sprang
2ddb8bd359 Avoid undefined behavior in vp8 screenshare_layers
active_layer_ could be dereferenced while being -1...
Also added som DCHECKs

BUG=webrtc:5490

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

Cr-Commit-Position: refs/heads/master@{#11486}
2016-02-04 11:59:57 +00:00
nisse
08582ff075 Replace uses of cricket::VideoRenderer by rtc::VideoSinkInterface.
Change argument type for VideoProviderInterface::SetVideoPlayout.

Replace VideoMediaChannel::SetRenderer and VideoChannel::SetRenderer
by SetSink.

Alse deleted unused member variables VideoMediaChannel::renderer_ and
VideoChannel::renderer_.

BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#11485}
2016-02-04 09:24:56 +00:00
nisse
8cb910d2fd Delete backwards compatibility cruft from cricket::VideoFrame and VideoSourceInterface.
Follow up to cls https://codereview.webrtc.org/1594973006/ and
https://codereview.webrtc.org/1586613002/, possible now that the
chrome cls https://codereview.chromium.org/1660483002/ and
https://codereview.chromium.org/1603463007/ are landed.

BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#11484}
2016-02-04 09:02:02 +00:00
asapersson
c2148a50d2 Integrate helper macros for calling histograms with different names (real-time vs screenshare and rampup metrics).
Sparse macro is replaced and new implementation in metrics.h is used.

BUG=webrtc:5283

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

Cr-Commit-Position: refs/heads/master@{#11483}
2016-02-04 08:33:29 +00:00
honghaiz
9031d6366f Remove the network with empty name or NONE connection type from the network list.
In some device (e.g. Galaxy s6), the OS returns a list of network containing
one that has empty network name or NONE connection type, which cannot be used and cause crash to the app.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#11482}
2016-02-04 05:45:28 +00:00
kjellander
fc5fc1e9b3 Roll chromium_revision 609aa24..28e68f8 (373145:373442)
Change log: 609aa24..28e68f8
Full diff: 609aa24..28e68f8

Changed dependencies:
* src/buildtools: 389b714..e27b1f1
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/2cdf398..d057454
* src/third_party/libvpx_new/source/libvpx: d699684..f51dd8c
* src/third_party/libyuv: ad71738..903c91c
DEPS diff: 609aa24..28e68f8/DEPS

No update to Clang.

TBR=marpan@webrtc.org, stefan@webrtc.org,

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

Cr-Commit-Position: refs/heads/master@{#11481}
2016-02-04 04:05:58 +00:00
jbauch
f2a2bf4ae4 Stay writable after partial socket writes.
This CL fixes an issue where the "writable" flag didn't stay set after
::send or ::sendto only sent a partial buffer.

Also SocketTest::TcpInternal has been updated to use rtc::Buffer instead
of manually allocating data.

BUG=webrtc:4898

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

Cr-Commit-Position: refs/heads/master@{#11480}
2016-02-04 00:45:38 +00:00
Honghai Zhang
14d024d882 Do not notify networkconnect if the connection type is known.
This sometimes happened with sim card has a voice plan but does not have data plan.
Renable the DCHECK.

BUG=
R=glaznev@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11479}
2016-02-03 23:12:33 +00:00
Honghai Zhang
45b683f43f Call static method getConnectionType using the class name.
BUG=
R=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11478}
2016-02-03 22:15:12 +00:00
danilchap
5c35cf9f8e Re-enable RestartingSendStreamPreservesRtpState.
based on https://codereview.webrtc.org/1457283002/
Packets allowed now to come out of order.

BUG=webrtc:3552
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11477}
2016-02-03 22:14:57 +00:00
Peter Boström
cedff02e30 Remove dead code from WebRtcVideoEngine2.
FindCodec is no longer used and can be removed.

BUG=
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11476}
2016-02-03 16:58:57 +00:00
jbauch
e03ac51aa1 Implement NullVideoDecoder to avoid crash on unsupported decoders.
There is a use case with external codec factories that only support
encoding but not decoding for a given type. This leads to a crash
due to null being registered as codec (after a DCHECK).

This CL adds a NullVideoDecoder that is used instead of the null to
not crash but log to LS_ERROR.

BUG=webrtc:5249

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

Cr-Commit-Position: refs/heads/master@{#11475}
2016-02-03 13:51:56 +00:00
hbos
9dc5928eb2 Ability to disable the effects of |rtc_use_h264| with DisableRtcUseH264.
Renamed the WEBRTC_THIRD_PARTY_H264 macro to WEBRTC_USE_H264 to match flag name.

The idea is to be able to turn off H264 from chromium with this function because...
1) The Chromium trybots will soon use this flag, we want to temporarily disable H264 from chromium even if flag is set in case something is broken. That way when we are ready to flip the switch the trybots will run our test code then and not after it is already enabled.
2) If feature is launched and we discover major problems we can easily disable H264 and merge with beta/stable.
3) Or, if feature is behind a *runtime* flag, this is how we would control if it is used or not.

The idea is to call DisableRtcUseH264 in chromium's PeerConnectionDependencyFactory.

BUG=chromium:500605, chromium:468365
NOTRY=True
NOPRESUBMIT=True

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

Cr-Commit-Position: refs/heads/master@{#11474}
2016-02-03 13:09:40 +00:00
kjellander
86512b401e Rename iOS test specs to match buildbot names.
I really prefer not using spaces in any filenames but
if we were to rename all the bots all existing URLs to builds
would stop working (or we'd loose the build history), so I'd
like to see if this works first.
The bots that hits the errors are the new ones I'm experimenting
with in client.webrtc.fyi. Example failing build:
https://build.chromium.org/p/client.webrtc.fyi/builders/iOS64%20Simulator%20Debug

BUG=chromium:498746
NOTRY=True
TBR=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11473}
2016-02-03 12:41:10 +00:00
Stefan Holmer
10880011d9 Support multiple rtx codecs.
Adds negotiation of rtx codecs for red and vp9. To keep backwards
compatibility with older Chrome versions, this change includes two
hacks:
1. Red packets will be retransmitted over the rtx codec associated with
   vp8 if no rtx codec is associated with red. This is how Chrome does
   it today and ensures that we still can send red over rtx to older
   versions.

2. If rtx packets associated with the media codec (vp8/vp9 etc) are
   received and red has been negotiated, we will assume that the sender
   incorrectly has packetized red inside the rtx header associated with
   media. We will therefore restore it with the red payload type
   instead, which ensures that we can still receive rtx associated with
   red from old versions.

Offering multiple rtx codecs to older versions should not be a problem
since old versions themselves only try to negotiate rtx for vp8.

R=pbos@webrtc.org
TBR=mflodman@webrtc.org
BUG=webrtc:4024
TEST=Verified by running apprtc and emulating packet loss between Chrome with and without the patch.

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

Cr-Commit-Position: refs/heads/master@{#11472}
2016-02-03 12:30:10 +00:00
kjellander
abe095b879 Roll chromium_revision c6076f2..609aa24 (372974:373145)
Change log: c6076f2..609aa24
Full diff: c6076f2..609aa24

Changed dependencies:
* src/third_party/ffmpeg: cab2b46..501a5c5
DEPS diff: c6076f2..609aa24/DEPS

Clang version changed 257955:259395
Details: c6076f2..609aa24/tools/clang/scripts/update.py

NOTRY=True
TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11471}
2016-02-03 12:26:40 +00:00
noahric
d983c3c9e5 Add SEI to the list of packets counted as keyframe.
It's generated by some encoders between SPS/PPS and an IDR frame, so we should treat it like sps/pps.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#11470}
2016-02-03 11:43:50 +00:00
tkchin
d1fb26d457 Add iOS tracing.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11469}
2016-02-03 09:51:22 +00:00
kjellander
8e85a3f39a iOS buildbot configurations.
This will make it possible for WebRTC to use the same buildbot
scripts as Chrome's iOS bots.
Buildbot changes are done in https://codereview.chromium.org/1659163003/

BUG=chromium:498746
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11468}
2016-02-03 08:06:06 +00:00
honghaiz
7f777498a5 Disable flaky test WebRtcSessionTest.TestRtxRemovedByCreateAnswer on Win and Mac.
TBR=kjellander@webrtc.org
BUG=webrtc:4943
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#11467}
2016-02-03 05:54:08 +00:00
honghaiz
27a348555a Fixing a DCHECK failure on unknown connection type from OS.
Sometimes Android OS provides unknown connection type,
causing a DCHECK failure. This CL temporarily removes that checking.

BUG=
TBR=glaznev@webrtc.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#11466}
2016-02-03 02:20:31 +00:00
Peter Boström
2ab815779c Remove implicit downcast in producer_fec_fuzzer.cc.
Speculative fix for DrFuzz.

BUG=
TBR=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11465}
2016-02-02 21:31:11 +00:00
kjellander
c3a0983d4b Roll chromium_revision a8e5140..c6076f2 (372922:372974) incl. update to Opus v.1.1.2
Includes updates to tests for Opus v.1.1.2, reveiwed in
https://codereview.webrtc.org/1629413002/

Change log: a8e5140..c6076f2
Full diff: a8e5140..c6076f2

Changed dependencies:
* src/third_party/catapult: 471db30..d4d48e6
* src/third_party/opus/src: cae6961..655cc54
DEPS diff: a8e5140..c6076f2/DEPS

No update to Clang.

BUG=chromium:580524
TBR=

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

Cr-Commit-Position: refs/heads/master@{#11464}
2016-02-02 21:18:42 +00:00
honghaiz
a7ad7c3ca0 Get the adapter type information from Android OS.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11463}
2016-02-02 20:54:28 +00:00
tommi
ae695e95a6 Refactor RtpSender and SSRCDatabase.
* SSRCDatabase doesn't need to be a global instance, so I've changed it to be a "regular" class (i.e. construct via ctor, not maybe via GetSSRCDatabase( + release via ReturnSSRCDatabase())).  If we ever have parallel tests running in the same process, they won't have the problem of using the same ssrc database.

* Made RtpSender a more const.  Also added some todos for myself and holmer to look into clarifying the threading model.

* Switched from CriticalSectionWrapper to rtc::CriticalSection

* Changed the random seeding to use TickTime::Now().Ticks() since TimeInMicroseconds() could return 0 when the process was starting.  This is what TimeInMicroseconds() does anyway but now we don't need to access a global clock object.

BUG=webrtc:3062

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

Cr-Commit-Position: refs/heads/master@{#11462}
2016-02-02 16:34:16 +00:00
asapersson
040b79ff7e Add helper macros for calling a histogram with different names.
To be used when a metric is used in different modes such as real-time vs screenshare (will be done in https://codereview.webrtc.org/1564923008/).

BUG=webrtc:5283

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

Cr-Commit-Position: refs/heads/master@{#11461}
2016-02-02 15:13:16 +00:00
Peter Boström
ed3277bf14 Deprecate VideoDecoder::Reset() and remove calls.
Removes calls to decoder reset and instead drops delta frames and
requests keyframes until one arrives.

BUG=webrtc:5475
R=stefan@webrtc.org
TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11460}
2016-02-02 14:40:13 +00:00
Peter Boström
ce23bee697 Remove SendStreamFormat and ViewRequests.
SendStreamFormat is broken in current implementation and
ApplyViewRequest is no longer in use.

BUG=
R=pthatcher@webrtc.org, sophiechang@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#11459}
2016-02-02 13:16:03 +00:00
kjellander
d467a91669 Roll chromium_revision f41a54b..a8e5140 (372876:372922)
Change log: f41a54b..a8e5140
Full diff: f41a54b..a8e5140

Changed dependencies:
* src/third_party/ffmpeg: c7b5761..cab2b46
DEPS diff: f41a54b..a8e5140/DEPS

No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11458}
2016-02-02 12:10:01 +00:00