Commit Graph

633 Commits

Author SHA1 Message Date
andrew@webrtc.org
d77a6614fa Consts can't be used as C array size initializers.
(Unless you happen to be using clang...)

TBR=bjornv@webrtc.org
TEST=build on gcc

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1333 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 16:22:24 +00:00
henrik.lundin@webrtc.org
d047b2e7f6 Enabling NetEQ unittest for more platforms
Removing platform limitations for NetEqDecodingTest:TestBitExactness
and NetEqDecodingTest:TestNetworkStatistics. New reference files
where provided in revision 6 of the resources, which allows us
to enable these tests.

BUG=
TEST=neteq_unittests linux32/64, win32/64, mac32

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1332 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 16:10:23 +00:00
andrew@webrtc.org
3905b0c45d Protect against divide-by-zeros in AGC.
TEST=audioproc_unittest

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1331 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 15:47:20 +00:00
pwestin@webrtc.org
c450a19669 Removed Version function from all modules.
TBR=henrik_a
Review URL: http://webrtc-codereview.appspot.com/329023

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1330 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 15:00:12 +00:00
henrik.lundin@webrtc.org
d439870473 Adding two new network metrics to NetEQ
Clock-drift (in parts-per-million) and peaky-jitter mode status.
Both metrics are propagated to the VoE API. Tests are added
in the NetEQ unittests, and to some extent in ACM unittests
and VoE tests.

Introducing a proper translation between structs NetworkStatistics
and ACMNetworkStatistics.

Note: The file neteq_network_stats.dat in resources must be updated
for the unittests to pass.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1328 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 13:09:55 +00:00
bjornv@webrtc.org
80d28b22b9 Changed to new ring buffer in AECM.
Replaced the old ring buffer in AECM with the new one. Also removed the old one from ring_buffer.
Changes are bit exact according to audioproc_unittest fixed.

TEST=audioproc_unittest
Review URL: http://webrtc-codereview.appspot.com/331022

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1327 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 09:55:09 +00:00
kjellander@webrtc.org
cc33737a80 Changing all PSNR/SSIM calculations to use libyuv.
Removed old PSNR/SSIM implementations in:
* test/testsupport/metrics/video_metrics.cc
* src/modules/video_coding/codecs/test_framework/test.cc
The functions in video_metrics.cc is now using code in libyuv instead. Old code in test.cc is using the same functions.
The code for video_metrics.h had to be moved into a separate GYP file to avoid circular dependency error on Mac (see issue 160 for more details). The reason for this is that libyuv's unittest target depends on test_support_main.

BUG=
TEST=metrics_unittests in Debug+Release on Linux, Mac and Windows.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1325 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 08:09:32 +00:00
turaj@webrtc.org
a574b1c617 The inline implementation of WebRtcIsac_lrint(), which was implemented in several files, is now os_specific_inline.h. Define guards are modified according to WebRtc OS macros.
This resolves BUG=issue137.
Review URL: http://webrtc-codereview.appspot.com/269014

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1323 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 02:26:23 +00:00
mikhal@webrtc.org
cd64886a2f video_coding: Updating NACK functions naming
Review URL: http://webrtc-codereview.appspot.com/329018

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1322 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-03 23:59:42 +00:00
punyabrata@webrtc.org
8fa31bc4e5 Truncated messages, need a %S instead of $s for a double byte TCHAR
Review URL: http://webrtc-codereview.appspot.com/333002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1321 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-03 22:34:15 +00:00
mikhal@webrtc.org
77c425b976 video_coding: Checking/updating seq num for an old packet regardless of size.
Review URL: http://webrtc-codereview.appspot.com/330028

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1318 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-03 20:35:25 +00:00
henrik.lundin@webrtc.org
6c877363f7 Fix formatting for some NetEQ test tools
Format and lint for RTPchange.cc, RTPcat.cc and RTPanalyze.cc.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1313 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-03 10:03:19 +00:00
kjellander@webrtc.org
a643d5c4ef Integration test for videoprocessor
Added temporal layers number flag for video_quality_measurement tool.
This tool now also uses webrtc::VideoCodingModule::Codec() to get its
VideoCodec struct configuration instead of filling it in manually.

Updated paths for header files to use full directory paths.

Tested in Debug+Release on Linux, Mac and Windows. Passes Valgrind memcheck on Linux.

BUG=
TEST=video_codecs_test_framework_integrationtests. Also executed out/Debug/video_quality_measurement --input_filename=resources/foreman_cif.yuv  --width=352 --height=288

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1310 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-30 14:44:07 +00:00
mikhal@webrtc.org
62665b8cd3 video_coding: Adding a unit test to the decodableState class
Review URL: http://webrtc-codereview.appspot.com/315001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1309 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-29 18:09:58 +00:00
mikhal@webrtc.org
9eeafbef3c Updating the frame buffer return value in InsertPacket: Return NoError when a packet is inserted to a frame which is being decoded.
Review URL: http://webrtc-codereview.appspot.com/330027

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1308 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-29 17:38:56 +00:00
mikhal@webrtc.org
bed34a341a video_coding: Updating seq number for old zero size packets. Updating function name to reflect zero size packets and not empty packets.
Review URL: http://webrtc-codereview.appspot.com/333009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1307 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-29 17:37:39 +00:00
bjornv@webrtc.org
70adcd46b2 Delay estimator improvements.
Robustness improvements to the delay estimator used in AECM and AEC. In AEC only for logging. Faster convergence.

TEST=audioproc_unittest + offline file tests.

output_data_fixed.pb updated despite unverified changes in r1112.
Review URL: http://webrtc-codereview.appspot.com/337006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1306 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-29 14:51:21 +00:00
stefan@webrtc.org
efd0a48c61 Add error resilient mode options to the VP8 specific VideoCodec struct.
It is useful to disable error resilience when we know we won't decode
with errors.

BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1305 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-29 10:12:35 +00:00
andrew@webrtc.org
6d6a43d6e3 Use char as ring-buffer data type.
- Avoids a bunch of char* casts.
- Use enum type rather than char.

TEST=audioproc_unittest on Linux (float and fixed), build on Windows

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1303 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-28 22:40:15 +00:00
bjornv@webrtc.org
267d0133ff Fixed pointer operations on void.
This should fix the error on Win where pointer arithmetics are done on void pointers. Type cast to char to interpret a size.
Review URL: http://webrtc-codereview.appspot.com/329019

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1300 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-28 10:26:17 +00:00
bjornv@webrtc.org
7270a6bcc2 Merged apm-buffer branch [r1293] back to trunk.
This CL includes a larger structural change in how we handle buffers in AEC. We now perform FFT at once and move within blocks to compensate for system delays.

TEST=audioproc_unittest(float and fix), voe_auto_test
Review URL: http://webrtc-codereview.appspot.com/335012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1299 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-28 08:44:17 +00:00
mikhal@webrtc.org
e39de16fa5 Moving video type convert functionality to libyuv. deleting vplibConversions as it is no longer needed.
Review URL: http://webrtc-codereview.appspot.com/338002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1298 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-27 23:45:30 +00:00
stefan@webrtc.org
f6c6b1c5b5 Include the media packet FEC headers in the video bitrate.
BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1296 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-23 10:33:39 +00:00
stefan@webrtc.org
39670f6aa6 Only reset the last decoded sequence number after flushing until key frame.
We can't reset the complete last decoded state when we recycle until a
key frame because that will allow any delta frame to be decoded afterwards,
and since the decoder isn't reset we will get decode errors.

BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1295 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-23 09:08:51 +00:00
mflodman@webrtc.org
1ce66e4dfb Don't report error when failing to send RTCP BYE.
Review URL: http://webrtc-codereview.appspot.com/337002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1293 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 18:40:15 +00:00
stefan@webrtc.org
6a4bef4e65 Implements selective retransmissions.
Default is set to not retransmit VP8 non-base layer packets or FEC packets.

BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1290 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 12:52:41 +00:00
pwestin@webrtc.org
f4d3b9d5a1 Cleaned up leaky symbols in NS.
Review URL: http://webrtc-codereview.appspot.com/337001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1288 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 12:33:08 +00:00
pwestin@webrtc.org
ebcb6421b1 Cleaned up leaky symbols in G722.
Review URL: http://webrtc-codereview.appspot.com/333017

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1287 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 12:20:06 +00:00
pwestin@webrtc.org
d8f8b32521 Cleaned up leaky symbols in iSAC.
Review URL: http://webrtc-codereview.appspot.com/329014

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1286 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 12:19:43 +00:00
mflodman@webrtc.org
84dc3d134d Add REMB functionality to ViE.
This CL only adds support for encoding one stream, but receiving multiple streams.

BUG=
TEST=video_engine_core_unittest + auto_test/loopback

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1284 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 10:26:13 +00:00
pwestin@webrtc.org
093ffad26b Removed unused function messing up the symbols.
Review URL: http://webrtc-codereview.appspot.com/336006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1283 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 09:48:48 +00:00
henrik.lundin@webrtc.org
1e28d3c2e1 Change VP8 packetizer to use a single max payload size
The packetizer class is changed so that the max payload size is
provided on construction of the class rather than for each packet.
The tests are re-written to comply with the new design.

Also fixing a few errors in the tests.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1280 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 08:49:31 +00:00
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
pwestin@webrtc.org
8edb39db30 Prevent sending empty RTCP packet.
Review URL: http://webrtc-codereview.appspot.com/331009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1277 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 07:40:33 +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
andrew@webrtc.org
697bc43b67 Restore item deletions in Windows UDP.
TEST=voe_auto_test on Windows.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1275 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 19:58:11 +00:00
andrew@webrtc.org
71571c5446 Remove unneeded variables from windows UDP.
TEST=build on Windows.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1274 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 18:30:59 +00:00
mallinath@webrtc.org
03532b5f41 Fixing the double delete problem in UdpSocket2ManagerWindow. PopFront deletes the items, to there is no need to delete item explicitly.
Review URL: http://webrtc-codereview.appspot.com/333014

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1268 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 15:36:44 +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
kjellander@webrtc.org
5490c71a1b Converted to gtest, writing output files properly and no longer uses exceptions.
This test now runs and fails as a gtest should (previously it always
exited with 0 even if the tests failed).
The audio_coding_module_test target no longer uses exceptions in the generated project.
Output files are written to our global output folder, using
testsupport/fileutils.h.

BUG=
TEST=audio_coding_module_test on all platforms, in Debug+Release

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1266 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 13:34:18 +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
niklas.enbom@webrtc.org
6c9be123ef Letting strncpy do its job. Landing and extending http://webrtc-codereview.appspot.com/329010/ on behalf of tbreisacher.
Review URL: http://webrtc-codereview.appspot.com/335009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1260 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 08:59:31 +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
henrik.lundin@webrtc.org
00e730730e Refactoring RtpFormatVp8Test
This is the first change in a series of changes to get new functionality
into the VP8 packetizer.

This first refactors the RtpFormatVp8Test class, without changing the
operation of the tested RtpFormatVp8 class. A test helper class
RtpFormatVp8TestHelper is introduced to reduce code duplication.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1258 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 08:51:36 +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
andrew@webrtc.org
a38ce09919 Fix last Mac/clang compile error.
Fixes "receiver is a forward class and corresponding @interface may
not exist" error.

TEST=build on Mac with -Werror enabled.
TBR=zakkhoyt@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1255 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-20 22:23:21 +00:00
pwestin@webrtc.org
061fa5b828 Changed handling of padding data.
Review URL: http://webrtc-codereview.appspot.com/331008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1252 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-20 15:56:17 +00:00
henrik.lundin@webrtc.org
dbba1f969f Packet waiting-time statistics
Adding new statistics API to NetEQ, reporting the waiting time
for each frame. The output is raw waiting time for the frames
that have been decoded since the last statistics report (or
maximum 100 frames). The statistics are reset on each query.

Implemented functionality in ACM to query NetEQ for the raw
waiting times, and process it to produce max, average and
median.

Updating common_types.h and VoiceEngine tests to include the
new metrics.

Unit tests are also added for NetEQ and AcmNetEq.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1251 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-20 15:45:05 +00:00
henrik.lundin@webrtc.org
219acc6cec Including Brighten function in namespace VideoProcessing
This change is in response to Issue 173.

BUG=http://code.google.com/p/webrtc/issues/detail?id=173

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1250 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-20 15:33:49 +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