ivica
028cf48828
Added FullStack performance test for screensharing with VP9
...
Review URL: https://codereview.webrtc.org/1215113003
Cr-Commit-Position: refs/heads/master@{#9657}
2015-07-30 09:16:03 +00:00
Bjorn Terelius
c159b046d7
Renamed the ACMDump to RtcEventLog and moved it to webrtc/video, since it is not specific to the audio coding module. Updated .gyp and .gn files accordingly.
...
Placed the protobuf structures in the namespace webrtc::rtclog. Removed the message field from the DebugEvent structure, since it was not used.
Added an interface to set config information for VideoReceiveStream and VideoSendStream in the event log.
Added function to log full RTCP packets and changed RTP-logging to only log headers.
Significantly extended the unit tests for RtcEventLog.
R=ivoc@webrtc.org , minyue@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1230973005 .
Cr-Commit-Position: refs/heads/master@{#9656}
2015-07-30 09:06:09 +00:00
sprang
d63589579a
Add a frame generator that allows scrolling over a larger still image, for use with new screen sharing quality tests.
...
BUG=
Review URL: https://codereview.webrtc.org/1267463002
Cr-Commit-Position: refs/heads/master@{#9654}
2015-07-29 14:58:17 +00:00
Erik Språng
49c0ce359f
Revert "Add a frame generator that allows scrolling over a larger still image, for use with new screen sharing quality tests."
...
This reverts commit 89934133988feaf14fb88f5258f727232a283d0f.
BUG=
R=pbos@webrtc.org
Review URL: https://codereview.webrtc.org/1258803003 .
Cr-Commit-Position: refs/heads/master@{#9653}
2015-07-29 12:07:13 +00:00
Erik Språng
8993413398
Add a frame generator that allows scrolling over a larger still image, for use with new screen sharing quality tests.
...
Also add support for this in the loopback tests.
BUG=
R=pbos@webrtc.org
Review URL: https://codereview.webrtc.org/1256713004 .
Cr-Commit-Position: refs/heads/master@{#9652}
2015-07-29 11:54:14 +00:00
pbos
f1828e8ed9
Prevent OOB reads for truncated H264 STAP-A packets.
...
BUG=webrtc:4771, webrtc:4834
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1238033003
Cr-Commit-Position: refs/heads/master@{#9650}
2015-07-28 15:21:07 +00:00
pbos
6bb1b6e7fe
Control combined_audio_video_bwe with config bool.
...
Permits setting RTP extensions for AudioReceiveStream without enabling
combined A/V BWE. This prevents spamming the log with "Failed to find
extension id:".
BUG=webrtc:4870
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1256803004
Cr-Commit-Position: refs/heads/master@{#9633}
2015-07-24 14:10:25 +00:00
asapersson
6718e97e73
Add encode and decode time to histograms stats:
...
- "WebRTC.Video.EncodeTimeInMs"
- "WebRTC.Video.DecodeTimeInMs"
BUG=chromium:488243
Review URL: https://codereview.webrtc.org/1250203002
Cr-Commit-Position: refs/heads/master@{#9630}
2015-07-24 07:21:02 +00:00
pbos
d6fc47ea95
Remove base channel for video receivers.
...
BUG=webrtc:1695
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1251163002
Cr-Commit-Position: refs/heads/master@{#9624}
2015-07-23 13:58:36 +00:00
Peter Boström
b21fd94ece
Temporarily disable ScreenshareSlides on Android.
...
BUG=chromium:513170
TBR=sprang@webrtc.org
Review URL: https://codereview.webrtc.org/1246123004 .
Cr-Commit-Position: refs/heads/master@{#9620}
2015-07-23 11:14:30 +00:00
pbos
235c35f292
Implement store as an explicit atomic operation.
...
Using explicit atomic operations permits TSan to understand them and
prevents false positives.
Downgrading the atomic Load to acquire semantics. This reduces the
number of memory barriers inserted from two down to one at most.
Also renaming Load/Store to AcquireLoad/ReleaseStore.
BUG=chromium:512382
R=dvyukov@chromium.org , glider@chromium.org
TBR=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1246073002
Cr-Commit-Position: refs/heads/master@{#9613}
2015-07-22 15:35:04 +00:00
Erik Språng
085856cd35
Extend full stack tests with more stats
...
BUG=
R=pbos@webrtc.org
Review URL: https://codereview.webrtc.org/1216613002 .
Cr-Commit-Position: refs/heads/master@{#9612}
2015-07-22 15:18:10 +00:00
asapersson
d89920b74a
Add resolution and fps stats to histograms:
...
- "WebRTC.Video.InputWidthInPixels"
- "WebRTC.Video.InputHeightInPixels"
- "WebRTC.Video.SentWidthInPixels"
- "WebRTC.Video.SentHeightInPixels"
- "WebRTC.Video.ReceivedWidthInPixels"
- "WebRTC.Video.ReceivedHeightInPixels"
- "WebRTC.Video.RenderFramesPerSecond"
BUG=chromium:512752
Review URL: https://codereview.webrtc.org/1228393008
Cr-Commit-Position: refs/heads/master@{#9611}
2015-07-22 13:52:03 +00:00
pbos
8ff04d6b3b
Remove UpdateSsrcs from EncoderStateFeedback.
...
Removes ability to modify set SSRCs from EncoderStateFeedback after
construction.
BUG=webrtc:1695
R=sprang@webrtc.org
TBR=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1241123002
Cr-Commit-Position: refs/heads/master@{#9603}
2015-07-20 15:01:25 +00:00
Jelena Marusic
cd6702282a
Define Stream base classes
...
BUG=webrtc:4690
Defined classes Stream, SendStream and ReceiveStream. Inherited existing stream classes from either SendStream or ReceiveStream.
This is a step towards having a Transport associated with streams instead of a Call. It will allow a lot of code in the Call to be media type agnostic.
R=henrika@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1226123005 .
Cr-Commit-Position: refs/heads/master@{#9591}
2015-07-16 07:30:20 +00:00
Asa Persson
cddb3676e3
Remove unused metric in overuse detector.
...
BUG=
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1237963002 .
Cr-Commit-Position: refs/heads/master@{#9590}
2015-07-16 06:08:20 +00:00
pbos
8fc7fa798f
Base A/V synchronization on sync_labels.
...
Groups of streams that should be synchronized are signalled through
SDP. These should be used rather than synchronizing the first-added
video stream to the first-added audio stream implicitly.
BUG=webrtc:4667
R=hta@webrtc.org , solenberg@webrtc.org , stefan@webrtc.org
TBR=mflodman@webrtc.org
Review URL: https://codereview.webrtc.org/1181653002
Cr-Commit-Position: refs/heads/master@{#9586}
2015-07-15 15:03:04 +00:00
pbos
ba8c15b857
Merge methods for configuring NACK/FEC/hybrid.
...
BUG=webrtc:1695
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1226143013
Cr-Commit-Position: refs/heads/master@{#9580}
2015-07-14 16:36:37 +00:00
stefan
caa498abbf
Make sure RTCP is sent in tests when receiving packets even if REMB is delayed.
...
BUG=chromium:509821
Review URL: https://codereview.webrtc.org/1238703002
Cr-Commit-Position: refs/heads/master@{#9579}
2015-07-14 16:14:57 +00:00
Peter Boström
d6f1a38165
Remove ViEChannel simulcast lock.
...
Since the number of streams is now known on construction we can
initialize all RTP modules on construction. They are internally locked
so we don't nede a simulcast lock anymore.
BUG=1695
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/52639004 .
Cr-Commit-Position: refs/heads/master@{#9577}
2015-07-14 14:08:14 +00:00
jackychen
6e2ce6e1ae
Allow for framerate reduction for HW encoder.
...
R=pbos@webrtc.org , stefan@webrtc.org
TBR=glaznev@google.com
Review URL: https://webrtc-codereview.appspot.com/51159004 .
Cr-Commit-Position: refs/heads/master@{#9573}
2015-07-13 23:26:40 +00:00
Stefan Holmer
11324b9561
Wait for a longer time (5 seconds) before establishing the first bandwidth estimate.
...
This reduces the risk of getting a small initial estimate when doing combined a/v BWE, and the audio stream is received earlier than the video stream.
In addition a check is added to make sure a probe can't reduce the BWE.
R=pbos@webrtc.org
Review URL: https://codereview.webrtc.org/1219303002 .
Cr-Commit-Position: refs/heads/master@{#9560}
2015-07-09 15:28:07 +00:00
pbos
bb36fdf95f
Remove empty-string comparisons.
...
Use .empty() and !.empty() in favor of == "" or != "".
BUG=
R=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1228913003
Cr-Commit-Position: refs/heads/master@{#9559}
2015-07-09 14:48:27 +00:00
pbos
d436298332
Remove ResetStatistics from RTP feedback.
...
BUG=
R=asapersson@webrtc.org , stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1213603002
Cr-Commit-Position: refs/heads/master@{#9548}
2015-07-07 15:32:56 +00:00
pbos
a7d70546ad
Remove VCM_*_PAYLOAD_TYPE constants.
...
These payload types aren't directly connected to any payload type, and
the payload type still has to be negotiated externally. As such these
constants are just a source of confusion.
BUG=
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1215603003
Cr-Commit-Position: refs/heads/master@{#9546}
2015-07-07 14:35:54 +00:00
Erik Språng
468e62a974
Remove MimdRateControl and factories for RemoteBitrateEstimor.
...
BUG=
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1208083002 .
Cr-Commit-Position: refs/heads/master@{#9541}
2015-07-06 08:51:01 +00:00
pbos
db0cf7624e
Add test for dropping repeated NTP timestamps.
...
Regression test for enforcing that frames with repeated or old NTP
timestamps are dropped.
BUG=chromium:480953, webrtc:4615
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1220193002
Cr-Commit-Position: refs/heads/master@{#9533}
2015-07-02 11:14:50 +00:00
pbos
bd2522abf7
Fail RTP parsing on excessive padding length.
...
BUG=webrtc:4771
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1220863002
Cr-Commit-Position: refs/heads/master@{#9525}
2015-07-01 12:35:56 +00:00
Zeke Chin
71f6f4405c
iOS HW H264 support.
...
First step towards supporting H264 on iOS. More tuning/experimentation
required in future CLs. Tested using AppRTCDemo on iPhone6 + iPad Mini.
Future work to get it working on OS/X, simulator (renders black screen
currently) and with the Android AppRTCDemo. Currently protected with a
compile time guard.
BUG=4081
R=andrew@webrtc.org , haysc@webrtc.org , holmer@google.com , jiayl@webrtc.org , kjellander@webrtc.org , pbos@webrtc.org , phoglund@webrtc.org , stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1187573004 .
Cr-Commit-Position: refs/heads/master@{#9515}
2015-06-29 21:35:08 +00:00
Peter Boström
4b91bd0897
Move frame input (ViECapturer) to webrtc/video/.
...
Renames ViECapturer to VideoCaptureInput and initializes several
parameters on construction instead of setters.
Also removes an old deadlock suppression.
BUG=1695, 2999
R=asapersson@webrtc.org , mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/53559004 .
Cr-Commit-Position: refs/heads/master@{#9508}
2015-06-26 04:58:23 +00:00
Erik Språng
2c4c914819
In screenshare mode, suppress VP8 bitrate overshoot and increase quality
...
This change includes several improvements:
* VP8 configured with new rate control
* Detection of frame dropping, with qp bump for next frame
* Increased target and TL0 bitrates
* Reworked rate control (TL allocation) in screenshare_layers
A note on performance: PSNR and SSIM is expected to get slightly worse with this cl. Frame drops and delays should however improve.
BUG=4171
R=pbos@webrtc.org , stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1193513006 .
Cr-Commit-Position: refs/heads/master@{#9495}
2015-06-24 09:24:50 +00:00
pbos
9874ee0d7a
Add temporal-layers option to video_loopback.
...
BUG=
R=asapersson@webrtc.org , sprang@webrtc.org
Review URL: https://codereview.webrtc.org/1194533002
Cr-Commit-Position: refs/heads/master@{#9482}
2015-06-22 11:44:30 +00:00
Peter Boström
2ee2439a1f
Merge video_engine_core into webrtc target.
...
Merges the two video targets since video_engine is no longer usable
standalone.
BUG=webrtc:1695
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1184763009 .
Cr-Commit-Position: refs/heads/master@{#9479}
2015-06-22 05:57:26 +00:00
Stefan Holmer
ff4ea9310e
Only use paced packets for estimating bitrate probes.
...
BUG=4778
R=mflodman@webrtc.org , solenberg@webrtc.org
Review URL: https://codereview.webrtc.org/1188823007 .
Cr-Commit-Position: refs/heads/master@{#9463}
2015-06-18 14:01:43 +00:00
Åsa Persson
24b4eda6f4
Add sent framerates to histogram stats:
...
"WebRTC.Video.InputFramesPerSecond",
"WebRTC.Video.SentFramesPerSecond".
BUG=488243
R=pbos@webrtc.org , stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1169543005 .
Cr-Commit-Position: refs/heads/master@{#9446}
2015-06-16 08:17:09 +00:00
Fredrik Solenberg
04f4931ef0
VoE2 API draft
...
BUG=4690
R=jmarusic@webrtc.org , kwiberg@webrtc.org , mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/50029004
Cr-Commit-Position: refs/heads/master@{#9392}
2015-06-08 11:05:07 +00:00
Åsa Persson
1aff095b6c
Moved check for native frame to VideoReceiveStream::FrameCallback.
...
Stats for decoded framerate will now also be updated if the frame is backed by a texture.
BUG=webrtc:4722
R=mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/53569004
Cr-Commit-Position: refs/heads/master@{#9389}
2015-06-08 07:26:40 +00:00
Peter Boström
d7da120b40
Disable reduced-size RTCP in default config.
...
Verifies that reduced-size isn't configured in WebRtcVideoEngine2
without explicit configuration (which doesn't exist). Also disables REMB
in the default config because it requires reconfiguration.
Adds default-config tests to make sure that they don't contain
parameters that need to be negotiated between clients.
BUG=chromium:497103, webrtc:4745
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1171533002
Cr-Commit-Position: refs/heads/master@{#9384}
2015-06-05 12:09:48 +00:00
Peter Boström
eb66e800d1
Re-land "Convert native handles to buffers before encoding."
...
This reverts commit a67675506c9057bd9ffd4d76aae8b743343d434d.
BUG=webrtc:4081
TBR=magjed@webrtc.org
Review URL: https://codereview.webrtc.org/1158273010
Cr-Commit-Position: refs/heads/master@{#9381}
2015-06-05 09:08:12 +00:00
Peter Boström
308d163c71
Revert "Convert native handles to buffers before encoding."
...
This reverts commit a831dc3a7d10a1fbaa258ee6b1ca6cfc7e91c5ca to unblock
rolling into Chromium.
BUG=4081
TBR=magjed@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/55549004
Cr-Commit-Position: refs/heads/master@{#9354}
2015-06-02 13:04:31 +00:00
scottmg
84f81d8fa1
Fix implicit size_t to uint16_t warning on VS2015.
...
Reviewed as https://review.webrtc.org/54609004/ , but uploaded against
wrong Base URL.
R=pbos@webrtc.org
TBR=
BUG=chromium:440500
Review URL: https://webrtc-codereview.appspot.com/54649004
Patch from scottmg <scottmg@chromium.org>.
Cr-Commit-Position: refs/heads/master@{#9351}
2015-06-02 09:41:12 +00:00
Peter Boström
a831dc3a7d
Convert native handles to buffers before encoding.
...
Required to permit conversion of NV12 handles on iOS to I420 for VP8
software encoding, which blocks texture-based capture. This change
enforces that all texture-based input provides a method for converting
native handles to I420 if they are ever used with software encoders that
do not understand the native handles.
BUG=4081
R=emircan@chromium.org , glaznev@webrtc.org , hbos@webrtc.org , magjed@webrtc.org , mflodman@webrtc.org , stefan@webrtc.org , tkchin@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/50909005
Cr-Commit-Position: refs/heads/master@{#9347}
2015-06-01 18:06:52 +00:00
Peter Boström
9ba52f89ac
Remove intermediate RTCP CNAME buffers.
...
Sets CNAME using a pointer to only perform a copy inside the RTCP
sender.
BUG=
R=tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/50169005
Cr-Commit-Position: refs/heads/master@{#9346}
2015-06-01 12:12:40 +00:00
Miguel Casas-Sanchez
4765070b8d
Rename I420VideoFrame to VideoFrame.
...
This is a mechanical change since it affects so many
files.
I420VideoFrame -> VideoFrame
and reformatted.
Rationale: in the next CL I420VideoFrame will
get an indication of Pixel Format (I420 for
starters) and of storage type: usually
UNOWNED, could be SHMEM, and in the near
future will be possibly TEXTURE. See
https://codereview.chromium.org/1154153003
for the change that happened in Cr.
BUG=4730, chromium:440843
R=jiayl@webrtc.org , niklas.enbom@webrtc.org , pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/52629004
Cr-Commit-Position: refs/heads/master@{#9339}
2015-05-30 00:21:56 +00:00
Peter Boström
2251d6e174
Remove ViESender.
...
Registers transport on construction removing the need for ViESender as a
hop and removing a potential deadlock by removing RegisterSendTransport.
BUG=1695, 2999
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/57449004
Cr-Commit-Position: refs/heads/master@{#9309}
2015-05-28 12:10:48 +00:00
Peter Boström
def39883f0
Configure default render delay as 10 ms.
...
BUG=chromium:488395
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/56419005
Cr-Commit-Position: refs/heads/master@{#9296}
2015-05-27 15:59:21 +00:00
Peter Boström
5a3ebd761c
Revert "Remove default encoder/decoders."
...
This reverts commit 78ae00eea29850bd3bd608287d8b057c88e91b42 due to perf
regressions. Reverting during investigation to figure out root causes.
BUG=chromium:491112
R=henrik.lundin@webrtc.org
TBR=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/56449004
Cr-Commit-Position: refs/heads/master@{#9283}
2015-05-26 09:44:14 +00:00
Henrik Kjellander
57e5fd2e60
PRESUBMIT: Improve PyLint check and add GN format check.
...
Add pylintrc file based on
https://code.google.com/p/chromium/codesearch#chromium/src/tools/perf/pylintrc
bit tightened up quite a bit (the one in depot_tools is far
more relaxed).
Remove a few excluded directories from pylint check and fixed/
suppressed all warnings generated.
Add GN format check + formatted all GN files using 'gn format'.
Cleanup redundant rules in tools/PRESUBMIT.py
TESTED=Ran 'git cl presubmit -vv', fixed the PyLint violations.
Ran it again with a modification in webrtc/build/webrtc.gni, formatted
all the GN files and ran it again.
R=henrika@webrtc.org , phoglund@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/50069004
Cr-Commit-Position: refs/heads/master@{#9274}
2015-05-25 10:55:50 +00:00
Peter Boström
78ae00eea2
Remove default encoder/decoders.
...
This path is not used, senders/receivers already disable default coders.
BUG=1695
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/54449004
Cr-Commit-Position: refs/heads/master@{#9245}
2015-05-21 07:56:17 +00:00
Peter Boström
4d71edef45
Add HW fallback option to software encoding.
...
Permits falling back to software encoding for unsupported resolutions.
BUG=chromium:475116, chromium:487934
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/46279004
Cr-Commit-Position: refs/heads/master@{#9227}
2015-05-19 21:09:17 +00:00