Commit Graph

148 Commits

Author SHA1 Message Date
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
stefan@webrtc.org
932ab18d32 Default to always NACKing residual losses when having both FEC and NACK.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/296002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1047 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-29 11:33:31 +00:00
marpan@webrtc.org
d1b7932adf VP8: Setting non-zero (conservative) threshold for frame dropper.
Review URL: http://webrtc-codereview.appspot.com/291001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1040 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-28 19:20:31 +00:00
stefan@webrtc.org
0ee8ba1929 Remove WebRTC dependency on libvpx_lib and libvpx_include.
Removes dependencies on libvpx_lib and libvpx_include targets when
building with Chromium.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/293004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1026 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-25 12:12:43 +00:00
henrik.lundin@webrtc.org
859626570a VP8 RTP work
Fixing the plumbing to get the KEYIDX between VP8 wrapper and
rtp_rtcp module. Also fixing a missing pipe for temporalIdx

Review URL: http://webrtc-codereview.appspot.com/295004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1024 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-25 10:17:00 +00:00
kjellander@webrtc.org
543c3eaa46 Fixing Release compilation errors
Review URL: http://webrtc-codereview.appspot.com/267026

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1000 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-23 12:20:35 +00:00
mikhal@webrtc.org
2b838b4121 video_coding: updating the session info unit test following recent changes
Review URL: http://webrtc-codereview.appspot.com/290002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@996 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-23 00:20:19 +00:00
mikhal@webrtc.org
425b377973 video_coding: Updating internal_defines to resolve latest build error. Refers to JB flush update.
Review URL: http://webrtc-codereview.appspot.com/289001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@995 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-22 23:41:29 +00:00
mikhal@webrtc.org
f13388f134 video_coding: Requesting a key frame after a JB flush
Review URL: http://webrtc-codereview.appspot.com/280006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@994 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-22 22:57:51 +00:00
mikhal@webrtc.org
6b9a7f8704 video_coding: Allowing for a decodable state independent of selective nacking
Review URL: http://webrtc-codereview.appspot.com/263001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@993 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-22 22:48:20 +00:00
marpan@webrtc.org
3caa327af0 VP8 wrapper: Turn on some mild amount of deblocking in post-processing.
Review URL: http://webrtc-codereview.appspot.com/268015

git-svn-id: http://webrtc.googlecode.com/svn/trunk@982 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-19 01:08:09 +00:00
kjellander@webrtc.org
cd7b57ef9e Fixing release compilation error
Review URL: http://webrtc-codereview.appspot.com/279007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@968 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-17 14:26:21 +00:00
kjellander@webrtc.org
85596d5bf4 Setting completeFrame to true for all created encoded images.
Review URL: http://webrtc-codereview.appspot.com/276008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@948 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-15 13:45:25 +00:00
phoglund@webrtc.org
1144ba2268 Base and codec tests now run verify output and render to file instead of to screen.
Rewrote the codec test to render to file and do video comparisons.

Refactored the coded tests somewhat. I still need to figure out how to do comparison in the automated case.

Added video analysis to the test. This will make sure that the system output roughly the right thing.

Moved the video metrics library into the test_support library. Made the metrics library available in the automated tests.

Made sure no one passes in too large YUV videos into the autotest.

The standard test's output now gets captured for both the left and right windows.

Wrote a rendering device which just writes the raw frames to file, for analysis. Updated the base standard test to dump its left window output to file. We don't do anything with it yet though.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/249001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@931 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-11 09:01:03 +00:00
mflodman@webrtc.org
637a59e68e jitter buffer update: waiting for key frame when Nack is enabled and continuity cannot be determined.
Review URL: http://webrtc-codereview.appspot.com/266010
Patch from mikhals <mikhal@webrtc.org>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@924 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-10 12:50:48 +00:00
kjellander@webrtc.org
ad79d6f164 Removing exceptions since not used
Review URL: http://webrtc-codereview.appspot.com/267002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@910 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-09 16:11:14 +00:00
henrikg@webrtc.org
c58ef08da2 Removes system CPU measurement for Chrome build.
It does not work on Chrome Windows, and is anyway not needed for Chrome.
Review URL: http://webrtc-codereview.appspot.com/243006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@902 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-08 08:44:17 +00:00
kjellander@webrtc.org
20a370e875 Changing the namespace of TestSuite to webrtc::test.
Adding gmock initialization into main test runner class

Review URL: http://webrtc-codereview.appspot.com/254004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@885 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-04 01:19:16 +00:00
kjellander@webrtc.org
1a8d08ad76 Changing usage of gtest_main target, to use test_support_main instead.
Review URL: http://webrtc-codereview.appspot.com/252002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@884 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-03 23:28:47 +00:00
mikhal@webrtc.org
e203de7ba2 jitter_buffer updates:
1. Determining continuity based on pictureId and not seq. numbers when available.
2. Hybrid bug fix: Don't set to decodable when the nack list is empty.
Review URL: http://webrtc-codereview.appspot.com/255001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@878 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-03 00:42:52 +00:00
henrik.lundin@webrtc.org
679cb07980 Fix build error for release build
Review URL: http://webrtc-codereview.appspot.com/252003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@874 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-02 19:52:27 +00:00
henrik.lundin@webrtc.org
baf6db5ead Making dual decoder work again in VCM
Changing the assignment operator in VCMJitterBuffer to a named
function (CopyFrom) instead, since it is not a straight
assignment. Also fixing two bugs in the jitter copy function.

Bug fix in VCMEncodedFrame: The copy constructor did not
copy _length.

In VCM codec database, make sure that the callback object is
preserved when copying back from secondary to primary decoder.

In VP8 wrapper, adding code to copy the _decodedImage to the
Copy() method.

Bugfix in video_coding_test rtp_player:
The retransmissions where made in reverse order. Now new items are
appended to the end of the LostPackets list, which makes the order
correct when retransmitting.

Handling the case when cloning an unused decoder state:
When the decoder has not successfully decoded a frame yet,
it cannot be cloned. A NULL pointer will be returned all
the way out to VideoCodingModuleImpl::Decode(). When this
happens, the VCM will call Reset() for the dual receiver,
in order to reset the state to kPassive.

Review URL: http://webrtc-codereview.appspot.com/239010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@873 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-02 18:58:39 +00:00
kjellander@webrtc.org
d292b9c9da Unit tests now compile and run at all platforms.
Cosmetic changes to mocks.h.

Review URL: http://webrtc-codereview.appspot.com/253003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@871 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-02 16:34:52 +00:00
punyabrata@webrtc.org
0ab521f754 Resolving a crash related to strncopy followed by a strcat
call. strncopy will not explicity copy or add a "\0" therefore
strcat did not know where to append the "\n" which was causing
an out of bounds crash.
Because we are checking the length, strcpy should be good enough
as it also copies the "\0". Please note that that I am pre-emptively
adding 2 instead of 1 to the length to take into account of the \n
that will be added later.
Review URL: http://webrtc-codereview.appspot.com/253004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@857 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-01 15:19:44 +00:00
stefan@webrtc.org
f960211f8b Fixes two jitter buffer bugs related to NACK.
Avoid decoding delta frames after a Flush() and after requesting
a key frame due to full NACK list.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/247011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@837 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 16:00:49 +00:00
stefan@webrtc.org
eb65860720 Reverts the workaround in r823 and solves a macro bug.
The macro bug caused frames to be dropped after being grabbed
for decoding.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/248004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@831 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 12:25:34 +00:00
mikhal@webrtc.org
5200a05500 video_coding/jitter_buffer Updating condition on which we return a frame.
Review URL: http://webrtc-codereview.appspot.com/240011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@825 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 16:54:54 +00:00
mikhal@webrtc.org
30f6376802 VP8: Updating codec version: VP8 version will now return the libvpx version used.
Review URL: http://webrtc-codereview.appspot.com/247009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@824 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 16:45:00 +00:00
stefan@webrtc.org
2d28aff785 Workaround for an issue where frames are grabbed for decoding prematurely.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/240013

git-svn-id: http://webrtc.googlecode.com/svn/trunk@823 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 16:13:18 +00:00
mflodman@webrtc.org
7e4269e9ee Changed VP8 qp min and added noise reduction.
Review URL: http://webrtc-codereview.appspot.com/248003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@821 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 12:59:47 +00:00
kjellander@webrtc.org
6b7799021c Fixing build errors on Windows platform. Minor changes...
Review URL: http://webrtc-codereview.appspot.com/241004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@819 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-26 02:38:09 +00:00
frkoenig@google.com
fc9bcef8c7 Data alignment fix for SSIM.
WebRtc_UWord64[2] wasn't always aligned to 128 bytes, which
is necessary for _mm_store_si128.  By declaring the 
variable as __m128i it will always be 128 bytes aligned.

Incorrect include files.

__m128i is defined in emmintrin.h for visual studio.  Extra include on mac and linux is not a problem.
Review URL: http://webrtc-codereview.appspot.com/239013

git-svn-id: http://webrtc.googlecode.com/svn/trunk@816 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-26 00:07:32 +00:00
stefan@webrtc.org
d855c1a4e8 Reverts r807 and fixes the real issue in the VCM.
This fixes an issue in the VCM where we don't wait for a packet to arrive
if the jitter buffer is empty. This also fixes an issue where an old
packet can trigger a packet event signal for a future frame.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/248001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@814 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 11:52:48 +00:00
wjia@webrtc.org
f0cd394a2e Put fwrite calls under corresponding macros since they shouldn't show up in release build.
This also make chromeos build happy.
BUG=none
TEST=compile
Review URL: http://webrtc-codereview.appspot.com/247006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@808 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 00:40:43 +00:00
mikhal@webrtc.org
f31826e17b adding a wait on the decode thread when no frames are available
Review URL: http://webrtc-codereview.appspot.com/246009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@807 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 00:20:54 +00:00
mikhal@webrtc.org
a412924c0e VP8:Setting number of cores based on image size
Review URL: http://webrtc-codereview.appspot.com/242010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@806 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 00:02:43 +00:00
stefan@webrtc.org
158f496030 Fixes a rate control bug in the VP8 wrapper.
Changes how we signal frame rate and frame durations to the encoder. Rather
than changing the time base, we now only modify the frame durations, while
keeping the timebase constant. The frame duration is currently calculated
from the average input frame rate. Ideally, the frame duration should
be calculated as the timestamp diff, which is the real duration of a
frame, but the encoder doesn't seem to like too varying durations.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/247001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@795 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-21 13:15:16 +00:00
stefan@webrtc.org
ead87b5051 Fix potential issue where frame buffers might be freed while being decoded.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/243004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@791 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-21 06:46:37 +00:00
stefan@webrtc.org
2b0f094c8f Avoid reallocating the decodedImage for every decoded frame.
Also made sure the right size is allocated.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/240004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@790 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-21 06:39:03 +00:00
mikhal@webrtc.org
ee3dfa6f43 Review URL: http://webrtc-codereview.appspot.com/241007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@789 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-21 00:46:09 +00:00