stefan@webrtc.org
f5edb923b1
Remove unused variable.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/333016
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1279 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 08:34:31 +00:00
henrik.lundin@webrtc.org
4a19030131
New VCM robustness API
...
This CL defines and starts to implement a new robustness API for
video coding module. The API is partly implemented. Some of the
modes and methods are still TBD.
Also including a new unittest with mocking of decoder and callbacks,
and faking of system clock.
Review URL: http://webrtc-codereview.appspot.com/333006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1276 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 20:38:37 +00:00
henrik.lundin@webrtc.org
7d8c72e2db
Re-implement dependency injection of TickTime into VCM and tests
...
This change basicly re-enables the change of r1220, which was
reverted in r1235 due to Clang issues.
The difference from r1220 is that the TickTimeInterface was
renamed to TickTimeClass, and no longer inherits from TickTime.
Review URL: http://webrtc-codereview.appspot.com/335006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1267 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 15:24:01 +00:00
stefan@webrtc.org
898f881e32
Make sure the next frame to be decoded is cleaned up if it's empty.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/332001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1261 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 09:13:14 +00:00
stefan@webrtc.org
8c5d24266e
Fix VP8 layer 2 sync dependencies.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/333010
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1259 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 08:56:04 +00:00
mikhal@webrtc.org
61045a4a03
video_coding/jitter_buffer: Account for layer info when searching for the next frame
...
Review URL: http://webrtc-codereview.appspot.com/328003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1256 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-20 23:24:19 +00:00
stefan@webrtc.org
62fdc42e9c
Fix build issue with clang.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/330009
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1244 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-20 09:27:09 +00:00
stefan@webrtc.org
8dc9e4760e
Fixes for selective NACKing.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/332007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1243 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-20 09:12:50 +00:00
mikhal@webrtc.org
0e7d9d862a
Adding layer info consideration when applying FEC protection. In this first version, we hard code protection zero for non-base layer frames. As a future enhancement, an array should be passed from mediaOpt to set the protection per layer. A TODO was added in MediaOpt.
...
Review URL: http://webrtc-codereview.appspot.com/330005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1238 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-19 19:04:49 +00:00
mikhal@webrtc.org
190e88a6d3
video_coding: When in hybrid mode, don't NACK non-base layer packets
...
Review URL: http://webrtc-codereview.appspot.com/334002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1237 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-19 18:57:14 +00:00
mikhal@webrtc.org
884d8e7f4b
video_coding: Updating sync state based on the layer flag
...
Review URL: http://webrtc-codereview.appspot.com/333004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1236 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-19 18:53:05 +00:00
henrik.lundin@webrtc.org
303158588b
Revert "Inject TickTimeInterface into VCM and tests"
...
This CL reverts r1220.
Review URL: http://webrtc-codereview.appspot.com/336002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1235 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-19 17:55:45 +00:00
stefan@webrtc.org
b33f9dccd6
Correction to how the VP8 wrapper generates picture ids.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/329006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1229 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-19 10:24:02 +00:00
henrik.lundin@webrtc.org
e7d8c56c56
Fix for dual decoder in VCM receiver
...
In VCMReceiver::FrameForDecoding, one of the if-cases could sometimes
extract an incomplete frame without first copying the state to the
dual decoder.
Review URL: http://webrtc-codereview.appspot.com/328006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1221 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-16 15:40:52 +00:00
henrik.lundin@webrtc.org
a70f945086
Inject TickTimeInterface into VCM and tests
...
The purpose of this change is to introduce dependency injection
of the timer into the video coding module.
Review URL: http://webrtc-codereview.appspot.com/332003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1220 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-16 14:40:05 +00:00
leozwang@webrtc.org
0c839fe873
Add new source file to makefile
...
Review URL: http://webrtc-codereview.appspot.com/322015
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1209 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-15 19:10:24 +00:00
henrik.lundin@webrtc.org
0a10e3c4b2
Fix order of include and guard in tick_time_interface.h
...
Review URL: http://webrtc-codereview.appspot.com/331002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1207 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-15 16:08:36 +00:00
henrik.lundin@webrtc.org
c74b2861f3
Fix the include in fake_tick_timer_interface.h
...
The include was in error.
Review URL: http://webrtc-codereview.appspot.com/330002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1204 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-15 11:28:31 +00:00
leozwang@webrtc.org
9aa9f44ebc
Add new source files because of r1174
...
Review URL: http://webrtc-codereview.appspot.com/320011
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1193 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-14 19:08:33 +00:00
stefan@webrtc.org
780a07a843
Fix infinite loop bug introduced in r1174.
...
Merges CleanUpSizeZeroFrames with CleanUpOldFrames, and changes the
behavior to go through all frames looking for empty frames.
TBR=mikhals
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/318013
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1186 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-14 15:55:19 +00:00
pwestin@webrtc.org
9fe3d51372
Set the new layer sync bit in the VP8 info struct.
...
Review URL: http://webrtc-codereview.appspot.com/324010
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1185 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-14 15:13:04 +00:00
henrik.lundin@webrtc.org
fbf5af444b
Adding a mockable wrapper class for TickTime in VCM
...
The class is called TickTimeInterface, with a fake implementation in FakeTickTime.
Review URL: http://webrtc-codereview.appspot.com/323012
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1183 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-14 10:36:10 +00:00
stefan@webrtc.org
ef5247b5b1
Fix session_info_unittest error.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/324009
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1182 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-14 10:25:38 +00:00
stefan@webrtc.org
0c40d3315f
Fixes an assert triggered in jitter_buffer_test and disables deblocking.
...
When deblocking is enabled the first frames can include uninitialized
memory. Disabling for now.
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/320010
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1181 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-14 09:39:30 +00:00
mikhal@webrtc.org
832cacacff
video-coding: Adding a decoded state to the JB logic (JB refactor).
...
This new class stores the last decoded info, including temporal info.
Review URL: http://webrtc-codereview.appspot.com/300005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1174 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-13 21:15:05 +00:00
stefan@webrtc.org
f4c8286222
Pass NACK and FEC overhead rates through the ProtectionCallback to VCM.
...
These overhead rates are used by the VCM to compensate the source
coding rate for NACK and FEC.
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/323003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1171 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-13 15:38:14 +00:00
henrik.lundin@webrtc.org
eda86dc76b
Adding a LayerSync bit to VP8 RTP header
...
Updated RtpFormatVp8, ModuleRTPUtility, VP8Encoder and VP8Decoder
to support a new LayerSync ("Y") bit. Note, in VP8Encoder the bit
must be used together with a non-negative value for temporalIdx.
Fixing the plumbing between RTP module and and from VP8 wrapper.
Updating unit tests; all pass.
The new bit is yet to be used by the VP8 wrapper.
Review URL: http://webrtc-codereview.appspot.com/323008
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1169 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-13 14:11:06 +00:00
stefan@webrtc.org
076fa6e674
The second step towards a list based SessionInfo.
...
Added unittests for most of public functions of SessionInfo.
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/301014
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1166 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-13 07:54:56 +00:00
mikhal@webrtc.org
352ade7023
video_coding: Allocating encoded buffer based on length and not size
...
Review URL: http://webrtc-codereview.appspot.com/318010
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1163 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-13 00:54:28 +00:00
stefan@webrtc.org
1480f02faf
Fix VCM test build warnings on Mac with clang.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/318008
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1160 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-12 13:45:59 +00:00
stefan@webrtc.org
7889a9b49a
Remove use of CriticalSectionScoped(CriticalSectionWrapper& critsect) in VCM.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/318005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1159 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-12 08:18:24 +00:00
mikhal@webrtc.org
ea71440aec
video_coding: Adding the non reference flag to the receive side logic.
...
Review URL: http://webrtc-codereview.appspot.com/323005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1157 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-12 02:29:34 +00:00
mikhal@webrtc.org
2ab104e6be
Switching WebRtc to LibYuv.
...
General Notes:
1. In general, API structure was not modified and is based on VPLIB.
2. Modification to API: Return values are based on libyuv, i.e. 0 if ok, a negative value in case of an error (instead of length).
3. All scaling (inteprolation) is now done via the scale interface. Crop/Pad is not being used.
4. VPLIB was completely removed. All tests are now part of the libyuv unit test (significantly more comprehensive and based on gtest).
5. JPEG is yet to be implemented in LibYuv and therefore existing implementation remains.
Review URL: http://webrtc-codereview.appspot.com/258001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1140 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-09 02:46:22 +00:00
mikhal@webrtc.org
f5ee1dc3e6
video_coding: Adding temporal layer info support to receive side
...
Review URL: http://webrtc-codereview.appspot.com/303005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1134 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-08 19:04:47 +00:00
kjellander@webrtc.org
7de6e10410
Fixing compilation error on Linux 64-bit
...
Problem was introduced in http://webrtc-codereview.appspot.com/311001/ because I had projects generated with Valgrind configuration, which is more forgiving about these implicit conversions.
BUG=
TEST=Compiling in Debug+Release on Linux, Mac and Windows.
Review URL: http://webrtc-codereview.appspot.com/318002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1127 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-08 08:39:13 +00:00
kjellander@webrtc.org
5b97b1216f
Splitted FileHandler into FrameReader and FrameWriter classes and moved them to testsupport in test.gyp.
...
Fixed unit tests so they don't use ASSERT_DEATH since that doesn't work with Valgrind.
Fixed all Valgrind warnings except the one caused by CriticalSectionWrapper in system_wrappers.
Reworked all includes and GYP include paths to use full directory paths.
Removed util.h for logging, since it rendered warnings in Valgrind because of gflags. Replaced it with a verbose flag and a new function in video_quality_measurement.cc
BUG=
TEST=Passed test_support_unittests and video_codecs_test_framework_unittests on Linux, Mac and Windows.
Review URL: http://webrtc-codereview.appspot.com/311001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1126 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-08 07:42:18 +00:00
stefan@webrtc.org
b3bd1cd5f1
Fixes Valgrind warnings in the default VCM tests.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/299010
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1120 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-07 11:48:09 +00:00
stefan@webrtc.org
58927e8d8f
Disable deblocking temporarily due to Valgrind warnings.
...
Also corrects the copying of the decoded image data for frames
with odd width or height.
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/307002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1116 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-07 08:13:31 +00:00
stefan@webrtc.org
c7e2bffb66
Fix header/lib mismatch caused by a constant not defined for header file.
...
BUG=http://code.google.com/p/webrtc/issues/detail?id=170
TEST=
Review URL: http://webrtc-codereview.appspot.com/300008
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1110 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-06 13:44:25 +00:00
mikhal@webrtc.org
a5e980a906
Updating jitter buffer test following latest changes.
...
Review URL: http://webrtc-codereview.appspot.com/294002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1106 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-05 18:27:31 +00:00
stefan@webrtc.org
0ae71b9ccb
Disable temporal layers when building with Chromium.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/301010
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1099 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-05 08:42:52 +00:00
pwestin@webrtc.org
db221d2b81
Fixes to temporal layers, Henrika please review src/common_types.h
...
Review URL: http://webrtc-codereview.appspot.com/286001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1091 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-02 11:31:08 +00:00
stefan@webrtc.org
9cb2b56b65
Corrected a fread verification.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/301006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1088 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-02 10:22:29 +00:00
stefan@webrtc.org
772d70bcd2
Fix release build error.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/304005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1083 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-02 09:18:49 +00:00
stefan@webrtc.org
a4a88f90c4
Implemented NACK based reference picture selection.
...
This CL implements NACK based reference picture selection for VP8. A separate
class is used for keeping track of the references and managing the VP8 encode
flags. Appropriate tests have also been added.
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/284002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1082 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-02 08:34:05 +00:00
kjellander@webrtc.org
5f4f69ac57
Removing sleeps from vp8_test.
...
These sleeps were remains from earlier tests that required them to work with some codecs. Removing these sleep calls cut the execution time from 90s to 30s on my machine.
Review URL: http://webrtc-codereview.appspot.com/304004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1077 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-01 15:50:04 +00:00
kjellander@webrtc.org
4c4b7f500f
Converting vp8_test to use fileutils and gtest
...
Review URL: http://webrtc-codereview.appspot.com/289012
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1074 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-01 15:24:36 +00:00
mikhal@webrtc.org
b9db43e1b6
video_coding/jitter buffer: Reduce delay on a complete frame: No need for the next frame when current frame is already complete.
...
Review URL: http://webrtc-codereview.appspot.com/289007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1069 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-30 18:38:01 +00:00
stefan@webrtc.org
0c2adf0b75
Fix bug introduced when enabling VP8 frame dropping.
...
Also fixes two unit test mismatches.
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/299002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1061 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-30 14:41:58 +00:00
stefan@webrtc.org
ac2c677bf6
Make all video_coding tests use the resources and output directories.
...
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/298001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1060 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-30 14:23:39 +00:00