61 Commits

Author SHA1 Message Date
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
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
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
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
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
kma@webrtc.org
d75889e2eb Change of Android makefiles to build latest video coding code.
Review URL: http://webrtc-codereview.appspot.com/239008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@786 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-20 16:28:56 +00:00
stefan@webrtc.org
ffd28f95c5 Request key frames to battle error propagation.
The VP8 decoder wrapper will request key frames 30 frames after seeing
a packet loss, if it hasn't received a state refresh (only possible
through key frames in this version).

For this to be possible the jitter buffer has been made aware of
picture ids to be able to detect frame losses. Legacy JB code to
handle streams without marker bits was also removed since it
conflicts with streams with FEC.

BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@774 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-19 15:55:39 +00:00
mikhal@webrtc.org
d0752c370d video_coding: Update to hybrid mode: Set FEC values for zero below a threshold.
Review URL: http://webrtc-codereview.appspot.com/245001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@773 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-19 15:48:30 +00:00
pwestin@webrtc.org
1da1ce0da5 First implementation of simulcast, adds VP8 simulcast to video engine.
Changed API to RTP module
Expanded Auto test with a test for simulcast
Made the video codec tests compile
Added the vp8_simulcast files to this cl
Added missing auto test file
Review URL: http://webrtc-codereview.appspot.com/188001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@736 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-13 15:19:55 +00:00
stefan@webrtc.org
4c059d87b3 Add metric for number of packets discarded by JB due to not being decodable
Also fixes a couple of bugs related to sequence number wrap found while
testing.

BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@732 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-13 07:35:37 +00:00
stefan@webrtc.org
791eec7424 Add API to get the number of packets discarded by the video jitter buffer due to being too late.
BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@723 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-11 07:53:43 +00:00
stefan@webrtc.org
06887aebae Fixes two bugs when decoding with packet losses.
Disable _missingFrame bit since we can't set it correctly with FEC.

No longer return more than one decoded frame per Decode() call.
This is a work-around for a bug where the frame info map was popped more often than items were added to the map.

BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@722 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-10 14:17:46 +00:00
stefan@webrtc.org
4b6f747373 Fixes a newly introduced bug in the jitter buffer where buffer reallocation
causes corrupt pointers.
Review URL: http://webrtc-codereview.appspot.com/186003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@688 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-04 06:58:39 +00:00
stefan@webrtc.org
93d216c23f Fixed bug in jitter buffer which caused the missingFrames bit to never be set.
Also updated the VP8 wrapper to return fully concealed frames (for rendering).

BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@687 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-04 06:48:11 +00:00
mikhal@webrtc.org
ae7a0522c5 video_coding robustness: Updating hybrid mode's settings
1. Disabling adjustment factor - temporary update. 
2. Enabling a windowed filtered loss for the hybrid mode.  
Review URL: http://webrtc-codereview.appspot.com/192003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@684 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-03 22:54:34 +00:00
marpan@google.com
f1f3fb33b5 Update to rate-mismatch factor in media_opt_util.
Review URL: http://webrtc-codereview.appspot.com/193003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@678 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-03 19:09:45 +00:00
stefan@webrtc.org
5b91464edf Allow an aggregated partition to spill over to a new packet.
Adds support for the case where the partition 0 and parts of partition 1
are transmitted in packet 1, and the end of partition 2 is transmitted
in packet 2.

BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@675 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-03 10:26:12 +00:00
mikhal@webrtc.org
e185e9f68a video_coding: updates to jitter buffer logic: Make sure that every frame is inserted only once to the list.
Review URL: http://webrtc-codereview.appspot.com/165001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@648 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-09-23 22:02:40 +00:00
mikhal@webrtc.org
105ff39dec video coding: updating offline tests.
Additional clean-up to the offline test: Placing test callbacks in a designated file. 
Review URL: http://webrtc-codereview.appspot.com/167002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@642 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-09-23 16:41:11 +00:00
marpan@google.com
45fa141f0a qm_select: changed default settings for uep.
Review URL: http://webrtc-codereview.appspot.com/132015

git-svn-id: http://webrtc.googlecode.com/svn/trunk@584 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-09-12 16:53:19 +00:00
kjellander@webrtc.org
f0a8464b74 Added more statistics during SSIM/PSNR calculation, including calculation of min/max value.
Moved video_metrics.h into a GYP library so it can be used from other projects.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@582 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-09-12 13:45:39 +00:00
xians@google.com
d3185fe219 refactor the gyp file to gypi file.
Basically, the gypi file is a copy of gyp file, but has some difference on the
path of the dependencies.
Review URL: http://webrtc-codereview.appspot.com/137020

git-svn-id: http://webrtc.googlecode.com/svn/trunk@581 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-09-12 12:24:39 +00:00
marpan@google.com
30ecda146a media_opt_util: Added comment and lowered window size parameter.
Review URL: http://webrtc-codereview.appspot.com/135018

git-svn-id: http://webrtc.googlecode.com/svn/trunk@575 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-09-09 17:15:12 +00:00
marpan@google.com
3f28061f3a media_opt_util: Modification to correction factor in FEC overhead.
Review URL: http://webrtc-codereview.appspot.com/133019

git-svn-id: http://webrtc.googlecode.com/svn/trunk@573 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-09-09 16:39:40 +00:00
mikhal@webrtc.org
6f54c20703 video coding test: Adding MT functionality
Review URL: http://webrtc-codereview.appspot.com/135008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@570 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-09-09 14:38:59 +00:00
stefan@webrtc.org
c3d891059e Adds support for VP8 partitions
This change adds support for VP8 partitions in the video jitter buffer and 
the VP8 encoder and decoder wrappers. The feature is currently disabled by
default since it requires a later version of libvpx.

With this change the jitter buffer will also start keeping track of each
packet header until decoding, and the VCMSessionInfo and VCMPacket objects 
will keep pointers into the encoded frame buffers.
Review URL: http://webrtc-codereview.appspot.com/137021

git-svn-id: http://webrtc.googlecode.com/svn/trunk@558 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-09-08 06:50:28 +00:00
andrew@webrtc.org
413b993166 Put some table size information in one place.
Motivated by fixing an unused variable warning in release mode.
Review URL: http://webrtc-codereview.appspot.com/132007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@523 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-09-02 22:03:56 +00:00
marpan@google.com
243db12616 media_opt_util: Fixed an assert and some code cleanup for AvgRecoveryFEC function.
Review URL: http://webrtc-codereview.appspot.com/139007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@502 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-31 22:14:52 +00:00
henrik.lundin@webrtc.org
8571af7be6 Updating to new VP8 rtp format
The VP8 packetizer and tests have been updated to the new
RTP draft (http://tools.ietf.org/html/draft-ietf-payload-vp8-01).
The receive-side parser is also updated, and a new unit test
is implemented for it. Finally, some data traversing work to
get the parsed information into the decoder.
Review URL: http://webrtc-codereview.appspot.com/116011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@482 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-29 15:37:12 +00:00
mikhal@webrtc.org
a057a9561c video_coding: Updating protection logic in media optimization utility:
1. Changing protection logic structure: Accepts only one method (not a list)
2. Removed unused code (unreferenced protection methods)
3. Removed inline constructors/destructors.  
Review URL: http://webrtc-codereview.appspot.com/120005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@467 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-26 21:17:34 +00:00
mikhal@webrtc.org
552f173979 video_coding: Moving video metrics computation to a designated file.
This is the first stage of a general clean-up to test_util. Will try to divide this clean-up to small changes, so it will be easier to review. 
Review URL: http://webrtc-codereview.appspot.com/120004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@466 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-26 17:38:09 +00:00
stefan@webrtc.org
49cbc512ae Fix unused variable warning in video_coding.
Issue 57: [Patch] Fix unused variable warnings in the video_coding module
Review URL: http://webrtc-codereview.appspot.com/126004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@435 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-24 08:51:08 +00:00
mikhal@webrtc.org
06ad81fd58 video_coding: changing the UpdateMethod function (protection settings).
Review URL: http://webrtc-codereview.appspot.com/126002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@423 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-23 16:03:59 +00:00
mikhal@webrtc.org
685383dd37 video_coding/media_opt_util: Removing windows warnings
Review URL: http://webrtc-codereview.appspot.com/113006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@394 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-17 23:19:54 +00:00
mikhal@webrtc.org
ebeb5a656b video_coding - JB: Ensuring that every frame is inserted only once to the list
Review URL: http://webrtc-codereview.appspot.com/114006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@391 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-17 18:43:21 +00:00
henrik.lundin@webrtc.org
473bac8582 Propagate codec specific info to decoder
Add explicit use of CodecSpecificInfo to VCMGenericDecoder and
the codecs (VP8 and I420). Propagate information from
WebRtcRTPHeader in VCM (IncomingPacket) to GenericDecoder.
Review URL: http://webrtc-codereview.appspot.com/109011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@390 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-17 09:47:33 +00:00
marpan@google.com
771ca422df Fixed assert error in media_opt_util that may have caused index for look-up table to be out of range.
Review URL: http://webrtc-codereview.appspot.com/112005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@385 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-16 20:51:04 +00:00
holmer@google.com
155188ce40 Handle all VP8 packets within a frame as depending on the previous packet
This is temporary until the VP8 receiver support fragments.
Review URL: http://webrtc-codereview.appspot.com/113002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@363 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-15 09:21:27 +00:00
leozwang@google.com
79835d1bd3 Clean up Android.mk
Review URL: http://webrtc-codereview.appspot.com/92014

git-svn-id: http://webrtc.googlecode.com/svn/trunk@315 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-05 21:01:02 +00:00
mikhal@google.com
320813c2d5 media_opt: Adding UEP to the hybrid mode
Review URL: http://webrtc-codereview.appspot.com/89013

git-svn-id: http://webrtc.googlecode.com/svn/trunk@295 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-03 20:47:50 +00:00
mikhal@google.com
679450f4a6 media_opt_util: Update robustness settings for Hybrid mode. Updated table for the computation of the adjustment factor.
Review URL: http://webrtc-codereview.appspot.com/93013

git-svn-id: http://webrtc.googlecode.com/svn/trunk@286 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-01 22:14:58 +00:00
marpan@google.com
191b780741 Added a correction factor to FEC overhead in media_opt_util.
This is too handle cases of rate-mismatch (at low rates/low packet number) between estimate in mediaOpt and actual FEC generated in RTP.
Review URL: http://webrtc-codereview.appspot.com/93012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@284 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-01 19:59:57 +00:00
mikhal@google.com
b29d940db7 VCM: Updating Media Opt:
1. Removed protection method specific code from SetTargetRates
2. Updated encoding rate following protection settings
3. Removing RTT max threshold from NACK, as it is not used in the receiver side.
4. Two bug fixes: FEC conversion function fix (line #133) and residual loss calculation (line #94) 
5. Removing compiler warnings
6.. Removed unused code and general clean-up. 
Review URL: http://webrtc-codereview.appspot.com/96002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@281 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-08-01 16:39:20 +00:00
mikhal@google.com
506bc3cf12 video_coding: Removing compiler warnings
Review URL: http://webrtc-codereview.appspot.com/88010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@274 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-07-29 20:23:18 +00:00
ajm@google.com
b0d9f3e6a3 Fix an ambiguous call to pow() error.
Switch to powf() and explicitly define the second parameter as float.
Review URL: http://webrtc-codereview.appspot.com/89006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@269 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-07-28 18:43:18 +00:00
marpan@google.com
11d986a68c Update to media_opt_util:
(1) update to off-line table for fec 
(2) corresponding update and some code-cleanup for  
    FecProtectionFactor()
Review URL: http://webrtc-codereview.appspot.com/93006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@267 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-07-28 17:42:57 +00:00
ajm@google.com
bb93f1d001 Fix "converting to non-pointer type from NULL" warnings.
Review URL: http://webrtc-codereview.appspot.com/93005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@263 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-07-27 23:58:56 +00:00
marpan@google.com
13955743b0 Code cleanup for residual packet loss function in media_opt_util.cc.
Review URL: http://webrtc-codereview.appspot.com/89004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@256 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-07-26 16:47:11 +00:00