T5.1: PriorityMode enum + SetPriorityMode signal; extend QualityProfile with video fields

This commit is contained in:
Siavash Sameni
2026-05-12 12:21:11 +04:00
parent 001d94f9ae
commit 276ecc660e
13 changed files with 227 additions and 13 deletions

View File

@@ -641,6 +641,7 @@ impl CallDecoder {
fec_ratio: 0.3,
frame_duration_ms: 20,
frames_per_block: 5,
..QualityProfile::GOOD
},
CodecId::Opus6k => QualityProfile::DEGRADED,
CodecId::Opus32k => QualityProfile::STUDIO_32K,
@@ -651,6 +652,7 @@ impl CallDecoder {
fec_ratio: 0.5,
frame_duration_ms: 20,
frames_per_block: 5,
..QualityProfile::GOOD
},
CodecId::Codec2_1200 => QualityProfile::CATASTROPHIC,
CodecId::ComfortNoise => QualityProfile::GOOD,

View File

@@ -141,9 +141,9 @@ pub fn signal_to_call_type(signal: &SignalMessage) -> CallSignalType {
| SignalMessage::QualityCapability { .. } => CallSignalType::Offer, // quality negotiation
SignalMessage::PresenceList { .. } => CallSignalType::Offer, // lobby presence
SignalMessage::QualityDirective { .. } => CallSignalType::Offer, // relay-initiated
SignalMessage::Nack { .. } | SignalMessage::PictureLossIndication { .. } => {
CallSignalType::Offer
} // relay-initiated (video loss recovery)
SignalMessage::Nack { .. }
| SignalMessage::PictureLossIndication { .. }
| SignalMessage::SetPriorityMode { .. } => CallSignalType::Offer, // relay-initiated (video loss recovery)
}
}