@@ -1392,6 +1392,8 @@ pub struct TrackPublicationInfo {
13921392 pub remote : bool ,
13931393 #[ prost( enumeration="EncryptionType" , required, tag="11" ) ]
13941394 pub encryption_type : i32 ,
1395+ #[ prost( enumeration="AudioTrackFeature" , repeated, packed="false" , tag="12" ) ]
1396+ pub audio_features : :: prost:: alloc:: vec:: Vec < i32 > ,
13951397}
13961398#[ allow( clippy:: derive_partial_eq_without_eq) ]
13971399#[ derive( Clone , PartialEq , :: prost:: Message ) ]
@@ -1575,6 +1577,48 @@ impl StreamState {
15751577 }
15761578 }
15771579}
1580+ #[ derive( Clone , Copy , Debug , PartialEq , Eq , Hash , PartialOrd , Ord , :: prost:: Enumeration ) ]
1581+ #[ repr( i32 ) ]
1582+ pub enum AudioTrackFeature {
1583+ TfStereo = 0 ,
1584+ TfNoDtx = 1 ,
1585+ TfAutoGainControl = 2 ,
1586+ TfEchoCancellation = 3 ,
1587+ TfNoiseSuppression = 4 ,
1588+ TfEnhancedNoiseCancellation = 5 ,
1589+ /// client will buffer audio once available and send it to the server via bytes stream once connected
1590+ TfPreconnectBuffer = 6 ,
1591+ }
1592+ impl AudioTrackFeature {
1593+ /// String value of the enum field names used in the ProtoBuf definition.
1594+ ///
1595+ /// The values are not transformed in any way and thus are considered stable
1596+ /// (if the ProtoBuf definition does not change) and safe for programmatic use.
1597+ pub fn as_str_name ( & self ) -> & ' static str {
1598+ match self {
1599+ AudioTrackFeature :: TfStereo => "TF_STEREO" ,
1600+ AudioTrackFeature :: TfNoDtx => "TF_NO_DTX" ,
1601+ AudioTrackFeature :: TfAutoGainControl => "TF_AUTO_GAIN_CONTROL" ,
1602+ AudioTrackFeature :: TfEchoCancellation => "TF_ECHO_CANCELLATION" ,
1603+ AudioTrackFeature :: TfNoiseSuppression => "TF_NOISE_SUPPRESSION" ,
1604+ AudioTrackFeature :: TfEnhancedNoiseCancellation => "TF_ENHANCED_NOISE_CANCELLATION" ,
1605+ AudioTrackFeature :: TfPreconnectBuffer => "TF_PRECONNECT_BUFFER" ,
1606+ }
1607+ }
1608+ /// Creates an enum from field names used in the ProtoBuf definition.
1609+ pub fn from_str_name ( value : & str ) -> :: core:: option:: Option < Self > {
1610+ match value {
1611+ "TF_STEREO" => Some ( Self :: TfStereo ) ,
1612+ "TF_NO_DTX" => Some ( Self :: TfNoDtx ) ,
1613+ "TF_AUTO_GAIN_CONTROL" => Some ( Self :: TfAutoGainControl ) ,
1614+ "TF_ECHO_CANCELLATION" => Some ( Self :: TfEchoCancellation ) ,
1615+ "TF_NOISE_SUPPRESSION" => Some ( Self :: TfNoiseSuppression ) ,
1616+ "TF_ENHANCED_NOISE_CANCELLATION" => Some ( Self :: TfEnhancedNoiseCancellation ) ,
1617+ "TF_PRECONNECT_BUFFER" => Some ( Self :: TfPreconnectBuffer ) ,
1618+ _ => None ,
1619+ }
1620+ }
1621+ }
15781622/// Enable/Disable a remote track publication
15791623#[ allow( clippy:: derive_partial_eq_without_eq) ]
15801624#[ derive( Clone , PartialEq , :: prost:: Message ) ]
@@ -1694,6 +1738,7 @@ pub enum DisconnectReason {
16941738 UserRejected = 12 ,
16951739 /// SIP protocol failure or unexpected response
16961740 SipTrunkFailure = 13 ,
1741+ ConnectionTimeout = 14 ,
16971742}
16981743impl DisconnectReason {
16991744 /// String value of the enum field names used in the ProtoBuf definition.
@@ -1716,6 +1761,7 @@ impl DisconnectReason {
17161761 DisconnectReason :: UserUnavailable => "USER_UNAVAILABLE" ,
17171762 DisconnectReason :: UserRejected => "USER_REJECTED" ,
17181763 DisconnectReason :: SipTrunkFailure => "SIP_TRUNK_FAILURE" ,
1764+ DisconnectReason :: ConnectionTimeout => "CONNECTION_TIMEOUT" ,
17191765 }
17201766 }
17211767 /// Creates an enum from field names used in the ProtoBuf definition.
@@ -1735,6 +1781,7 @@ impl DisconnectReason {
17351781 "USER_UNAVAILABLE" => Some ( Self :: UserUnavailable ) ,
17361782 "USER_REJECTED" => Some ( Self :: UserRejected ) ,
17371783 "SIP_TRUNK_FAILURE" => Some ( Self :: SipTrunkFailure ) ,
1784+ "CONNECTION_TIMEOUT" => Some ( Self :: ConnectionTimeout ) ,
17381785 _ => None ,
17391786 }
17401787 }
0 commit comments