summaryrefslogtreecommitdiff
path: root/video_engine
AgeCommit message (Collapse)Author
2014-08-04Update makefiles after merge of Chromium at 287308Android Chromium Automerger
This commit was generated by merge_from_chromium.py. Change-Id: I85bf9681e9c3bbef9f67d93b3d275289e6911e3c
2014-07-29Merge third_party/webrtc from ↵Android Chromium Automerger
https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git at 4a1b3e3a69d349b0d3e91f607f24e02d8b975688 This commit was generated by merge_from_chromium.py. Change-Id: Iada7abd78f123301a98db982a6272cd9487de72f
2014-07-16Raw packet loss rate reported by RTP_RTCP module may vary too drastically ↵minyue@webrtc.org
over time. This CL is to add a filter to the value in VoE before lending it to audio coding module. The filter is an exponential filter borrowed from video coding module. The method is written in a new class called PacketLossProtector (not sure if the name is nice), which can be used in the future for more sophisticated logic. BUG= R=henrika@webrtc.org, stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/20809004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6709 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-16Merge third_party/webrtc from ↵Android Chromium Automerger
https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git at 82383d9b14ff8e5fedf5a70229eb0ac6b512909a This commit was generated by merge_from_chromium.py. Change-Id: I8c578be801fa38420e875a4a8cef17e7522252e2
2014-07-16Print an info log instead of return an error if an external encoder is ↵stefan@webrtc.org
de-registered, but no corresponding internal encoder can be registered automatically. This is not an error case if for instance an external h.264 encoder is registered, but no internal implementation exists. R=pbos@webrtc.org Review URL: https://webrtc-codereview.appspot.com/13009004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6704 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-15Remove the VPM denoiser.pbos@webrtc.org
The VPM denoiser give bad results, is slow and has not been used in practice. Instead we use the VP8 denoiser. Testing this denoiser takes up a lot of runtime on linux_memcheck (about 4 minutes) which we can do without. BUG= R=stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/16069004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6688 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11Landing pkasting's webrtc fixes for MSVC level 4 warnings in WebRTC.tommi@webrtc.org
--- Fixes for re-enabling more MSVC level 4 warnings: webrtc/ edition This contains fixes for the following sorts of issues: * Possibly-uninitialized local variable * Signedness mismatch * Assignment inside conditional This also contains a small number of other cleanups to nearby code. In particular several warning-disables for MSVC are removed because they don't seem to be necessary (either that warning is not enabled or the code does not trigger it). BUG=crbug.com/81439 TEST=none R=henrika@webrtc.org, pkasting@chromium.org Review URL: https://webrtc-codereview.appspot.com/18769004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6667 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11Move pacer to fully use webrtc::Clock instead of webrtc::TickTime.stefan@webrtc.org
This required rewriting the send-side delay stats api to be callback based, as otherwise the SuspendBelowMinBitrate test started flaking much more frequently since it had lock order inversion problems. R=pbos@webrtc.org, tommi@webrtc.org Review URL: https://webrtc-codereview.appspot.com/21869005 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6664 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11Cast payload types to int for logging.pbos@webrtc.org
uint8_t gets interpreted as char and printed as such, instead of being printed in decimal, casting them to int allows us to read what payload types are actually used without converting them from ASCII first. BUG=chromium:390874 R=stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/13919004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6662 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11Remove the send-side cname getter APIs from voice and video engine.stefan@webrtc.org
These APIs aren't being used, and introduces deadlocks when using GetStats() in the new Call api. Having getters for cname at the send-side is pointless, as it's always the user who sets the cname. R=henrika@webrtc.org, pbos@webrtc.org Review URL: https://webrtc-codereview.appspot.com/16899004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6659 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10Update makefiles after merge of Chromium at 282385Android Chromium Automerger
This commit was generated by merge_from_chromium.py. Change-Id: I85d3e5fb3d9291809471c199df114e462a4739d6
2014-07-10Refactor registerable callbacks for FrameCountObserver from rtp_rtcp module ↵andresp@webrtc.org
into vie_channel. R=stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/16839004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6649 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-09Merge third_party/webrtc from ↵Android Chromium Automerger
https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git at 138adbb0bcdab60afda25a8727e5a071abc4ae36 This commit was generated by merge_from_chromium.py. Change-Id: Iffa5413ebfb78de36b84b4e85d94adc093f912df
2014-07-09Thread annotations for vie_encoder.cc/.hstefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/8739005 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6638 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08Refactor registerable callbacks for VideoBitrateObserver from rtp_rtcp ↵andresp@webrtc.org
module into vie_channel. R=stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/20879004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6626 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08Some refactoring inside rtp_rtcp/.pbos@webrtc.org
Renaming ModuleRTPUtility -> RtpUtility. Renaming RTPHeaderParser -> RtpHeaderParser. Making RtpHeaderParser accept size_t instead of int for packet length. Making RtpUtility::RtpHeaderParser accept size_t for packet length. BUG= R=stefan@webrtc.org, tommi@webrtc.org Review URL: https://webrtc-codereview.appspot.com/19899004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6623 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-07Preserve RTP states for restarted VideoSendStreams.pbos@webrtc.org
A restarted VideoSendStream would previously be completely reset, causing gaps in sequence numbers and potentially RTP timestamps as well. This broke SRTP which requires fairly sequential sequence numbers. Presumably, were this sent without SRTP, we'd still have problems on the receiving end as the corresponding receiver is unaware of this reset. Also adding annotation to RTPSender and addressing some unlocked access to ssrc_, ssrc_rtx_ and rtx_. BUG= R=mflodman@webrtc.org, stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/20819004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6612 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-04Add boilerplate code for H.264.stefan@webrtc.org
R=mflodman@webrtc.org, niklas.enbom@webrtc.org Review URL: https://webrtc-codereview.appspot.com/17849005 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6603 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-04Configure RTX send status on new modules.pbos@webrtc.org
Fixes bug where newly-allocated modules wouldn't send payload-based padding (or probably not send over RTX at all). As the newly-added test exposed lock-inversions shown on tsan in VideoReceiver, VideoReceiver was thread-annotated and locks taken less. BUG=chromium:391085 R=mflodman@webrtc.org, stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/21819004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6601 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-04Introduces PacedVideoSender to test framework and moves the Pacer to use Clock.stefan@webrtc.org
R=mflodman@webrtc.org Review URL: https://webrtc-codereview.appspot.com/14729004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6600 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-03Merge third_party/webrtc from ↵Android Chromium Automerger
https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git at d13c3753199496aeddc73ec88548da73283c312f This commit was generated by merge_from_chromium.py. Change-Id: Ic6e1b4cf621e39333250662fbbf1833e8467204f
2014-07-03Removed old code and default implementations.asapersson@webrtc.org
R=mflodman@webrtc.org Review URL: https://webrtc-codereview.appspot.com/21689004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6588 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-02Possibly fix deadlock happening due to unregister/register modules as ↵andresp@webrtc.org
switching between AST and TSO estimators. I think this does not introduces any contention or new deadlocks. But that is hard to verify at the moment. BUG=chromium:388191 R=stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/17869004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6582 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-30Reserve RTP/RTCP modules in SetSSRC.pbos@webrtc.org
Allows setting SSRCs for future simulcast layers even though no set send codec uses them. Also re-enabling CanSwitchToUseAllSsrcs as an end-to-end test, required for bitrate ramp-up, instead of send-side only (resolving issue 3078). This test was used to verify reserved modules' SSRCs are preserved correctly. To enable a multiple-stream end-to-end test test::CallTest was modified to work on a vector of receive streams instead of just one. BUG=3078 R=kjellander@webrtc.org, stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/15859005 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6565 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-26Merge third_party/webrtc from ↵Android Chromium Automerger
https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git at 9ff0df06bd431ddbf595620f94ae515bbdcde2da This commit was generated by merge_from_chromium.py. Change-Id: Id348ee902653620116f72fee89c1ee8a20ac9649
2014-06-25Bump version number to 3.55tnakamura@webrtc.org
TBR=wu@webrtc.org Review URL: https://webrtc-codereview.appspot.com/21729004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6540 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-25Update makefiles after merge of Chromium at 279716Android Chromium Automerger
This commit was generated by merge_from_chromium.py. Change-Id: Ie631c1eeed85862b7bade8e178791c7b230573b3
2014-06-25Merge third_party/webrtc from ↵Android Chromium Automerger
https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git at c34b9e5d5cd44c31c4f9da649b71d0d3132cf516 This commit was generated by merge_from_chromium.py. Change-Id: Ibdea97e7e6e800b2b7d7d3122a1d77e467cfbde4
2014-06-23GN: Add BUILD.gn files + kjellander to OWNERSkjellander@webrtc.org
This should work as a foundation for all the work that is left to do to make the parts of WebRTC that Chromium uses to build with GN. I implemented some the smaller modules myself in this CL. The remaining work (TODO's in the .gn files) will be distributed to various team members. I'm adding myself to OWNERS files for BUILD.gn files in all the directories where I'm adding a BUILD.gn file. BUG=3441 TEST= Successful compilation of WebRTC as standalone: gn gen out/Default --args="build_with_chromium=false" && ninja -C out/Default gn gen out/Default --args="build_with_chromium=false is_clang=true clang_use_chrome_plugins=false" && ninja -C out/Default I built successfully from a Chromium checkout (with https://codereview.chromium.org/321313006/ applied) using: gn gen out/Default && ninja -C out/Default webrtc R=brettw@chromium.org, niklas.enbom@webrtc.org Review URL: https://webrtc-codereview.appspot.com/13749004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6523 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-20Add tests of texture frames in video_send_stream_test.wuchengli@chromium.org
Also fix a bug in ViEFrameProviderBase::DeliverFrame that a texture frame was only delivered to the first callback. BUG=chromium:362437 TEST=Run video engine test and webrtc call on CrOS. R=kjellander@webrtc.org, pbos@webrtc.org, stefan@webrtc.org, wuchengli@google.com Review URL: https://webrtc-codereview.appspot.com/15789004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6506 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-19Merge third_party/webrtc from ↵Android Chromium Automerger
https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git at 68f4c7b51ec6434b302de9e97ee01f5ccdb48aa2 This commit was generated by merge_from_chromium.py. Change-Id: Iedf6d850648d6a5904340109e1f71ce52d44113b
2014-06-19Update makefiles after merge of Chromium at 278252Android Chromium Automerger
This commit was generated by merge_from_chromium.py. Change-Id: I2e09453759ef2a9b23eb8b2cf0d92f70acc3ea89
2014-06-16Merge third_party/webrtc from ↵Android Chromium Automerger
https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git at 847dfa535730a30d57cf26d788d31070b70a02af This commit was generated by merge_from_chromium.py. Change-Id: Id1e94a534a8e364431bcb714b54729e7a410664d
2014-06-16Update makefiles after merge of Chromium at 277428Android Chromium Automerger
This commit was generated by merge_from_chromium.py. Change-Id: I35c59b36614d836accbb543178393a6c061586f1
2014-06-16Merge third_party/webrtc from ↵Android Chromium Automerger
https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git at 5fcef2b6df45ceab39ee96a616ab0a4d3c63b83a This commit was generated by merge_from_chromium.py. Change-Id: I58be5a5957c0a6b1be9beac86538af8d38058e9e
2014-06-16Add max limit of number for overuses. When limit is reached always apply the ↵asapersson@webrtc.org
rampup delay. BUG=1577 R=mflodman@webrtc.org Review URL: https://webrtc-codereview.appspot.com/13719004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6451 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-13Pass GYP DEPTH variable to isolate.kjellander@webrtc.org
Similar change to https://codereview.chromium.org/322403003/ This will make it possible to handle different directory levels for special builds of WebRTC, without breaking GYP when the .isolate files are processed and their contents is verified. Also update all our .isolate files to use the <(DEPTH) variable. BUG=343106 TEST=Successful compile+test on Linux using: ninja -C out/Release tools/swarming_client/isolate.py run -s out/Release/tools_unittests.isolated Also trybots passing all tests. R=pbos@webrtc.org TBR=tina.legrand@webrtc.org Review URL: https://webrtc-codereview.appspot.com/13679004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6427 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12Enable pacing by default and remove the option to disable it from the new API.stefan@webrtc.org
BUG=1672 R=mflodman@webrtc.org, pbos@webrtc.org Review URL: https://webrtc-codereview.appspot.com/17659004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6416 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12Increased kMaxRampUpDelayMs (120 to 240s).asapersson@webrtc.org
Add support for triggering on encode rsd metric if its thresholds are configured. Added unit tests. BUG=1577 R=mflodman@webrtc.org Review URL: https://webrtc-codereview.appspot.com/16649004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6410 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11Add APIs to enable padding with redundant payloads.stefan@webrtc.org
Also makes a small change to the tests to remove flakiness. We can't do BWE only based on rtp timestamps if we preemptively resend packets instead of sending padding packets. BUG=1812,2992 R=mflodman@webrtc.org, pbos@webrtc.org Review URL: https://webrtc-codereview.appspot.com/15719004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6400 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-10Update makefiles after merge of Chromium at 276202Android Chromium Automerger
This commit was generated by merge_from_chromium.py. Change-Id: I00be1885a20e1c8d4e5758fa281dca19d3ba4407
2014-06-10Add additional metric (relative standard deviation of encode time) for ↵asapersson@webrtc.org
overuse detection. This code is currently only for testing. BUG=1577 R=stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/19619004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6381 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-10Add kjellander@webrtc.org as OWNER for *.isolatekjellander@webrtc.org
This should make project-wide changes for isolate files easier and make it more obvious who's a suitable reviewer for them. BUG= R=niklas.enbom@webrtc.org Review URL: https://webrtc-codereview.appspot.com/19689004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6379 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09Update makefiles after merge of Chromium at 275833Android Chromium Automerger
This commit was generated by merge_from_chromium.py. Change-Id: Iad0f8b40d3547d8d6337888a84071a951f8302d6
2014-06-07Update makefiles after merge of Chromium at 275661Android Chromium Automerger
This commit was generated by merge_from_chromium.py. Change-Id: I9f8d417e25bac16cf9f0cea277d28da37190aab2
2014-06-06ViEAutoTestAndroid: Unbreak compile by casting void* to jobject.fischman@webrtc.org
Sure would be nice if the try fleet used both gcc _and_ clang... TBR=wu@webrtc.org Review URL: https://webrtc-codereview.appspot.com/20559004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6355 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-06AppRTCDemo(android): support app (UI) & capture rotation.fischman@webrtc.org
Now app UI rotates as the device orientation changes, and the captured stream tries to maintain real-world-up, matching Chrome/Android and Hangouts/Android behavior. BUG=2432 R=glaznev@webrtc.org, henrike@webrtc.org, wu@webrtc.org Review URL: https://webrtc-codereview.appspot.com/15689005 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6354 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-06Merge third_party/webrtc from ↵Android Chromium Automerger
https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git at 81f8df9af96c6b4bf43234f2a0162146a5da6112 This commit was generated by merge_from_chromium.py. Change-Id: I5e92e5b4b908703fa09deb90de067accd8e65be7
2014-06-05Merge third_party/webrtc from ↵Android Chromium Automerger
https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git at 00d9c49cb076626f711988332749a0ebe8d2a32f This commit was generated by merge_from_chromium.py. Change-Id: I96ad217da0f6ba1aff0d39f9ecffa44e04dc08df
2014-06-05Have RTX be enabled by setting an RTX payload type instead of by setting an ↵stefan@webrtc.org
RTX SSRC. This makes it easier to disable RTX by filtering out the RTX codec during call setup/signaling, and won't require that also the SSRCs are filtered out. BUG=1811 R=mflodman@webrtc.org, pbos@webrtc.org Review URL: https://webrtc-codereview.appspot.com/15629005 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6335 4adac7df-926f-26a2-2b94-8c16560cd09d