pwestin@webrtc.org
0774838f3d
Refactor the internal API to the rtp/rtcp module.
...
Review URL: https://webrtc-codereview.appspot.com/568004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2211 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-05-10 12:33:50 +00:00
hta@webrtc.org
b6f2417f37
Renamed all _test.cc files to _unittest.cc, to conform to convention
...
for webrtc.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/560004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2172 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-05-04 08:13:57 +00:00
hta@webrtc.org
54536bb6d4
Refactoring of the TMMBRSet class, giving it a reasonably tight interface.
...
The CL also fixes a number of line length and tab issues in touched files.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/553005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2168 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-05-03 14:07:23 +00:00
hta@webrtc.org
404843e6e5
Timeout tests for TMMBR
...
Added a test that injects 3 packets and then times out.
Rewrote the packet construction in test to use a builder format.
This makes tests a lot more readable.
Odd behaviour of timeout found; documented as test.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/553004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2161 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-05-02 09:56:45 +00:00
hta@webrtc.org
3c0df7d376
Fixed a build break: I'd forgotten to remove a DELETE statement.
...
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/555004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2160 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-05-02 08:22:21 +00:00
hta@webrtc.org
47059b5dfb
Adds unit tests for RTCP receiver, focusing on TMMBR handling.
...
This is the first part of a plan:
- Get basic unit tests for rtcp_receiver.
- Get an unit test for some code inside rtcp_receiver
that touches the TMMBRSet class in hard-to-decipher ways
(rtcp_receiver_help, GetTMMBRSet function, use of memmove()).
- Refactor the TMMBRSet class.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/547005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2159 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-05-02 07:46:22 +00:00
hta@webrtc.org
65a4e4ed56
Minor refactoring: RTCPReceiver::BoundingSet
...
Remove ability to modify a pointer argument.
Added a test for transmitting a non-empty TMMBN
BUG=
TEST=unittest
Review URL: https://webrtc-codereview.appspot.com/542004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2148 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-30 11:23:41 +00:00
hta@webrtc.org
c2d985257b
untabify
...
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2145 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-30 08:25:10 +00:00
hta@webrtc.org
9d54cd12ab
TMMBN sender test passes, fixed receiver flag bug
...
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2144 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-30 08:24:55 +00:00
pwestin@webrtc.org
b1313aac7c
Fix missing h file change.
...
Review URL: https://webrtc-codereview.appspot.com/535001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2136 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-27 05:42:05 +00:00
pwestin@webrtc.org
49888ce428
Breaking out send side bitrate controll cont.
...
Review URL: https://webrtc-codereview.appspot.com/475004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2135 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-27 05:25:53 +00:00
tommi@webrtc.org
a990e122c4
* Change the reference counting implementation for VoE to be per object and
...
not per interface. This simplifies things a bit, reduces code and makes it
possible to implement reference counting (if we ever want) without the
static Delete() method. (Reference counted objects are traditionally
implicitly deleted via the last Release())
* Since the reference counting code is now simpler, there's no need for the
RefCount class so I'm removing it.
* Also removing the optional |ignoreRefCounters| variable from the VoiceEngine::Delete
method. The justification is that it's no longer used and the reason it was there
in the first place was to avoid bugs in third party code, so it's an indication that
something is wrong elsewhere.
* Fix a crash in voe_network_impl and voe_extended_test that would happen on machines with IPv6 support.
* Fix an assert (handle the case) in the extended audio tests when SetCNAME is called with a NULL pointer.
* As a side effect of this change, hopefully the footprint of VoE will be slightly smaller :)
BUG=10445 (Coverity)
Review URL: https://webrtc-codereview.appspot.com/521003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2127 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-26 15:28:22 +00:00
asapersson@webrtc.org
d18dd6dc7e
Made OnPacketLossStatisticsUpdate function virtual (needed for ViCE).
...
Review URL: https://webrtc-codereview.appspot.com/520002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2115 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-25 07:19:02 +00:00
pwestin@webrtc.org
ddab60be56
Wire up pading.
...
Review URL: https://webrtc-codereview.appspot.com/509002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2094 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-23 14:52:15 +00:00
asapersson@webrtc.org
83ed0a4359
Try to resend next packet in nack list even if previous packet is not found.
...
Review URL: https://webrtc-codereview.appspot.com/515001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2089 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-23 12:43:05 +00:00
asapersson@webrtc.org
63a34f4f29
Fix in SendPadData. Do not increase sequence number if packet is "empty" and not sent.
...
Review URL: https://webrtc-codereview.appspot.com/508001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2083 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-20 13:20:27 +00:00
asapersson@webrtc.org
a768970bac
Parse out ssrcs in REMB message (needed for ViCE) .
...
Review URL: https://webrtc-codereview.appspot.com/486003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2061 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-19 07:01:29 +00:00
mflodman@webrtc.org
b1fbf016b5
Added timestamp logs, i.e. only tracing.
...
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/482001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2030 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-16 12:58:49 +00:00
tina.legrand@webrtc.org
16b6b90a82
Split of stereo packets moved
...
In this CL I have rewritten the way we handle stereo packets in VoE.
Before this change we split the packets in the RTP module and added two packets to ACM, one for the left channel and one for the right. This lead to timing problems caused when a different thread called RecOut in between the two calls to add stereo packet to ACM. (RecOut is called to pull audio data, decode packets, on the receiving side).
While doing the change I also took the opportunity to changed some functions so that the data stream is uint8 everywhere.
The list of files in this CL is long, but should be fairly easy to review. It is difficult to see what has been changed in some of the tests, but I can explain offline.
Reviewers:
Björn - /src/modules/audio_coding
Patrik - /src/modules/rtp_rtcp
Patrik -/src/modules/utility
Henrik A - /src/voice_engine
BUG=410
TEST=voe_cmd_test
Review URL: https://webrtc-codereview.appspot.com/473003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2012 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-12 11:02:38 +00:00
stefan@webrtc.org
c35f5ced92
Enable multi-frame FEC by default for temporal layers <= 2. For two temporal layers we currently only protect the base layer.
...
This also introduces zero column insertion into packet masks when some sequence numbers deliberately haven't been given to the FEC generator.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/477001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2005 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-11 07:42:25 +00:00
tommi@webrtc.org
98ad0ff1b0
Move the COMPILE_ASSERT macro to its own header file.
...
TEST=n/a
BUG=none
Review URL: https://webrtc-codereview.appspot.com/492002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2001 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-10 11:53:07 +00:00
pwestin@webrtc.org
cac787842c
New attempt to cleanup TMMBR.
...
Review URL: https://webrtc-codereview.appspot.com/472007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1990 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-04-05 08:30:10 +00:00
henrike@webrtc.org
0ad51862dc
Revert 1961 - Clean up TMMBR handling.
...
Review URL: https://webrtc-codereview.appspot.com/465001
TBR=pwestin@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/473001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1967 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-03-30 16:54:13 +00:00
marpan@webrtc.org
3a6080d4c0
FEC Decoding: Insert the received media packets directly into VCM without going
...
through the recovered packet list. Avoids an issue with very old re-transmitted packets.
Updated the receiver_fec unittest accordingly.
Review URL: https://webrtc-codereview.appspot.com/465003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1966 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-03-30 16:16:21 +00:00
pwestin@webrtc.org
20f4440c73
Clean up TMMBR handling.
...
Review URL: https://webrtc-codereview.appspot.com/465001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1961 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-03-30 11:40:15 +00:00
mflodman@webrtc.org
534a435751
Removed RTP Keepalive from RTP module.
...
Review URL: https://webrtc-codereview.appspot.com/455007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1942 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-03-27 06:57:41 +00:00
stefan@webrtc.org
38f247d800
Fixes an issue in the FEC decoder where a big jump in sequence numbers may cause new packets to be discarded if there is a wrap around.
...
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/455003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1934 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-03-23 22:34:14 +00:00
stefan@webrtc.org
af5ffd5bb9
Fixes for coverity warnings.
...
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/461001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1933 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-03-23 16:01:15 +00:00
tina.legrand@webrtc.org
c231e4cb03
Fixing bug in re-packing of stereo packets.
...
BUG=341
TEST=voe_cmd_test, run G.722. First modify /src/modules/audio_coding_main/source/acm_codec_database.cc
@@ -149,7 +149,7 @@ const CodecInst ACMCodecDB::database_[] = {
{kDynamicPayloadtypes[count_database++], "CELT", 32000, 320, 2, 64000},
#endif
#ifdef WEBRTC_CODEC_G722
- {9, "G722", 16000, 320, 1, 64000},
+ {9, "G722", 16000, 320, 2, 64000},
#endif
#ifdef WEBRTC_CODEC_G722_1
Review URL: https://webrtc-codereview.appspot.com/454001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1930 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-03-23 10:01:11 +00:00
stefan@webrtc.org
e0d6fa4c66
Adding classes for handling multi-frame FEC.
...
The FEC behavior is unchanged with this commit, we will still be
limited to FEC over one frame for now.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/450006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1915 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-03-20 22:10:56 +00:00
leozwang@webrtc.org
0975d2158c
Cleanup messy data type of unknown_payload_type
...
BUG=322
TEST=build on all platforms
Review URL: https://webrtc-codereview.appspot.com/430002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1848 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-03-06 20:59:13 +00:00
mflodman@webrtc.org
9ec883e8bd
Allow multiple REMB groups and introduce receive channels.
...
BUG=312
TEST=ViE standard autotest and API test.
Review URL: https://webrtc-codereview.appspot.com/432005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1836 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-03-05 17:12:41 +00:00
mflodman@webrtc.org
fa6bc673b0
Changed default module condition for BW estimate.
...
Review URL: https://webrtc-codereview.appspot.com/433001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1832 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-03-05 11:59:55 +00:00
marpan@webrtc.org
946601e408
Change default packetization mode to an equal size mode.
...
This will produce equal size packets for each frame, which should be somewhat more favorable (less overhead/padding data) for the FEC.
Review URL: https://webrtc-codereview.appspot.com/396013
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1754 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-23 18:52:53 +00:00
mflodman@webrtc.org
4cb060127c
Disabled RTPModule VP8 packetizer assert.
...
BUG=293
Review URL: https://webrtc-codereview.appspot.com/399005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1715 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-17 13:07:01 +00:00
mflodman@webrtc.org
f7b6078f6f
Allow multiple send channels for REMB. Current implementation splits the remote estimate evenly between all senders.
...
This CL will be followed by a CL adding support for several REMB groups.
TEST=video_engine_core_unittests
Review URL: https://webrtc-codereview.appspot.com/394002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1705 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-16 14:50:24 +00:00
stefan@webrtc.org
439be29445
Add APIs for getting receive-side estimated bandwidth and codec target rate.
...
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/391012
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1704 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-16 14:45:37 +00:00
henrike@webrtc.org
d6d014ff12
Fixes memory leaks introduced in 1698.
...
Review URL: https://webrtc-codereview.appspot.com/387014
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1701 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-16 02:18:09 +00:00
henrike@webrtc.org
f5da4da409
Removes a global non POD instance from the RTP_RTCP module that was introduced in https://code.google.com/p/webrtc/source/detail?r=1076 .
...
Review URL: https://webrtc-codereview.appspot.com/314001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1698 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-15 23:54:59 +00:00
mflodman@webrtc.org
d7d46887a6
Update receive only channels with RTT.
...
vie_autotest_loopback.cc will not be part of the commit, it's only to show the test.
TEST=temporary with attached loopback test.
Review URL: https://webrtc-codereview.appspot.com/390007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1678 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-14 12:49:59 +00:00
marpan@webrtc.org
567d507707
Fixes a bug when number of media packets in a frame is larger than maximum allowed for the generateFEC.
...
Review URL: https://webrtc-codereview.appspot.com/391003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1673 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-10 18:56:14 +00:00
mflodman@webrtc.org
8224e19dd9
Fixed incorrect packet loss reported to encoder.
...
BUG=275
Review URL: https://webrtc-codereview.appspot.com/394004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1669 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-10 12:41:57 +00:00
pwestin@webrtc.org
5e954814a8
Clanup handling of key frame requests and FIR.
...
Review URL: https://webrtc-codereview.appspot.com/387004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1667 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-10 12:13:12 +00:00
stefan@webrtc.org
4b377414f1
Fix release build errors.
...
TBR=mflodman
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/394005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1654 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-09 13:50:57 +00:00
stefan@webrtc.org
9c84b0dc9f
Fix build errors with GCC.
...
TBR=mflodman
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/389006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1652 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-09 13:14:04 +00:00
stefan@webrtc.org
7adab0922d
This removes the knowledge of frame completeness from the FEC decoder.
...
Therefore, with this change a recovered packet is only considered old,
and will be removed, if more than 48 recovered packets are stored.
Packets are immediately reconstructed and sent to the jitter
buffer. Before this CL packets were processed on a frame-by-frame
basis, and all packets belonging to a frame was sent to the
jitter buffer at the same time.
The number of FEC packets is also limited to 48. An FEC packet is
removed if all protected packets have been recovered or if the
FEC packet is considered old.
Lot's of tests added.
Patch-set 2:
- Fixed rtp_fec_unittest.cc to work with the new reconstruction.
- Added reference counting of Packet to be able to keep references to them from FecPacket between different reconstruction runs.
- Rewrote the packet search to use std::set_intersection.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/379005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1651 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-09 12:34:52 +00:00
henrike@webrtc.org
d5657c2f69
Refactored files according to google style since http://review.webrtc.org/314001/ is blocked on this and formatting changes should not be done with code changes.
...
Review URL: https://webrtc-codereview.appspot.com/387005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1648 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-08 23:41:49 +00:00
andrew@webrtc.org
68da6adafe
Remove WebRtc_ types.
...
Allows us to avoid the "cast to UWord32" Coverity coverup.
BUG=
TEST=test_fec
Review URL: https://webrtc-codereview.appspot.com/379002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1647 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-08 22:24:14 +00:00
tina.legrand@webrtc.org
df69775bfa
Adding support for full-stereo codec.
...
This is an experiment, letting Celt represent a full-stereo codec.
Review URL: https://webrtc-codereview.appspot.com/379013
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1636 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-08 10:22:21 +00:00
phoglund@webrtc.org
78088c2f36
Removed warnings on Windows and enabled warnings-as-errors on Windows.
...
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/377004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1624 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-07 14:56:45 +00:00