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
diff --git a/webrtc/modules/video_coding/main/interface/video_coding_defines.h b/webrtc/modules/video_coding/main/interface/video_coding_defines.h
index ab5c517..43398f4 100644
--- a/webrtc/modules/video_coding/main/interface/video_coding_defines.h
+++ b/webrtc/modules/video_coding/main/interface/video_coding_defines.h
@@ -119,7 +119,7 @@
// Callback class used for informing the user of the incoming bit rate and frame rate.
class VCMReceiveStatisticsCallback {
public:
- virtual int32_t OnReceiveStatisticsUpdate(const uint32_t bitRate,
+ virtual int32_t ReceiveStatistics(const uint32_t bitRate,
const uint32_t frameRate) = 0;
protected:
diff --git a/webrtc/modules/video_coding/main/source/decoding_state_unittest.cc b/webrtc/modules/video_coding/main/source/decoding_state_unittest.cc
index 6b47ebc..d1d8df3 100644
--- a/webrtc/modules/video_coding/main/source/decoding_state_unittest.cc
+++ b/webrtc/modules/video_coding/main/source/decoding_state_unittest.cc
@@ -37,7 +37,7 @@
packet->timestamp = 1;
packet->seqNum = 0xffff;
packet->frameType = kVideoFrameDelta;
- packet->codecSpecificHeader.codec = kRtpVideoVp8;
+ packet->codecSpecificHeader.codec = kRTPVideoVP8;
packet->codecSpecificHeader.codecHeader.VP8.pictureId = 0x007F;
frame.InsertPacket(*packet, 0, false, 0);
// Always start with a key frame.
@@ -208,7 +208,7 @@
VCMFrameBuffer frame;
VCMPacket* packet = new VCMPacket();
packet->frameType = kVideoFrameDelta;
- packet->codecSpecificHeader.codec = kRtpVideoVp8;
+ packet->codecSpecificHeader.codec = kRTPVideoVP8;
packet->timestamp = 0;
packet->seqNum = 0;
packet->codecSpecificHeader.codecHeader.VP8.tl0PicIdx = 0;
@@ -361,7 +361,7 @@
VCMPacket packet;
frame.Reset();
packet.frameType = kVideoFrameKey;
- packet.codecSpecificHeader.codec = kRtpVideoVp8;
+ packet.codecSpecificHeader.codec = kRTPVideoVP8;
packet.timestamp = 0;
packet.seqNum = 0;
packet.codecSpecificHeader.codecHeader.VP8.tl0PicIdx = 0;
diff --git a/webrtc/modules/video_coding/main/source/encoded_frame.cc b/webrtc/modules/video_coding/main/source/encoded_frame.cc
index b6ed7ce..76a9d74 100644
--- a/webrtc/modules/video_coding/main/source/encoded_frame.cc
+++ b/webrtc/modules/video_coding/main/source/encoded_frame.cc
@@ -104,7 +104,7 @@
{
switch (header->codec)
{
- case kRtpVideoVp8:
+ case kRTPVideoVP8:
{
if (_codecSpecificInfo.codecType != kVideoCodecVP8)
{
diff --git a/webrtc/modules/video_coding/main/source/packet.cc b/webrtc/modules/video_coding/main/source/packet.cc
index ad69418..5dbb823 100644
--- a/webrtc/modules/video_coding/main/source/packet.cc
+++ b/webrtc/modules/video_coding/main/source/packet.cc
@@ -94,7 +94,7 @@
{
switch(videoHeader.codec)
{
- case kRtpVideoVp8:
+ case kRTPVideoVP8:
{
// Handle all packets within a frame as depending on the previous packet
// TODO(holmer): This should be changed to make fragments independent
@@ -111,7 +111,7 @@
codec = kVideoCodecVP8;
break;
}
- case kRtpVideoI420:
+ case kRTPVideoI420:
{
codec = kVideoCodecI420;
break;
diff --git a/webrtc/modules/video_coding/main/source/session_info.cc b/webrtc/modules/video_coding/main/source/session_info.cc
index 86af762..0566360 100644
--- a/webrtc/modules/video_coding/main/source/session_info.cc
+++ b/webrtc/modules/video_coding/main/source/session_info.cc
@@ -50,35 +50,35 @@
int VCMSessionInfo::PictureId() const {
if (packets_.empty() ||
- packets_.front().codecSpecificHeader.codec != kRtpVideoVp8)
+ packets_.front().codecSpecificHeader.codec != kRTPVideoVP8)
return kNoPictureId;
return packets_.front().codecSpecificHeader.codecHeader.VP8.pictureId;
}
int VCMSessionInfo::TemporalId() const {
if (packets_.empty() ||
- packets_.front().codecSpecificHeader.codec != kRtpVideoVp8)
+ packets_.front().codecSpecificHeader.codec != kRTPVideoVP8)
return kNoTemporalIdx;
return packets_.front().codecSpecificHeader.codecHeader.VP8.temporalIdx;
}
bool VCMSessionInfo::LayerSync() const {
if (packets_.empty() ||
- packets_.front().codecSpecificHeader.codec != kRtpVideoVp8)
+ packets_.front().codecSpecificHeader.codec != kRTPVideoVP8)
return false;
return packets_.front().codecSpecificHeader.codecHeader.VP8.layerSync;
}
int VCMSessionInfo::Tl0PicId() const {
if (packets_.empty() ||
- packets_.front().codecSpecificHeader.codec != kRtpVideoVp8)
+ packets_.front().codecSpecificHeader.codec != kRTPVideoVP8)
return kNoTl0PicIdx;
return packets_.front().codecSpecificHeader.codecHeader.VP8.tl0PicIdx;
}
bool VCMSessionInfo::NonReference() const {
if (packets_.empty() ||
- packets_.front().codecSpecificHeader.codec != kRtpVideoVp8)
+ packets_.front().codecSpecificHeader.codec != kRTPVideoVP8)
return false;
return packets_.front().codecSpecificHeader.codecHeader.VP8.nonReference;
}
diff --git a/webrtc/modules/video_coding/main/source/session_info_unittest.cc b/webrtc/modules/video_coding/main/source/session_info_unittest.cc
index f15fbc7..a8a340d 100644
--- a/webrtc/modules/video_coding/main/source/session_info_unittest.cc
+++ b/webrtc/modules/video_coding/main/source/session_info_unittest.cc
@@ -66,7 +66,7 @@
TestSessionInfo::SetUp();
vp8_header_ = &packet_header_.type.Video.codecHeader.VP8;
packet_header_.frameType = kVideoFrameDelta;
- packet_header_.type.Video.codec = kRtpVideoVp8;
+ packet_header_.type.Video.codec = kRTPVideoVP8;
vp8_header_->InitRTPVideoHeaderVP8();
fragmentation_.VerifyAndAllocateFragmentationHeader(kMaxVP8Partitions);
}
diff --git a/webrtc/modules/video_coding/main/source/video_coding_impl.cc b/webrtc/modules/video_coding/main/source/video_coding_impl.cc
index 4dc2eb5..df798cc 100644
--- a/webrtc/modules/video_coding/main/source/video_coding_impl.cc
+++ b/webrtc/modules/video_coding/main/source/video_coding_impl.cc
@@ -157,8 +157,7 @@
uint32_t bitRate;
uint32_t frameRate;
_receiver.ReceiveStatistics(&bitRate, &frameRate);
- _receiveStatsCallback->OnReceiveStatisticsUpdate(bitRate,
- frameRate);
+ _receiveStatsCallback->ReceiveStatistics(bitRate, frameRate);
}
// Size of render buffer.
diff --git a/webrtc/modules/video_coding/main/source/video_coding_impl_unittest.cc b/webrtc/modules/video_coding/main/source/video_coding_impl_unittest.cc
index 0a38582..d4fde8a 100644
--- a/webrtc/modules/video_coding/main/source/video_coding_impl_unittest.cc
+++ b/webrtc/modules/video_coding/main/source/video_coding_impl_unittest.cc
@@ -192,7 +192,7 @@
header.header.payloadType = kUnusedPayloadType;
header.header.ssrc = 1;
header.header.headerLength = 12;
- header.type.Video.codec = kRtpVideoVp8;
+ header.type.Video.codec = kRTPVideoVP8;
for (int i = 0; i < 10; ++i) {
EXPECT_CALL(packet_request_callback_, ResendPackets(_, _))
.Times(0);
@@ -216,7 +216,7 @@
header.header.payloadType = kUnusedPayloadType;
header.header.ssrc = 1;
header.header.headerLength = 12;
- header.type.Video.codec = kRtpVideoVp8;
+ header.type.Video.codec = kRTPVideoVP8;
// Insert one video frame to get one frame decoded.
header.frameType = kVideoFrameKey;
header.type.Video.isFirstPacket = true;
@@ -270,7 +270,7 @@
header.header.payloadType = kUnusedPayloadType;
header.header.ssrc = 1;
header.header.headerLength = 12;
- header.type.Video.codec = kRtpVideoVp8;
+ header.type.Video.codec = kRTPVideoVP8;
header.type.Video.codecHeader.VP8.pictureId = -1;
header.type.Video.codecHeader.VP8.tl0PicIdx = -1;
for (int i = 0; i < 3; ++i) {
diff --git a/webrtc/modules/video_coding/main/source/video_coding_robustness_unittest.cc b/webrtc/modules/video_coding/main/source/video_coding_robustness_unittest.cc
index cb3bfb1..4c92c50 100644
--- a/webrtc/modules/video_coding/main/source/video_coding_robustness_unittest.cc
+++ b/webrtc/modules/video_coding/main/source/video_coding_robustness_unittest.cc
@@ -67,7 +67,7 @@
rtp_info.header.sequenceNumber = seq_no;
rtp_info.header.markerBit = marker_bit;
rtp_info.header.payloadType = video_codec_.plType;
- rtp_info.type.Video.codec = kRtpVideoVp8;
+ rtp_info.type.Video.codec = kRTPVideoVP8;
rtp_info.type.Video.codecHeader.VP8.InitRTPVideoHeaderVP8();
rtp_info.type.Video.isFirstPacket = first;
diff --git a/webrtc/modules/video_coding/main/test/codec_database_test.cc b/webrtc/modules/video_coding/main/test/codec_database_test.cc
index 84ddcef..b62995c 100644
--- a/webrtc/modules/video_coding/main/test/codec_database_test.cc
+++ b/webrtc/modules/video_coding/main/test/codec_database_test.cc
@@ -151,7 +151,7 @@
// Testing with VP8.
VideoCodingModule::Codec(kVideoCodecVP8, &sendCodec);
_vcm->RegisterSendCodec(&sendCodec, 1, 1440);
- _encodeCompleteCallback->SetCodecType(kRtpVideoVp8);
+ _encodeCompleteCallback->SetCodecType(kRTPVideoVP8);
_vcm->InitializeReceiver();
TEST (_vcm->AddVideoFrame(sourceFrame) == VCM_OK );
_vcm->InitializeSender();
@@ -196,7 +196,7 @@
VideoCodingModule::Codec(kVideoCodecVP8, &vp8EncSettings);
_vcm->RegisterTransportCallback(_encodeCallback); // encode returns error if callback uninitialized
_encodeCallback->RegisterReceiverVCM(_vcm);
- _encodeCallback->SetCodecType(kRtpVideoVp8);
+ _encodeCallback->SetCodecType(kRTPVideoVP8);
TEST(_vcm->RegisterExternalEncoder(encoder, vp8EncSettings.plType) == VCM_OK);
TEST(_vcm->RegisterSendCodec(&vp8EncSettings, 4, 1440) == VCM_OK);
TEST(_vcm->AddVideoFrame(sourceFrame) == VCM_OK);
@@ -232,7 +232,7 @@
TEST(_vcm->RegisterReceiveCodec(&receiveCodec, 1, true) == VCM_OK); // Require key frame
_vcm->RegisterTransportCallback(_encodeCallback); // encode returns error if callback uninitialized
_encodeCallback->RegisterReceiverVCM(_vcm);
- _encodeCallback->SetCodecType(kRtpVideoVp8);
+ _encodeCallback->SetCodecType(kRTPVideoVP8);
TEST(_vcm->AddVideoFrame(sourceFrame) == VCM_OK);
TEST(_vcm->Decode() == VCM_OK);
TEST(_vcm->ResetDecoder() == VCM_OK);
diff --git a/webrtc/modules/video_coding/main/test/generic_codec_test.cc b/webrtc/modules/video_coding/main/test/generic_codec_test.cc
index 0335349..1a9ca39 100644
--- a/webrtc/modules/video_coding/main/test/generic_codec_test.cc
+++ b/webrtc/modules/video_coding/main/test/generic_codec_test.cc
@@ -549,7 +549,7 @@
WebRtcRTPHeader rtpInfo;
rtpInfo.header.markerBit = true; // end of frame
rtpInfo.type.Video.codecHeader.VP8.InitRTPVideoHeaderVP8();
- rtpInfo.type.Video.codec = kRtpVideoVp8;
+ rtpInfo.type.Video.codec = kRTPVideoVP8;
rtpInfo.header.payloadType = payloadType;
rtpInfo.header.sequenceNumber = _seqNo;
_seqNo += 2;
diff --git a/webrtc/modules/video_coding/main/test/media_opt_test.cc b/webrtc/modules/video_coding/main/test/media_opt_test.cc
index 0e6a10d..e2ccd87 100644
--- a/webrtc/modules/video_coding/main/test/media_opt_test.cc
+++ b/webrtc/modules/video_coding/main/test/media_opt_test.cc
@@ -18,7 +18,6 @@
#include <time.h>
#include <vector>
-#include "webrtc/modules/rtp_rtcp/interface/rtp_receiver.h"
#include "webrtc/modules/video_coding/main/interface/video_coding.h"
#include "webrtc/modules/video_coding/main/test/test_macros.h"
#include "webrtc/modules/video_coding/main/test/test_util.h"
@@ -203,6 +202,7 @@
RtpRtcp::Configuration configuration;
configuration.id = 1;
configuration.audio = false;
+ configuration.incoming_data = _dataCallback;
configuration.outgoing_transport = _outgoingTransport;
_rtp = RtpRtcp::CreateRtpRtcp(configuration);
@@ -211,33 +211,21 @@
// Registering codecs for the RTP module
// Register receive and send payload
- VideoCodec video_codec;
- strncpy(video_codec.plName, "VP8", 32);
- video_codec.plType = VCM_VP8_PAYLOAD_TYPE;
- rtp_receiver_->RegisterReceivePayload(video_codec.plName,
- video_codec.plType,
- 90000,
- 0,
- video_codec.maxBitrate);
- _rtp->RegisterSendPayload(video_codec);
+ VideoCodec videoCodec;
+ strncpy(videoCodec.plName, "VP8", 32);
+ videoCodec.plType = VCM_VP8_PAYLOAD_TYPE;
+ _rtp->RegisterReceivePayload(videoCodec);
+ _rtp->RegisterSendPayload(videoCodec);
- strncpy(video_codec.plName, "ULPFEC", 32);
- video_codec.plType = VCM_ULPFEC_PAYLOAD_TYPE;
- rtp_receiver_->RegisterReceivePayload(video_codec.plName,
- video_codec.plType,
- 90000,
- 0,
- video_codec.maxBitrate);
- _rtp->RegisterSendPayload(video_codec);
+ strncpy(videoCodec.plName, "ULPFEC", 32);
+ videoCodec.plType = VCM_ULPFEC_PAYLOAD_TYPE;
+ _rtp->RegisterReceivePayload(videoCodec);
+ _rtp->RegisterSendPayload(videoCodec);
- strncpy(video_codec.plName, "RED", 32);
- video_codec.plType = VCM_RED_PAYLOAD_TYPE;
- rtp_receiver_->RegisterReceivePayload(video_codec.plName,
- video_codec.plType,
- 90000,
- 0,
- video_codec.maxBitrate);
- _rtp->RegisterSendPayload(video_codec);
+ strncpy(videoCodec.plName, "RED", 32);
+ videoCodec.plType = VCM_RED_PAYLOAD_TYPE;
+ _rtp->RegisterReceivePayload(videoCodec);
+ _rtp->RegisterSendPayload(videoCodec);
if (_nackFecEnabled == 1)
_rtp->SetGenericFECStatus(_nackFecEnabled, VCM_RED_PAYLOAD_TYPE,
diff --git a/webrtc/modules/video_coding/main/test/media_opt_test.h b/webrtc/modules/video_coding/main/test/media_opt_test.h
index 5a95276..9e9e92f 100644
--- a/webrtc/modules/video_coding/main/test/media_opt_test.h
+++ b/webrtc/modules/video_coding/main/test/media_opt_test.h
@@ -53,7 +53,6 @@
private:
webrtc::VideoCodingModule* _vcm;
- webrtc::RtpReceiver* rtp_receiver_;
webrtc::RtpRtcp* _rtp;
webrtc::RTPSendCompleteCallback* _outgoingTransport;
RtpDataCallback* _dataCallback;
diff --git a/webrtc/modules/video_coding/main/test/mt_rx_tx_test.cc b/webrtc/modules/video_coding/main/test/mt_rx_tx_test.cc
index 40ea24d..fd5a4f0 100644
--- a/webrtc/modules/video_coding/main/test/mt_rx_tx_test.cc
+++ b/webrtc/modules/video_coding/main/test/mt_rx_tx_test.cc
@@ -16,8 +16,6 @@
#include <string.h>
-#include "webrtc/modules/rtp_rtcp/interface/rtp_payload_registry.h"
-#include "webrtc/modules/rtp_rtcp/interface/rtp_receiver.h"
#include "webrtc/modules/rtp_rtcp/interface/rtp_rtcp.h"
#include "webrtc/modules/video_coding/main/interface/video_coding.h"
#include "webrtc/modules/video_coding/main/test/media_opt_test.h"
@@ -154,46 +152,29 @@
RtpRtcp::Configuration configuration;
configuration.id = 1;
configuration.audio = false;
+ configuration.incoming_data = &dataCallback;
configuration.outgoing_transport = outgoingTransport;
RtpRtcp* rtp = RtpRtcp::CreateRtpRtcp(configuration);
- scoped_ptr<RTPPayloadRegistry> registry(new RTPPayloadRegistry(
- -1, RTPPayloadStrategy::CreateStrategy(false)));
- scoped_ptr<RtpReceiver> rtp_receiver(
- RtpReceiver::CreateVideoReceiver(-1, Clock::GetRealTimeClock(),
- &dataCallback, NULL, registry.get()));
// registering codecs for the RTP module
- VideoCodec video_codec;
- strncpy(video_codec.plName, "ULPFEC", 32);
- video_codec.plType = VCM_ULPFEC_PAYLOAD_TYPE;
- TEST(rtp_receiver->RegisterReceivePayload(video_codec.plName,
- video_codec.plType,
- 90000,
- 0,
- video_codec.maxBitrate) == 0);
+ VideoCodec videoCodec;
+ strncpy(videoCodec.plName, "ULPFEC", 32);
+ videoCodec.plType = VCM_ULPFEC_PAYLOAD_TYPE;
+ TEST(rtp->RegisterReceivePayload(videoCodec) == 0);
- strncpy(video_codec.plName, "RED", 32);
- video_codec.plType = VCM_RED_PAYLOAD_TYPE;
- TEST(rtp_receiver->RegisterReceivePayload(video_codec.plName,
- video_codec.plType,
- 90000,
- 0,
- video_codec.maxBitrate) == 0);
+ strncpy(videoCodec.plName, "RED", 32);
+ videoCodec.plType = VCM_RED_PAYLOAD_TYPE;
+ TEST(rtp->RegisterReceivePayload(videoCodec) == 0);
- strncpy(video_codec.plName, args.codecName.c_str(), 32);
- video_codec.plType = VCM_VP8_PAYLOAD_TYPE;
- video_codec.maxBitrate = 10000;
- video_codec.codecType = args.codecType;
- TEST(rtp_receiver->RegisterReceivePayload(video_codec.plName,
- video_codec.plType,
- 90000,
- 0,
- video_codec.maxBitrate) == 0);
- TEST(rtp->RegisterSendPayload(video_codec) == 0);
+ strncpy(videoCodec.plName, args.codecName.c_str(), 32);
+ videoCodec.plType = VCM_VP8_PAYLOAD_TYPE;
+ videoCodec.maxBitrate = 10000;
+ videoCodec.codecType = args.codecType;
+ TEST(rtp->RegisterReceivePayload(videoCodec) == 0);
+ TEST(rtp->RegisterSendPayload(videoCodec) == 0);
// inform RTP Module of error resilience features
- TEST(rtp->SetGenericFECStatus(fecEnabled, VCM_RED_PAYLOAD_TYPE,
- VCM_ULPFEC_PAYLOAD_TYPE) == 0);
+ TEST(rtp->SetGenericFECStatus(fecEnabled, VCM_RED_PAYLOAD_TYPE, VCM_ULPFEC_PAYLOAD_TYPE) == 0);
//VCM
if (vcm->InitializeReceiver() < 0)
@@ -257,8 +238,7 @@
FecProtectionParams delta_params = protectionCallback.DeltaFecParameters();
FecProtectionParams key_params = protectionCallback.KeyFecParameters();
rtp->SetFecParameters(&delta_params, &key_params);
- rtp_receiver->SetNACKStatus(nackEnabled ? kNackRtcp : kNackOff,
- kMaxPacketAgeToNack);
+ rtp->SetNACKStatus(nackEnabled ? kNackRtcp : kNackOff, kMaxPacketAgeToNack);
vcm->SetChannelParameters(static_cast<uint32_t>(1000 * bitRate),
(uint8_t) lossRate, rttMS);
diff --git a/webrtc/modules/video_coding/main/test/mt_test_common.cc b/webrtc/modules/video_coding/main/test/mt_test_common.cc
index cdf57ee..04b180d 100644
--- a/webrtc/modules/video_coding/main/test/mt_test_common.cc
+++ b/webrtc/modules/video_coding/main/test/mt_test_common.cc
@@ -13,8 +13,6 @@
#include <cmath>
#include "webrtc/modules/rtp_rtcp/interface/rtp_header_parser.h"
-#include "webrtc/modules/rtp_rtcp/interface/rtp_payload_registry.h"
-#include "webrtc/modules/rtp_rtcp/interface/rtp_receiver.h"
#include "webrtc/modules/utility/interface/rtp_dump.h"
#include "webrtc/system_wrappers/interface/clock.h"
@@ -97,14 +95,7 @@
delete packet;
return -1;
}
- PayloadUnion payload_specific;
- if (!rtp_payload_registry_->GetPayloadSpecifics(
- header.payloadType, &payload_specific)) {
- return -1;
- }
- if (!rtp_receiver_->IncomingRtpPacket(&header, packet->data,
- packet->length, payload_specific,
- true))
+ if (_rtp->IncomingRtpPacket(packet->data, packet->length, header) < 0)
{
delete packet;
return -1;
diff --git a/webrtc/modules/video_coding/main/test/normal_test.cc b/webrtc/modules/video_coding/main/test/normal_test.cc
index 22d5fb2..04efa45 100644
--- a/webrtc/modules/video_coding/main/test/normal_test.cc
+++ b/webrtc/modules/video_coding/main/test/normal_test.cc
@@ -95,7 +95,7 @@
switch (_test.VideoType())
{
case kVideoCodecVP8:
- rtpInfo.type.Video.codec = kRtpVideoVp8;
+ rtpInfo.type.Video.codec = kRTPVideoVP8;
rtpInfo.type.Video.codecHeader.VP8.InitRTPVideoHeaderVP8();
rtpInfo.type.Video.codecHeader.VP8.nonReference =
videoHdr->codecHeader.VP8.nonReference;
@@ -103,7 +103,7 @@
videoHdr->codecHeader.VP8.pictureId;
break;
case kVideoCodecI420:
- rtpInfo.type.Video.codec = kRtpVideoI420;
+ rtpInfo.type.Video.codec = kRTPVideoI420;
break;
default:
assert(false);
diff --git a/webrtc/modules/video_coding/main/test/receiver_tests.h b/webrtc/modules/video_coding/main/test/receiver_tests.h
index ca276e9..ce289b2 100644
--- a/webrtc/modules/video_coding/main/test/receiver_tests.h
+++ b/webrtc/modules/video_coding/main/test/receiver_tests.h
@@ -22,7 +22,7 @@
#include <stdio.h>
#include <string>
-class RtpDataCallback : public webrtc::NullRtpData {
+class RtpDataCallback : public webrtc::RtpData {
public:
RtpDataCallback(webrtc::VideoCodingModule* vcm) : vcm_(vcm) {}
virtual ~RtpDataCallback() {}
diff --git a/webrtc/modules/video_coding/main/test/rtp_player.cc b/webrtc/modules/video_coding/main/test/rtp_player.cc
index 78099d5..0e440da 100644
--- a/webrtc/modules/video_coding/main/test/rtp_player.cc
+++ b/webrtc/modules/video_coding/main/test/rtp_player.cc
@@ -14,8 +14,6 @@
#include <map>
#include "webrtc/modules/rtp_rtcp/interface/rtp_header_parser.h"
-#include "webrtc/modules/rtp_rtcp/interface/rtp_payload_registry.h"
-#include "webrtc/modules/rtp_rtcp/interface/rtp_receiver.h"
#include "webrtc/modules/rtp_rtcp/interface/rtp_rtcp.h"
#include "webrtc/modules/video_coding/main/source/internal_defines.h"
#include "webrtc/modules/video_coding/main/test/pcap_file_reader.h"
@@ -218,9 +216,8 @@
RtpRtcp::Configuration configuration;
configuration.id = 1;
configuration.audio = false;
- handler->rtp_module_.reset(RtpReceiver::CreateVideoReceiver(
- configuration.id, configuration.clock, handler->payload_sink_.get(),
- NULL, handler->rtp_payload_registry_.get()));
+ configuration.incoming_data = handler->payload_sink_.get();
+ handler->rtp_module_.reset(RtpRtcp::CreateRtpRtcp(configuration));
if (handler->rtp_module_.get() == NULL) {
return -1;
}
@@ -229,6 +226,9 @@
kMaxPacketAgeToNack) < 0) {
return -1;
}
+ handler->rtp_module_->SetRTCPStatus(kRtcpNonCompound);
+ handler->rtp_module_->SetREMBStatus(true);
+ handler->rtp_module_->SetSSRCFilter(true, ssrc);
handler->rtp_header_parser_->RegisterRtpHeaderExtension(
kRtpExtensionTransmissionTimeOffset,
kDefaultTransmissionTimeOffsetExtensionId);
@@ -240,11 +240,7 @@
strncpy(codec.plName, it->name().c_str(), sizeof(codec.plName)-1);
codec.plType = it->payload_type();
codec.codecType = it->codec_type();
- if (handler->rtp_module_->RegisterReceivePayload(codec.plName,
- codec.plType,
- 90000,
- 0,
- codec.maxBitrate) < 0) {
+ if (handler->rtp_module_->RegisterReceivePayload(codec) < 0) {
return -1;
}
}
@@ -253,18 +249,20 @@
return 0;
}
+ void Process() {
+ for (HandlerMapIt it = handlers_.begin(); it != handlers_.end(); ++it) {
+ it->second->rtp_module_->Process();
+ }
+ }
+
void IncomingPacket(const uint8_t* data, uint32_t length) {
for (HandlerMapIt it = handlers_.begin(); it != handlers_.end(); ++it) {
- if (!it->second->rtp_header_parser_->IsRtcp(data, length)) {
+ if (it->second->rtp_header_parser_->IsRtcp(data, length)) {
+ it->second->rtp_module_->IncomingRtcpPacket(data, length);
+ } else {
RTPHeader header;
it->second->rtp_header_parser_->Parse(data, length, &header);
- PayloadUnion payload_specific;
- it->second->rtp_payload_registry_->GetPayloadSpecifics(
- header.payloadType, &payload_specific);
- bool in_order =
- it->second->rtp_module_->InOrderPacket(header.sequenceNumber);
- it->second->rtp_module_->IncomingRtpPacket(&header, data, length,
- payload_specific, in_order);
+ it->second->rtp_module_->IncomingRtpPacket(data, length, header);
}
}
}
@@ -275,8 +273,6 @@
Handler(uint32_t ssrc, const PayloadTypes& payload_types,
LostPackets* lost_packets)
: rtp_header_parser_(RtpHeaderParser::Create()),
- rtp_payload_registry_(new RTPPayloadRegistry(
- 0, RTPPayloadStrategy::CreateStrategy(false))),
rtp_module_(),
payload_sink_(),
ssrc_(ssrc),
@@ -300,8 +296,7 @@
}
scoped_ptr<RtpHeaderParser> rtp_header_parser_;
- scoped_ptr<RTPPayloadRegistry> rtp_payload_registry_;
- scoped_ptr<RtpReceiver> rtp_module_;
+ scoped_ptr<RtpRtcp> rtp_module_;
scoped_ptr<PayloadSinkInterface> payload_sink_;
private:
@@ -371,6 +366,8 @@
// Send any packets from packet source.
if (!end_of_file_ && (TimeUntilNextPacket() == 0 || first_packet_)) {
+ ssrc_handlers_.Process();
+
if (first_packet_) {
next_packet_length_ = sizeof(next_packet_);
if (packet_source_->NextPacket(next_packet_, &next_packet_length_,
diff --git a/webrtc/modules/video_coding/main/test/test_callbacks.cc b/webrtc/modules/video_coding/main/test/test_callbacks.cc
index c14c8b1..bbd7aea 100644
--- a/webrtc/modules/video_coding/main/test/test_callbacks.cc
+++ b/webrtc/modules/video_coding/main/test/test_callbacks.cc
@@ -14,8 +14,6 @@
#include "webrtc/common_video/libyuv/include/webrtc_libyuv.h"
#include "webrtc/modules/rtp_rtcp/interface/rtp_header_parser.h"
-#include "webrtc/modules/rtp_rtcp/interface/rtp_payload_registry.h"
-#include "webrtc/modules/rtp_rtcp/interface/rtp_receiver.h"
#include "webrtc/modules/utility/interface/rtp_dump.h"
#include "webrtc/modules/video_coding/main/test/test_macros.h"
#include "webrtc/system_wrappers/interface/clock.h"
@@ -36,7 +34,7 @@
_encodeComplete(false),
_width(0),
_height(0),
- _codecType(kRtpVideoNone)
+ _codecType(kRTPVideoNoVideo)
{
//
}
@@ -75,14 +73,14 @@
rtpInfo.type.Video.width = (uint16_t)_width;
switch (_codecType)
{
- case webrtc::kRtpVideoVp8:
+ case webrtc::kRTPVideoVP8:
rtpInfo.type.Video.codecHeader.VP8.InitRTPVideoHeaderVP8();
rtpInfo.type.Video.codecHeader.VP8.nonReference =
videoHdr->codecHeader.VP8.nonReference;
rtpInfo.type.Video.codecHeader.VP8.pictureId =
videoHdr->codecHeader.VP8.pictureId;
break;
- case webrtc::kRtpVideoI420:
+ case webrtc::kRTPVideoI420:
break;
default:
assert(false);
@@ -211,8 +209,6 @@
const char* filename):
_clock(clock),
_sendCount(0),
- rtp_payload_registry_(NULL),
- rtp_receiver_(NULL),
_rtp(NULL),
_lossPct(0),
_burstLength(0),
@@ -303,14 +299,7 @@
delete packet;
return -1;
}
- PayloadUnion payload_specific;
- if (!rtp_payload_registry_->GetPayloadSpecifics(
- header.payloadType, &payload_specific)) {
- return -1;
- }
- if (!rtp_receiver_->IncomingRtpPacket(&header, packet->data,
- packet->length, payload_specific,
- true))
+ if (_rtp->IncomingRtpPacket(packet->data, packet->length, header) < 0)
{
delete packet;
return -1;
diff --git a/webrtc/modules/video_coding/main/test/test_callbacks.h b/webrtc/modules/video_coding/main/test/test_callbacks.h
index 4297606..09275af 100644
--- a/webrtc/modules/video_coding/main/test/test_callbacks.h
+++ b/webrtc/modules/video_coding/main/test/test_callbacks.h
@@ -29,7 +29,6 @@
namespace webrtc
{
-class RTPPayloadRegistry;
class RtpDump;
// Send Side - Packetization callback - send an encoded frame to the VCMReceiver
@@ -60,7 +59,7 @@
// Return encode complete (true/false)
bool EncodeComplete();
// Inform callback of codec used
- void SetCodecType(RtpVideoCodecTypes codecType)
+ void SetCodecType(RTPVideoCodecTypes codecType)
{_codecType = codecType;}
// Inform callback of frame dimensions
void SetFrameDimensions(int32_t width, int32_t height)
@@ -83,7 +82,7 @@
bool _encodeComplete;
int32_t _width;
int32_t _height;
- RtpVideoCodecTypes _codecType;
+ RTPVideoCodecTypes _codecType;
}; // end of VCMEncodeCompleteCallback
@@ -114,7 +113,7 @@
// Return encode complete (true/false)
bool EncodeComplete();
// Inform callback of codec used
- void SetCodecType(RtpVideoCodecTypes codecType)
+ void SetCodecType(RTPVideoCodecTypes codecType)
{_codecType = codecType;}
// Inform callback of frame dimensions
@@ -131,7 +130,7 @@
RtpRtcp* _RTPModule;
int16_t _width;
int16_t _height;
- RtpVideoCodecTypes _codecType;
+ RTPVideoCodecTypes _codecType;
}; // end of VCMEncodeCompleteCallback
// Decode Complete callback
@@ -189,8 +188,6 @@
Clock* _clock;
uint32_t _sendCount;
- RTPPayloadRegistry* rtp_payload_registry_;
- RtpReceiver* rtp_receiver_;
RtpRtcp* _rtp;
double _lossPct;
double _burstLength;
diff --git a/webrtc/modules/video_coding/main/test/test_util.cc b/webrtc/modules/video_coding/main/test/test_util.cc
index aad2b53..159de17 100644
--- a/webrtc/modules/video_coding/main/test/test_util.cc
+++ b/webrtc/modules/video_coding/main/test/test_util.cc
@@ -146,12 +146,12 @@
return 0;
}
-webrtc::RtpVideoCodecTypes ConvertCodecType(const char* plname) {
+webrtc::RTPVideoCodecTypes ConvertCodecType(const char* plname) {
if (strncmp(plname,"VP8" , 3) == 0) {
- return webrtc::kRtpVideoVp8;
+ return webrtc::kRTPVideoVP8;
} else if (strncmp(plname,"I420" , 5) == 0) {
- return webrtc::kRtpVideoI420;
+ return webrtc::kRTPVideoI420;
} else {
- return webrtc::kRtpVideoNone; // Default value
+ return webrtc::kRTPVideoNoVideo; // Default value
}
}
diff --git a/webrtc/modules/video_coding/main/test/test_util.h b/webrtc/modules/video_coding/main/test/test_util.h
index 36ca219..ce11e6c 100644
--- a/webrtc/modules/video_coding/main/test/test_util.h
+++ b/webrtc/modules/video_coding/main/test/test_util.h
@@ -102,6 +102,6 @@
};
// Codec type conversion
-webrtc::RtpVideoCodecTypes ConvertCodecType(const char* plname);
+webrtc::RTPVideoCodecTypes ConvertCodecType(const char* plname);
#endif
diff --git a/webrtc/modules/video_coding/main/test/vcm_payload_sink_factory.cc b/webrtc/modules/video_coding/main/test/vcm_payload_sink_factory.cc
index beee0cd..ccc74e9 100644
--- a/webrtc/modules/video_coding/main/test/vcm_payload_sink_factory.cc
+++ b/webrtc/modules/video_coding/main/test/vcm_payload_sink_factory.cc
@@ -67,12 +67,6 @@
return vcm_->IncomingPacket(payload_data, payload_size, *rtp_header);
}
- virtual bool OnRecoveredPacket(const uint8_t* packet,
- int packet_length) {
- // We currently don't handle FEC.
- return true;
- }
-
// VCMPacketRequestCallback
virtual int32_t ResendPackets(const uint16_t* sequence_numbers,
uint16_t length) {