RTPPayloadRegistry: Stop using the rate to keep track of receive codecs

It's not used for anything.

BUG=webrtc:5805

Review-Url: https://codereview.webrtc.org/2516213002
Cr-Commit-Position: refs/heads/master@{#15438}
This commit is contained in:
kwiberg
2016-12-06 03:52:18 -08:00
committed by Commit bot
parent e59647b991
commit 68d3213313
3 changed files with 6 additions and 19 deletions

View File

@ -29,10 +29,8 @@ bool PayloadIsCompatible(const RtpUtility::Payload& payload,
if (_stricmp(payload.name, audio_codec.plname) != 0)
return false;
const AudioPayload& audio_payload = payload.typeSpecific.Audio;
const uint32_t rate = std::max(0, audio_codec.rate);
return audio_payload.frequency == static_cast<uint32_t>(audio_codec.plfreq) &&
audio_payload.channels == audio_codec.channels &&
(audio_payload.rate == rate || audio_payload.rate == 0 || rate == 0);
audio_payload.channels == audio_codec.channels;
}
bool PayloadIsCompatible(const RtpUtility::Payload& payload,
@ -54,7 +52,7 @@ RtpUtility::Payload CreatePayloadType(const CodecInst& audio_codec) {
RTC_DCHECK_GE(audio_codec.plfreq, 1000);
payload.typeSpecific.Audio.frequency = audio_codec.plfreq;
payload.typeSpecific.Audio.channels = audio_codec.channels;
payload.typeSpecific.Audio.rate = std::max(0, audio_codec.rate);
payload.typeSpecific.Audio.rate = 0;
payload.audio = true;
return payload;
}
@ -134,7 +132,7 @@ int32_t RTPPayloadRegistry::RegisterReceivePayload(const CodecInst& audio_codec,
// We already use this payload type. Check if it's the same as we already
// have. If same, ignore sending an error.
if (PayloadIsCompatible(it->second, audio_codec)) {
it->second.typeSpecific.Audio.rate = std::max(0, audio_codec.rate);
it->second.typeSpecific.Audio.rate = 0;
return 0;
}
LOG(LS_ERROR) << "Payload type already registered: " << audio_codec.pltype;

View File

@ -28,10 +28,9 @@ using ::testing::_;
static const char* kTypicalPayloadName = "name";
static const size_t kTypicalChannels = 1;
static const uint32_t kTypicalFrequency = 44000;
static const uint32_t kTypicalRate = 32 * 1024;
static const CodecInst kTypicalAudioCodec = {-1 /* pltype */, "name",
kTypicalFrequency, 0 /* pacsize */,
kTypicalChannels, kTypicalRate};
kTypicalChannels};
TEST(RtpPayloadRegistryTest,
RegistersAndRemembersVideoPayloadsUntilDeregistered) {
@ -79,7 +78,6 @@ TEST(RtpPayloadRegistryTest,
EXPECT_TRUE(retrieved_payload->audio);
EXPECT_EQ(kTypicalFrequency, retrieved_payload->typeSpecific.Audio.frequency);
EXPECT_EQ(kTypicalChannels, retrieved_payload->typeSpecific.Audio.channels);
EXPECT_EQ(kTypicalRate, retrieved_payload->typeSpecific.Audio.rate);
// Now forget about it and verify it's gone.
EXPECT_EQ(0, rtp_payload_registry.DeRegisterReceivePayload(payload_type));
@ -90,7 +88,6 @@ TEST(RtpPayloadRegistryTest, AudioRedWorkProperly) {
const uint8_t kRedPayloadType = 127;
const int kRedSampleRate = 8000;
const size_t kRedChannels = 1;
const int kRedBitRate = 0;
RTPPayloadRegistry rtp_payload_registry;
@ -100,7 +97,6 @@ TEST(RtpPayloadRegistryTest, AudioRedWorkProperly) {
red_audio_codec.pltype = kRedPayloadType;
red_audio_codec.plfreq = kRedSampleRate;
red_audio_codec.channels = kRedChannels;
red_audio_codec.rate = kRedBitRate;
EXPECT_EQ(0, rtp_payload_registry.RegisterReceivePayload(
red_audio_codec, &new_payload_created));
EXPECT_TRUE(new_payload_created);
@ -152,7 +148,6 @@ TEST(RtpPayloadRegistryTest,
EXPECT_TRUE(retrieved_payload->audio);
EXPECT_EQ(kTypicalFrequency, retrieved_payload->typeSpecific.Audio.frequency);
EXPECT_EQ(kTypicalChannels, retrieved_payload->typeSpecific.Audio.channels);
EXPECT_EQ(kTypicalRate, retrieved_payload->typeSpecific.Audio.rate);
retrieved_payload =
rtp_payload_registry.PayloadTypeToPayload(payload_type - 1);
@ -162,7 +157,6 @@ TEST(RtpPayloadRegistryTest,
EXPECT_EQ(kTypicalFrequency + 1,
retrieved_payload->typeSpecific.Audio.frequency);
EXPECT_EQ(kTypicalChannels, retrieved_payload->typeSpecific.Audio.channels);
EXPECT_EQ(kTypicalRate, retrieved_payload->typeSpecific.Audio.rate);
// Ok, update the rate for one of the codecs. If either the incoming rate or
// the stored rate is zero it's not really an error to register the same
@ -241,7 +235,6 @@ TEST_P(ParameterizedRtpPayloadRegistryTest,
audio_codec.pltype = GetParam();
audio_codec.plfreq = 1900;
audio_codec.channels = 1;
audio_codec.rate = 17;
EXPECT_EQ(-1,
rtp_payload_registry.RegisterReceivePayload(audio_codec, &ignored));
}
@ -262,7 +255,6 @@ TEST_P(RtpPayloadRegistryGenericTest, RegisterGenericReceivePayloadType) {
audio_codec.pltype = GetParam();
audio_codec.plfreq = 1900;
audio_codec.channels = 1;
audio_codec.rate = 17;
EXPECT_EQ(0,
rtp_payload_registry.RegisterReceivePayload(audio_codec, &ignored));
}

View File

@ -75,10 +75,7 @@ class RTPCallback : public NullRtpFeedback {
const int frequency,
const size_t channels,
const uint32_t rate) override {
if (payloadType == kPcmuPayloadType) {
EXPECT_EQ(kTestRate, rate) <<
"The rate should be 64K for this payloadType";
}
EXPECT_EQ(0u, rate) << "The rate should be zero";
return 0;
}
};