Home | History | Annotate | Download | only in source

Lines Matching refs:payload

52     // Reserved payload types to avoid RTCP conflicts when marker bit is set.
60 case 78: // 206 Payload-specific FB message.
62 LOG(LS_ERROR) << "Can't register invalid receiver payload type: "
77 // We already use this payload type.
78 RtpUtility::Payload* payload = it->second;
80 assert(payload);
82 size_t name_length = strlen(payload->name);
88 payload->name, payload_name, payload_name_length)) {
89 if (rtp_payload_strategy_->PayloadIsCompatible(*payload, frequency,
91 rtp_payload_strategy_->UpdatePayloadRate(payload, rate);
95 LOG(LS_ERROR) << "Payload type already registered: "
105 RtpUtility::Payload* payload = rtp_payload_strategy_->CreatePayloadType(
108 payload_type_map_[payload_type] = payload;
117 // Successful set of payload type, clear the value of last received payload
146 RtpUtility::Payload* payload = iterator->second;
147 size_t name_length = strlen(payload->name);
151 payload->name, payload_name, payload_name_length)) {
152 // We found the payload name in the list.
154 if (payload->audio) {
155 if (rtp_payload_strategy_->PayloadIsCompatible(*payload, frequency,
158 delete payload;
163 delete payload;
185 RtpUtility::Payload* payload = it->second;
186 assert(payload);
188 size_t name_length = strlen(payload->name);
191 payload->name, payload_name, payload_name_length)) {
193 if (payload->audio) {
196 if (payload->typeSpecific.Audio.frequency == frequency &&
197 payload->typeSpecific.Audio.channels == channels) {
203 if (payload->typeSpecific.Audio.frequency == frequency &&
204 payload->typeSpecific.Audio.channels == channels &&
205 payload->typeSpecific.Audio.rate == rate) {
279 // matches the last non-RTX payload type we received. There are cases where
312 LOG(LS_ERROR) << "Invalid RTX payload type: " << payload_type;
331 PayloadUnion* payload) const {
336 // Check that this is a registered payload type.
340 *payload = it->second->typeSpecific;
346 const RtpUtility::Payload* payload = PayloadTypeToPayload(payload_type);
347 if (!payload) {
351 return rtp_payload_strategy_->GetPayloadTypeFrequency(*payload);
354 const RtpUtility::Payload* RTPPayloadRegistry::PayloadTypeToPayload(
361 // Check that this is a registered payload type.
389 bool PayloadIsCompatible(const RtpUtility::Payload& payload,
394 payload.audio &&
395 payload.typeSpecific.Audio.frequency == frequency &&
396 payload.typeSpecific.Audio.channels == channels &&
397 (payload.typeSpecific.Audio.rate == rate ||
398 payload.typeSpecific.Audio.rate == 0 || rate == 0);
401 void UpdatePayloadRate(RtpUtility::Payload* payload,
403 payload->typeSpecific.Audio.rate = rate;
406 RtpUtility::Payload* CreatePayloadType(
412 RtpUtility::Payload* payload = new RtpUtility::Payload;
413 payload->name[RTP_PAYLOAD_NAME_SIZE - 1] = 0;
414 strncpy(payload->name, payloadName, RTP_PAYLOAD_NAME_SIZE - 1);
416 payload->typeSpecific.Audio.frequency = frequency;
417 payload->typeSpecific.Audio.channels = channels;
418 payload->typeSpecific.Audio.rate = rate;
419 payload->audio = true;
420 return payload;
423 int GetPayloadTypeFrequency(const RtpUtility::Payload& payload) const {
424 return payload.typeSpecific.Audio.frequency;
432 bool PayloadIsCompatible(const RtpUtility::Payload& payload,
436 return !payload.audio;
439 void UpdatePayloadRate(RtpUtility::Payload* payload,
441 payload->typeSpecific.Video.maxRate = rate;
444 RtpUtility::Payload* CreatePayloadType(
466 RtpUtility::Payload* payload = new RtpUtility::Payload;
468 payload
469 strncpy(payload->name, payloadName, RTP_PAYLOAD_NAME_SIZE - 1);
470 payload->typeSpecific.Video.videoCodecType = videoType;
471 payload->typeSpecific.Video.maxRate = rate;
472 payload->audio = false;
473 return payload;
476 int GetPayloadTypeFrequency(const RtpUtility::Payload& payload) const {