pbos@webrtc.org
30e055c4dd
Handle empty RTP video packets agnostic to codec.
...
Sending empty RTP packets caused a crash when using a generic codec
instead of VP8. This fix moves handling of empty RTP packets out of
ReceiveVp8Codec and into ParseRtpPacket.
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2185004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4701 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-08 11:15:00 +00:00
stefan@webrtc.org
7bb8f02274
Adds support for combining RTX and FEC/RED.
...
This is accomplished by breaking out RTX and FEC/RED functionality from the RTP module and keeping track of the base payload type, that is the payload type received when not receiving RTX.
Enables retransmissions over RTX by default in the loopback test.
BUG=1811
TESTS=voe/vie_auto_test --automated and trybots.
R=mflodman@webrtc.org , pbos@webrtc.org , xians@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2154004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4692 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-06 13:40:11 +00:00
wu@webrtc.org
822fbd8b68
Update talk to 50918584.
...
Together with Stefan's http://review.webrtc.org/1960004/ .
R=mallinath@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2048004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4556 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 23:38:54 +00:00
pbos@webrtc.org
12dc1a38ca
Switch C++-style C headers with their C equivalents.
...
The C++ headers define the C functions within the std:: namespace, but
we mainly don't use the std:: namespace for C functions. Therefore we
should include the C headers.
BUG=1833
R=tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1917004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4486 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-05 16:22:53 +00:00
tnakamura@webrtc.org
aa4d96a134
Revert r4301
...
R=mikhal@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1809004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4357 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-16 19:25:04 +00:00
stefan@webrtc.org
66b2e5c05a
Breaking out receive-stats, rtp-payload-registry and rtp-receiver from the
...
rtp_rtcp implementation.
This refactoring significantly reduces the receive-side RTP parser and receiver
complexity, and makes it possible to implement RTX correctly by having two
instances of receive-statistics.
With this change the dead-or-alive and packet timeout APIs are removed.
TEST=trybots, vie_auto_test, voe_auto_test
BUG=1811
R=mflodman@webrtc.org , pbos@webrtc.org , xians@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1745004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4301 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-05 14:30:48 +00:00
stefan@webrtc.org
a5cb98cbbd
Breaking out RTP header parsing from the RTP module.
...
This is the first step in order to move bandwidth estimation closer to the network. The goal is to have RTP header parsing and bandwidth estimation before voice and video engine, and have a joint estimate for audio and video.
Moving bandwidth estimation before the RTP module is also required for RTX.
TEST=vie_auto_test, voe_auto_test, trybots.
BUG=1811
R=andresp@webrtc.org , henrika@webrtc.org , mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1545004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4129 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 12:12:51 +00:00
hclam@chromium.org
806dc3b0e6
More trace events
...
The goal of this change is to unify tracing events styles
and add trace events for all RTP traffic.
BUG=1555
Review URL: https://webrtc-codereview.appspot.com/1290007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3806 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 19:54:10 +00:00
pbos@webrtc.org
2f44673d66
WebRtc_Word32 => int32_t for rtp_rtcp/
...
BUG=314
Review URL: https://webrtc-codereview.appspot.com/1279007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3777 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-08 11:08:41 +00:00
edjee@google.com
79b0289bfc
Adds event traces and counters for WebRTC receive side.
...
Review URL: https://webrtc-codereview.appspot.com/1279005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3766 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-04 19:43:34 +00:00
pbos@webrtc.org
8911ce46a4
Generic video-codec support.
...
Labels frames as key/delta, also marks the first RTP packet of a frame as such,
to allow proper reconstruction even if packets are received out of order.
BUG=1442
TBR=ajm@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1207004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3680 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-18 16:39:03 +00:00
stefan@webrtc.org
03e3117d87
Removed redundant VP8 width/height and made sure the generic width/height is set.
...
Review URL: https://webrtc-codereview.appspot.com/1158005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3656 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-12 09:59:27 +00:00
phoglund@webrtc.org
a7303bdfb5
Lint-cleaned video and audio receivers.
...
BUG=
TESTED=trybots
Review URL: https://webrtc-codereview.appspot.com/1093004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3471 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-05 15:12:39 +00:00
phoglund@webrtc.org
244251a9cd
Moved almost all payload-related stuff to the payload registry.
...
The big benefit is we no longer have a circular dependency between the media receiver and the payload registry. The payload registry is starting to take a bit more place on the stage, and now knows how to do different things depending on audio or video.
BUG=
TESTED=rtp_rtcp_unittests, vie_auto_test, voe_auto_test
Review URL: https://webrtc-codereview.appspot.com/1078004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3465 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-04 13:23:07 +00:00
phoglund@webrtc.org
5accd370e7
RTP Receiver is now only deals with a receiver strategy. Cleaned up dependencies.
...
BUG=
TESTED=vie/voe_auto_test, rtp_rtcp_unittests
Review URL: https://webrtc-codereview.appspot.com/1058004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3397 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-22 12:31:01 +00:00
phoglund@webrtc.org
efae5d5901
Extracted rtp receiver payload management to its own class, made video receiver depend on that instead.
...
Eliminated need for video receiver to talk to its parent. Also we will now determine if the packet is the first one already in the rtp general receiver. The possible downside would be that recovered video packets no longer can be flagged as the first packet, but I don't think that can happen. Even if it can happen, maybe the bit was set anyway at an earlier stage. The tests run fine.
BUG=
TEST=rtp_rtcp_unittests, vie_auto_test, voe_auto_test
Review URL: https://webrtc-codereview.appspot.com/1022011
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3382 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-17 16:10:45 +00:00
phoglund@webrtc.org
a22a9bd9ca
Cleaned up the data path for payload data, made callbacks to rtp_receiver nonoptional.
...
The audio receiver is now completely independent of rtp_receiver: video will hopefully be too in the next patch.
BUG=
TEST=vie & voe_auto_test full runs
Review URL: https://webrtc-codereview.appspot.com/1014006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3372 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-14 10:01:55 +00:00
phoglund@webrtc.org
07bf43c673
Replaced the _audio parameter with a strategy.
...
The purpose is to make _rtpReceiver mostly agnostic to if it processes audio or video, and make its delegates responsible for that. This patch makes the actual interfaces and interactions between the classes a lot clearer which will probably help straighten out the rather convoluted business logic in here. There are a number of rough edges I hope to address in coming patches.
In particular, I think there are a lot of audio-specific hacks, especially when it comes to telephone event handling. I think we will see a lot of benefit once that stuff moves out of rtp_receiver altogether. The new strategy I introduced doesn't quite pull its own weight yet, but I think I will be able to remove a lot of that interface later once the responsibilities of the classes becomes move cohesive (e.g. that audio specific stuff actually lives in the audio class, and so on). Also I think it should be possible to extract payload type management to a helper class later on.
BUG=
TEST=vie/voe_auto_test, trybots
Review URL: https://webrtc-codereview.appspot.com/1001006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3306 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-18 15:40:53 +00:00
phoglund@webrtc.org
7659d914bb
Decoupled video rtp receiver from rtp receiver.
...
BUG=
Review URL: https://webrtc-codereview.appspot.com/995005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3292 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-14 09:57:37 +00:00
phoglund@webrtc.org
ef90c3227e
Will now correctly identify the first-ever received packet as the first packet in its frame.
...
We used to flag the _second_ packet in the first frame as the first. Subsequent frames worked as intended.
BUG=1103
TEST=vie_auto_test --automated, rtp_rtcp_unittests
Review URL: https://webrtc-codereview.appspot.com/964020
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3164 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-26 16:30:40 +00:00
asapersson@webrtc.org
1726661ca2
Update parsed non ref frame info.
...
Review URL: https://webrtc-codereview.appspot.com/932015
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3084 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-13 13:39:51 +00:00
andrew@webrtc.org
14b43beb7c
Move src/ -> webrtc/
...
TBR=niklas.enbom@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/915006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2963 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-10-22 18:19:23 +00:00