Commit Graph

70 Commits

Author SHA1 Message Date
265a5d298a Remove traces of deprecated WebRtc_Word types.
BUG=314
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1385004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3933 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-02 09:11:20 +00:00
4980679d35 Fixes two bugs in receive statistics.
- Reported bitrate wasn't reset correctly when no frames had been received.
- Internal framerate estimate wasn't reset when no frames had been received.

BUG=1713

Review URL: https://webrtc-codereview.appspot.com/1377004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3924 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-30 22:05:07 +00:00
d35964a1ce Fixing AV sync.
Increased 2 const to allow for a bigger difference in AV sync.

BUG=1711

Re-wrote the ComputeDelays to be readable and remove the possibilities of returning values lower than base_target_delay_ms

R=mflodman@webrtc.org, mikhal@webrtc.org, niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1367004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3922 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-30 16:06:10 +00:00
6faba6edc9 VCM: Setting buffering delay in timing
Review URL: https://webrtc-codereview.appspot.com/1338004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3921 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-30 15:39:34 +00:00
865ada3a52 Don't reset the last je value and mode
Review URL: https://webrtc-codereview.appspot.com/1369004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3916 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-29 19:09:41 +00:00
5b7120c81b Fix two issues where we might end up busy looping in decoder_render mode.
This happens if
- Next frame is far into the future (> 200 ms).
- Next frame is ready for decode/render but incomplete.

BUG=1696
TESTS=trybots

Review URL: https://webrtc-codereview.appspot.com/1354005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3914 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-29 16:41:30 +00:00
381da4be9c VCM: Adding API for the size(duration) of the jitter buffer.
Refers to the duration in time of the frames which are ready to be sent to the decoder.

Review URL: https://webrtc-codereview.appspot.com/1319004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3903 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-25 21:45:29 +00:00
8392cd9edd VCM/JB: Using last decoded state for waiting for key
relanding 1323006

BUG=

Review URL: https://webrtc-codereview.appspot.com/1354004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3902 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-25 21:30:50 +00:00
dc3cd217b2 VCM/JB: FrameForDecoding->IncompleteFrameForDecoding
- Update complete frame for decoding
- Remove FrameForDecodingNack

This CL should only be committed after issue http://webrtc-codereview.appspot.com/1313007/

Review URL: https://webrtc-codereview.appspot.com/1316007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3901 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-25 20:27:04 +00:00
df9c0e5ec9 Revert 3892 "VCM/JB: Using last decoded state for waiting for key"
> VCM/JB: Using last decoded state for waiting for key
> 
> Review URL: https://webrtc-codereview.appspot.com/1323006

Although I have no idea why, it appears this might be causing failures in ViEStandardIntegrationTest.RunsFileTestWithoutErrors. I was unable to reproduce locally. This is a trial revert to verify. If the errors continue to happen, I will restore this change.

TBR=mikhal@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1321010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3896 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-24 02:13:18 +00:00
1248d4effc VCM/JB: Using last decoded state for waiting for key
Review URL: https://webrtc-codereview.appspot.com/1323006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3892 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-23 20:57:06 +00:00
c1f243f8e7 VCM/JB: Skip to the next complete key frame
Review URL: https://webrtc-codereview.appspot.com/1317006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3885 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-22 22:24:38 +00:00
e0e029e8cb Revert 3876
Review URL: https://webrtc-codereview.appspot.com/1341005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3877 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-19 21:11:41 +00:00
ee184b9520 VCM/Receiver: Only update render time when decoding
Review URL: https://webrtc-codereview.appspot.com/1336004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3876 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-19 19:15:47 +00:00
dbd6a6d653 Updating delay for first value
BUG=

Review URL: https://webrtc-codereview.appspot.com/1327005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3865 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-17 16:23:22 +00:00
6e788df19e Remove vim/emacs modelines from .gypi files
BUG=1655

Review URL: https://webrtc-codereview.appspot.com/1326005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3857 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-16 12:40:34 +00:00
56b5f77a2b Add support for multiple streams to RtpPlayer:
- Tests video_rtp_play.cc, video_rtp_play_mt.cc, decode_from_storage.cc rewritten
 - rtp_player.cc/.h rewritten; added interfaces for externally setting up sinks
 - Support for reading .rtp files pulled out into rtp_file_reader namespace
 - Added support for reading .pcap (libpcap/wireshark/tcpdump) files, see pcap_file_reader

BUG=
TEST=trybots

Review URL: https://webrtc-codereview.appspot.com/1201009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3856 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-16 10:31:56 +00:00
885cd13356 Start NACKing as soon as we have the first packet of a key frame.
BUG=1605

Review URL: https://webrtc-codereview.appspot.com/1307007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3855 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-16 09:38:26 +00:00
bdb9b971be Change receive statistics bitrate to be provided in bps instead of kbps.
BUG=1469

Review URL: https://webrtc-codereview.appspot.com/1326004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3854 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-16 09:02:03 +00:00
c2a3aa7926 Partial revert of r3844
Review URL: https://webrtc-codereview.appspot.com/1320004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3845 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-12 19:53:30 +00:00
d6bd7cd2b1 removing redundant calls to cleanframes
Review URL: https://webrtc-codereview.appspot.com/1318004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3844 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-12 17:09:51 +00:00
9da751715f VCM/JB:Removing hybrid and setting a decodable state.
Review URL: https://webrtc-codereview.appspot.com/1283004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3834 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-11 18:49:13 +00:00
7bc465bd21 Fix issues with incorrect wrap checks when having big buffers and high bitrate.
Introduces shared functions for timestamp and sequence number wrap checks.

BUG=1607
TESTS=trybots

Review URL: https://webrtc-codereview.appspot.com/1291005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3833 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-11 17:48:02 +00:00
122d209e67 Fixes an issue where the start bitrate is stored in kbps instead of bps.
BUG=1638
TEST=trybots and vie_auto_test loopback with nack.

Review URL: https://webrtc-codereview.appspot.com/1312004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3831 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-11 17:21:40 +00:00
806dc3b0e6 More trace events
The goal of this change is to unify tracing events styles
and add trace events for all RTP traffic.

BUG=1555
Review URL: https://webrtc-codereview.appspot.com/1290007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3806 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 19:54:10 +00:00
4d2f5de67a Improve how NACK lists are generated before a frame has been decoded.
BUG=1598

Review URL: https://webrtc-codereview.appspot.com/1295004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3805 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 18:24:41 +00:00
79b0289bfc Adds event traces and counters for WebRTC receive side.
Review URL: https://webrtc-codereview.appspot.com/1279005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3766 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-04 19:43:34 +00:00
7b859cc1e9 Webrtc_Word32 => int32_t in video_coding/main/
BUG=

Review URL: https://webrtc-codereview.appspot.com/1279004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3753 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-02 15:54:38 +00:00
29f34b8727 Fix for issue: https://code.google.com/p/webrtc/issues/detail?id=1549
Review URL: https://webrtc-codereview.appspot.com/1270004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3741 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-28 18:57:46 +00:00
bfacda60be Add interface to signal a network down event.
- In real-time mode encoding will be paused until the network is back up.
- In buffering mode the encoder will keep encoding, and packets will be
  buffered at the sender. When the buffer grows above the target delay
  encoding will be paused.
- Fixes a couple of issues related to pacing which was found with the new test.
- Introduces different max bitrates for pacing and for encoding. This allows
  the pacer to faster get rid of the queue after a network down event.

(Work based on issue 1237004)

BUG=1524
TESTS=trybots,vie_auto_test

Review URL: https://webrtc-codereview.appspot.com/1258004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3730 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-27 16:36:01 +00:00
836af79f58 Remove incorrect asserts.
BUG=1527

Review URL: https://webrtc-codereview.appspot.com/1214006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3698 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-21 12:15:44 +00:00
3d0b0d6902 Follow-up fix for r3681.
TESTS=trybots and vie_auto_test
BUG=1514

Review URL: https://webrtc-codereview.appspot.com/1216006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3689 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-19 10:04:57 +00:00
f4944d49cf Fix framerate sent to account for actually sent frames.
TESTS=trybots
BUG=1481

Review URL: https://webrtc-codereview.appspot.com/1195005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3682 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-18 17:04:52 +00:00
abc9d5b6aa Change VCM interface to take target bitrate in bits per second.
This also solves issue 1469.

TESTS=trybots
BUG=1469

Review URL: https://webrtc-codereview.appspot.com/1215004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3681 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-18 17:00:51 +00:00
2baf5f5fa0 Refactor webrtc specific Event implementation to an EventFactory.
Review URL: https://webrtc-codereview.appspot.com/1187005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3664 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-13 08:46:25 +00:00
971278a962 Splitting out video_coding_test executable again.
This CL undoes the merge of the developer test tool and the gtest tests
that was merged in https://code.google.com/p/webrtc/source/detail?r=3176

Doing that, we get a pure gtest executable of
video_coding_integrationtests which can run properly on the bots.

BUG=none
TEST=Trybots passing + local execution on Linux with:
out/Debug/video_coding_integrationtests --gtest_print_time (to ensure it will be possible to run with runtest.py)

Review URL: https://webrtc-codereview.appspot.com/1171007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3638 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-08 10:20:53 +00:00
84cd8e39cf Disable frame dropper for screenshare mode.
BUG=1466

Review URL: https://webrtc-codereview.appspot.com/1170004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3629 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-07 13:12:32 +00:00
7c16c3c4a1 Move video_coding OWNERS to video_coding/.
TBR=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1171004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3628 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-07 13:11:32 +00:00
a64300af50 Refactor NACK list creation to build the NACK list as packets arrive.
Also fixes a timer bug related to NACKing in the RTP module which could cause packets to only be NACKed twice if there's frequent packet losses.

Note that I decided to remove any selective NACKing for now as I don't think the gain of doing it is big enough compared to the added complexity. The same reasoning for empty packets. None of them will be retransmitted by a smart sender since the sender would know that they aren't needed.

BUG=1420
TEST=video_coding_unittests, vie_auto_test, video_coding_integrationtests, trybots

Review URL: https://webrtc-codereview.appspot.com/1115006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3599 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-04 15:24:40 +00:00
9e254133ad Rewrite the jitter buffer statistics test and put make it robust under valgrind.
BUG=1158

Review URL: https://webrtc-codereview.appspot.com/1116008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3579 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-28 08:45:23 +00:00
eb91792cfd Refactoring temporal layers implementation and adding VideoCodecMode for easier control of codec settings.
Review URL: https://webrtc-codereview.appspot.com/1105007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3528 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-18 14:40:18 +00:00
ef9f76a59d Adding a receive side API for buffering mode.
At the same time, renaming the send side API.

Review URL: https://webrtc-codereview.appspot.com/1104004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3525 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-15 23:22:18 +00:00
57a0049e25 VCM: Removing frame drop enable from Reset call
BUG = 1387

Review URL: https://webrtc-codereview.appspot.com/1097010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3500 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-11 21:23:23 +00:00
3d305c64b4 Updates to send side streaming mode:
1. Disabling frame-droppers from the vie encoder and not the channel.
2. Accounting for qpMax in the VP8 wrapper.

Review URL: https://webrtc-codereview.appspot.com/1101007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3492 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-10 18:42:55 +00:00
b64732abfc Fix Win64 build breakage
This is for landing https://webrtc-codereview.appspot.com/1096006/ by Justin Schuh.

Stable will be updated after this has landed.

Review URL: https://webrtc-codereview.appspot.com/1091008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3484 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-07 10:14:05 +00:00
fa53d8717c Fixing/disabling Windows x64 warnings
Disabled MSVC #4267 warnings in common.gypi to enable x64 builds
for Windows.
Fixed MSVC #4267 warnings in test/testsupport.
Added third_party/directxsdk to .gitignore.

With http://review.webrtc.org/1070008 landed, this should make it possible
to build for x64 on Windows.

BUG=1348
TEST=Compiling with http://review.webrtc.org/1070008 applied:
set GYP_DEFINES="target_arch=x64"
set GYP_GENERATORS=ninja
gclient sync
ninja -C out\Debug_x64

Review URL: https://webrtc-codereview.appspot.com/1060008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3464 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-04 10:07:17 +00:00
becf9c897c Fix mismatch between different NACK list lengths and packet buffers.
This is a second version of http://review.webrtc.org/1065006/ which passes the parameters via methods instead of via constructors.

BUG=1289

Review URL: https://webrtc-codereview.appspot.com/1065007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3456 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-01 15:09:57 +00:00
119c67df36 Adding a max jitter filter to the JB estimate - allowing two modes, one will return the last estimate (current setting), and another will return the max value seen, and allow setting an initial value.
This cl also includes tests and some clean up.

Review URL: https://webrtc-codereview.appspot.com/1019007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3445 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-31 17:18:02 +00:00
e07c661a29 VP8: Making key frame interval a tunnable parameter
Review URL: https://webrtc-codereview.appspot.com/1070006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3444 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-31 16:37:13 +00:00
bf535b9b6b Optimize NACK list creation.
- No longer looping through all frame buffers.
- Keeping track of the current nack list index when building the list.
- Don't look for changes in the NACK list if the size has increased.

Review URL: https://webrtc-codereview.appspot.com/1076005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3420 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-28 08:48:13 +00:00