webrtc/pc
Philipp Hancke b9405c4748 Fix list of resiliency mechanisms in setCodecPreferences
Add ulpfec and flexfec to list of resiliency mechanisms taken
into account and in general exclude Comfort Noise (CN) from media
codecs.

Also introduce RtpCodecCapability::IsMediaCodec & ::IsResiliencyCodec
behaving like the MediaCodec methods.

BUG=webrtc:15396

Change-Id: I79041898928190bfdd33a06d8f6975d7556c46b1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/330424
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41485}
2024-01-09 13:09:59 +00:00
..
g3doc Document how bitrate probing works from a RTP perspective 2023-06-09 14:14:12 +00:00
scenario_tests Update pc/ to not use implicit conversion from scoped_refptr<T> to T*. 2022-04-20 13:18:33 +00:00
test Re-enable SvcTestAV1/SvcTest.ScalabilityModeSupported/L2T2_DD 2023-12-18 20:13:15 +00:00
audio_rtp_receiver.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
audio_rtp_receiver.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
audio_rtp_receiver_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
audio_track.cc Move rtc::make_ref_counted to api/ 2022-06-15 09:47:38 +00:00
audio_track.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
BUILD.gn Revert "Delete pc/peerconnection build target" 2023-12-21 12:40:44 +00:00
channel.cc Revert "Make Codec::Matches also consider packetization" 2023-11-30 14:06:01 +00:00
channel.h Use webrtc::TaskQueueBase type instead of rtc::Thread 2023-10-30 14:43:46 +00:00
channel_interface.h Remove all split channels related code 2023-06-29 09:32:04 +00:00
channel_unittest.cc Remove unused propagation of field trials in Codec::Matches 2023-11-14 08:14:14 +00:00
connection_context.cc Cleanup ConnectionContext dependency on field trials 2023-12-06 18:01:06 +00:00
connection_context.h Cleanup ConnectionContext dependency on field trials 2023-12-06 18:01:06 +00:00
data_channel_controller.cc Avoid touching channel after OnSctpDataChannelClosed 2023-06-22 09:13:29 +00:00
data_channel_controller.h Refactor HasDataChannels 2023-05-15 14:52:12 +00:00
data_channel_controller_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
data_channel_integrationtest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
data_channel_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
data_channel_utils.cc
data_channel_utils.h Format ^(api|call|common_audio|examples|media|net|p2p|pc)/ 2023-05-03 11:09:26 +00:00
DEPS Remove the SctpDataChannel::config_ member variable. 2023-03-12 17:28:14 +00:00
dtls_srtp_transport.cc Reduce logging verbosity of DTLS-SRTP RTCP transport 2023-08-22 13:48:09 +00:00
dtls_srtp_transport.h Remove untested and unused SetSrtpSend/ReceiveKey functions 2023-11-11 11:22:01 +00:00
dtls_srtp_transport_unittest.cc Convert signals in rtp_transport_internal.h to CallbackList 2023-09-05 11:37:32 +00:00
dtls_transport.cc Reduce locking in DtlsTransport 2023-12-14 21:01:04 +00:00
dtls_transport.h Reduce locking in DtlsTransport 2023-12-14 21:01:04 +00:00
dtls_transport_unittest.cc Move rtc::make_ref_counted to api/ 2022-06-15 09:47:38 +00:00
dtmf_sender.cc Replace Thread::Invoke with Thread::BlockingCall 2022-09-09 10:44:17 +00:00
dtmf_sender.h Replace Thread::Invoke with Thread::BlockingCall 2022-09-09 10:44:17 +00:00
dtmf_sender_unittest.cc Remove sigslot usage from DtmfProviderInterface 2022-08-03 14:16:35 +00:00
external_hmac.cc
external_hmac.h Break out a few more targets from rtc_pc_base 2022-03-10 18:36:43 +00:00
ice_server_parsing.cc Reject stun urls with query parameters 2023-04-21 11:19:37 +00:00
ice_server_parsing.h Reland "ice server parsing: return RTCError with more details" 2022-10-12 11:23:22 +00:00
ice_server_parsing_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
ice_transport.cc
ice_transport.h Break out a few more targets from rtc_pc_base 2022-03-10 18:36:43 +00:00
ice_transport_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
jitter_buffer_delay.cc Use SequenceChecker(SequenceChecker::kDetached) in a few places. 2023-03-24 07:44:18 +00:00
jitter_buffer_delay.h Use SequenceChecker(SequenceChecker::kDetached) in a few places. 2023-03-24 07:44:18 +00:00
jitter_buffer_delay_unittest.cc Update IWYU tool with a mapping file 2022-02-24 11:05:06 +00:00
jsep_ice_candidate.cc Update IWYU tool with a mapping file 2022-02-24 11:05:06 +00:00
jsep_session_description.cc Remove JsepSessionDescription::kDefaultVideoCodecName 2023-03-02 12:28:29 +00:00
jsep_session_description_unittest.cc Remove references to AudioCodec and VideoCodec constructors 2023-06-05 23:23:40 +00:00
jsep_transport.cc Add histogram for DTLS peer signature algorithm 2023-10-06 12:25:37 +00:00
jsep_transport.h Remove sigslot usage from SctpTransportInternal 2022-08-22 13:51:17 +00:00
jsep_transport_collection.cc Move channel creation functions into RtpTransceiver 2022-05-04 11:57:50 +00:00
jsep_transport_collection.h Use SequenceChecker(SequenceChecker::kDetached) in a few places. 2023-03-24 07:44:18 +00:00
jsep_transport_controller.cc Add callback-based interface to IceTransportInternal GatheringState 2023-11-30 09:25:37 +00:00
jsep_transport_controller.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
jsep_transport_controller_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
jsep_transport_unittest.cc Reland "dtls: allow dtls role to change during DTLS restart" 2022-08-19 10:55:47 +00:00
legacy_stats_collector.cc Update LegacyStatsCollector to conform with Wc++11-narrowing 2023-12-21 14:58:48 +00:00
legacy_stats_collector.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
legacy_stats_collector_interface.h Delete api/stats_types.h in favor of api/legacy_stats_types.h 2022-11-14 12:10:06 +00:00
legacy_stats_collector_unittest.cc Replace "rcvd" with "received" for readability 2023-04-24 15:30:07 +00:00
local_audio_source.cc Move rtc::make_ref_counted to api/ 2022-06-15 09:47:38 +00:00
local_audio_source.h
local_audio_source_unittest.cc
media_factory.h Delete deprecated call_factory and media_engine 2023-12-04 14:42:44 +00:00
media_protocol_names.cc Never pass a signed char to ctype macros like isdigit() 2022-05-30 13:05:03 +00:00
media_protocol_names.h
media_session.cc sdp: tweak msid signaling further 2024-01-08 14:03:19 +00:00
media_session.h Merge Add(Audio|Video)ContentFor(Offer|Answer) 2023-11-17 11:54:11 +00:00
media_session_unittest.cc Add SDP negotiation support for HEVC. 2023-12-12 02:09:11 +00:00
media_stream.cc Move rtc::make_ref_counted to api/ 2022-06-15 09:47:38 +00:00
media_stream.h Change stream.AddTrack/RemoveTrack to take a scoped_refptr argument 2022-04-21 12:32:17 +00:00
media_stream_observer.cc Update pc/ to not use implicit conversion from scoped_refptr<T> to T*. 2022-04-20 13:18:33 +00:00
media_stream_observer.h Update pc/ to not use implicit conversion from scoped_refptr<T> to T*. 2022-04-20 13:18:33 +00:00
media_stream_proxy.h Change stream.AddTrack/RemoveTrack to take a scoped_refptr argument 2022-04-21 12:32:17 +00:00
media_stream_track_proxy.h Move VideoTrack's content_hint property to the signaling thread. 2022-02-15 21:55:59 +00:00
media_stream_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
OWNERS Enforce policy that SDP munging requires special approval 2023-01-30 20:09:07 +00:00
peer_connection.cc Remove expired histograms WebRTC.PeerConnection.Simulcast.NumberOfSendEncodings 2023-12-19 09:12:18 +00:00
peer_connection.h Remove PeerConnection::GetRtpTransport 2023-12-06 15:52:37 +00:00
peer_connection_adaptation_integrationtest.cc New PeerConnectionFactory::CreateVideoTrack with refcounted source 2023-03-22 09:10:27 +00:00
peer_connection_bundle_unittest.cc Generalize ssrc-group check to apply to groups other than SIM 2023-10-09 05:59:48 +00:00
peer_connection_crypto_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
peer_connection_data_channel_unittest.cc Migrate PeerConnection tests to EnableMedia api 2023-11-03 12:32:14 +00:00
peer_connection_encodings_integrationtest.cc Fix list of resiliency mechanisms in setCodecPreferences 2024-01-09 13:09:59 +00:00
peer_connection_end_to_end_unittest.cc Reland "Unify access to SDP codec parameters" 2024-01-03 12:03:11 +00:00
peer_connection_factory.cc Reland "FrameCadenceAdapter: align video encoding to metronome" 2024-01-08 13:54:56 +00:00
peer_connection_factory.h Reland "FrameCadenceAdapter: align video encoding to metronome" 2024-01-08 13:54:56 +00:00
peer_connection_factory_proxy.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
peer_connection_factory_unittest.cc Use Environment to keep peer connection factory field trials in ConnectionContext 2023-11-27 16:46:27 +00:00
peer_connection_field_trial_tests.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
peer_connection_header_extension_unittest.cc Deprecate RtcEventLogFactory constructor taking unused parameter 2023-12-07 21:46:56 +00:00
peer_connection_histogram_unittest.cc Delete CallFactoryInterface as no longer needed 2023-12-05 15:44:43 +00:00
peer_connection_ice_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
peer_connection_integrationtest.cc Delete deprecated AsyncResolver and related classes 2023-11-30 15:36:55 +00:00
peer_connection_interface_unittest.cc sdp: make msid support parsing more robust 2023-12-14 14:50:31 +00:00
peer_connection_internal.h Move Destroy/Create steps for DataChannelTransport to PeerConnection. 2023-10-21 16:25:11 +00:00
peer_connection_jsep_unittest.cc Migrate PeerConnection tests to EnableMedia api 2023-11-03 12:32:14 +00:00
peer_connection_media_unittest.cc Deprecate RtcEventLogFactory constructor taking unused parameter 2023-12-07 21:46:56 +00:00
peer_connection_message_handler.cc Rename api/stats_types.h to api/legacy_stats_types.h. 2022-11-11 10:29:25 +00:00
peer_connection_message_handler.h Rename api/stats_types.h to api/legacy_stats_types.h. 2022-11-11 10:29:25 +00:00
peer_connection_proxy.h Add optional init_send_encodings to AddTrack 2022-10-19 09:13:08 +00:00
peer_connection_rampup_tests.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
peer_connection_rtp_unittest.cc sdp: make msid support parsing more robust 2023-12-14 14:50:31 +00:00
peer_connection_signaling_unittest.cc Remove most usage of MediaContentDescription::as_audio()/as_video() 2023-11-27 09:35:39 +00:00
peer_connection_simulcast_unittest.cc Remove expired histograms WebRTC.PeerConnection.Simulcast.NumberOfSendEncodings 2023-12-19 09:12:18 +00:00
peer_connection_svc_integrationtest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
peer_connection_wrapper.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
peer_connection_wrapper.h Enable the use of CreateDataChannel with a DataChannelInit config. 2023-02-10 12:24:47 +00:00
proxy.cc
proxy.h Format ^(api|call|common_audio|examples|media|net|p2p|pc)/ 2023-05-03 11:09:26 +00:00
proxy_unittest.cc Move rtc::make_ref_counted to api/ 2022-06-15 09:47:38 +00:00
remote_audio_source.cc Split audio and video channels into Send and Receive APIs. 2022-12-14 11:00:17 +00:00
remote_audio_source.h Split audio and video channels into Send and Receive APIs. 2022-12-14 11:00:17 +00:00
rtc_stats_collector.cc Do no return media-playout stats unless there is an audio receiver 2023-12-20 16:14:05 +00:00
rtc_stats_collector.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
rtc_stats_collector_unittest.cc Do no return media-playout stats unless there is an audio receiver 2023-12-20 16:14:05 +00:00
rtc_stats_integrationtest.cc stats: implement fecSsrc on inbound-rtp 2023-08-04 12:54:48 +00:00
rtc_stats_traversal.cc Delete deprecated 'track' and 'stream' metrics from WebRTC. 2023-05-24 12:26:56 +00:00
rtc_stats_traversal.h
rtc_stats_traversal_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
rtcp_mux_filter.cc
rtcp_mux_filter.h
rtcp_mux_filter_unittest.cc
rtp_media_utils.cc
rtp_media_utils.h Break out a few more targets from rtc_pc_base 2022-03-10 18:36:43 +00:00
rtp_media_utils_unittest.cc
rtp_parameters_conversion.cc Reland "Merge the codec types" 2023-06-15 15:53:29 +00:00
rtp_parameters_conversion.h Reland "Merge the codec types" 2023-06-15 15:53:29 +00:00
rtp_parameters_conversion_unittest.cc Reland "Merge the codec types" 2023-06-15 15:53:29 +00:00
rtp_receiver.cc Update IWYU tool with a mapping file 2022-02-24 11:05:06 +00:00
rtp_receiver.h Reland "Remove 'trackId' dependency in stats selector algorithm." 2023-01-05 09:04:12 +00:00
rtp_receiver_proxy.h
rtp_sender.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
rtp_sender.h Make RtpSenderInternal::CheckCodecParameters pure virtual 2023-11-13 15:19:53 +00:00
rtp_sender_proxy.h Remove public GenerateKeyFrame(list-of-rids) API from RtpSender 2023-08-30 14:54:17 +00:00
rtp_sender_receiver_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
rtp_transceiver.cc Fix list of resiliency mechanisms in setCodecPreferences 2024-01-09 13:09:59 +00:00
rtp_transceiver.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
rtp_transceiver_unittest.cc Revert "Enable DD and VLA header extensions by default for Simulcast/SVC" 2023-12-08 11:29:46 +00:00
rtp_transmission_manager.cc Reland "Ensure RTCRtpSenders are always created with one encoding" 2023-01-19 15:49:04 +00:00
rtp_transmission_manager.h Delete some unused sigslot includes 2023-08-28 12:36:39 +00:00
rtp_transport.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
rtp_transport.h Remove SSRCs from libSRTP when removing them from the rtp_demuxer 2023-11-08 10:24:10 +00:00
rtp_transport_internal.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
rtp_transport_unittest.cc Use pass-by-value in delayed scheduling of OnSentPacket 2023-11-06 09:52:43 +00:00
sctp_data_channel.cc [SctpDataChannel] Don't use PostTask for observer registration. 2023-08-25 09:07:29 +00:00
sctp_data_channel.h Reland "Add param to DCC::SetupDataChannelTransport_n, simplify DCC* setup code." 2023-04-18 12:12:52 +00:00
sctp_transport.cc Update SctpTransportInternal to use RTCError. 2023-03-21 13:57:47 +00:00
sctp_transport.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
sctp_transport_unittest.cc Update SctpTransportInternal to use RTCError. 2023-03-21 13:57:47 +00:00
sctp_utils.cc Deprecate char* functions on ByteBufferReader 2023-11-22 11:46:25 +00:00
sctp_utils.h Adopt StreamId in SctpDataChannelControllerInterface 2023-03-21 13:45:51 +00:00
sctp_utils_unittest.cc Deprecate char* functions on ByteBufferReader 2023-11-22 11:46:25 +00:00
sdp_offer_answer.cc sdp: make msid support parsing more robust 2023-12-14 14:50:31 +00:00
sdp_offer_answer.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
sdp_offer_answer_unittest.cc sdp: tweak msid signaling further 2024-01-08 14:03:19 +00:00
sdp_state_provider.h
sdp_utils.cc Update IWYU tool with a mapping file 2022-02-24 11:05:06 +00:00
sdp_utils.h
session_description.cc Format ^(api|call|common_audio|examples|media|net|p2p|pc)/ 2023-05-03 11:09:26 +00:00
session_description.h sdp: tweak msid signaling further 2024-01-08 14:03:19 +00:00
session_description_unittest.cc Update IWYU tool with a mapping file 2022-02-24 11:05:06 +00:00
simulcast_description.cc Introduce a variant of rtc::split that returns a vector of string_view 2022-01-25 08:25:50 +00:00
simulcast_description.h Introduce a variant of rtc::split that returns a vector of string_view 2022-01-25 08:25:50 +00:00
simulcast_sdp_serializer.cc Rename simulcast SDP serializer 2023-09-18 10:09:02 +00:00
simulcast_sdp_serializer.h Rename simulcast SDP serializer 2023-09-18 10:09:02 +00:00
simulcast_sdp_serializer_unittest.cc Rename simulcast SDP serializer 2023-09-18 10:09:02 +00:00
slow_peer_connection_integration_test.cc Use rtc::ReceivedPacket in Stun and TurnServer 2023-11-23 10:40:56 +00:00
srtp_filter.cc Rename cipher_suite to crypto_suite 2023-08-02 11:45:24 +00:00
srtp_filter.h Rename cipher_suite to crypto_suite 2023-08-02 11:45:24 +00:00
srtp_filter_unittest.cc Rename cipher_suite to crypto_suite 2023-08-02 11:45:24 +00:00
srtp_session.cc Remove SSRCs from libSRTP when removing them from the rtp_demuxer 2023-11-08 10:24:10 +00:00
srtp_session.h Remove SSRCs from libSRTP when removing them from the rtp_demuxer 2023-11-08 10:24:10 +00:00
srtp_session_unittest.cc Remove SSRCs from libSRTP when removing them from the rtp_demuxer 2023-11-08 10:24:10 +00:00
srtp_transport.cc Remove untested and unused SetSrtpSend/ReceiveKey functions 2023-11-11 11:22:01 +00:00
srtp_transport.h Remove untested and unused SetSrtpSend/ReceiveKey functions 2023-11-11 11:22:01 +00:00
srtp_transport_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
stream_collection.h Update pc/ to not use implicit conversion from scoped_refptr<T> to T*. 2022-04-20 13:18:33 +00:00
track_media_info_map.cc Delete deprecated 'track' and 'stream' metrics from WebRTC. 2023-05-24 12:26:56 +00:00
track_media_info_map.h Delete deprecated 'track' and 'stream' metrics from WebRTC. 2023-05-24 12:26:56 +00:00
track_media_info_map_unittest.cc Delete deprecated 'track' and 'stream' metrics from WebRTC. 2023-05-24 12:26:56 +00:00
transceiver_list.cc Restore FiredDirection and maybe fire OnTrack in Rollback. 2022-05-02 18:07:24 +00:00
transceiver_list.h Restore FiredDirection and maybe fire OnTrack in Rollback. 2022-05-02 18:07:24 +00:00
transport_stats.cc
transport_stats.h Add histogram for DTLS peer signature algorithm 2023-10-06 12:25:37 +00:00
usage_pattern.cc
usage_pattern.h
used_ids.h Unify RTP payload type validity checking 2023-09-25 14:54:22 +00:00
used_ids_unittest.cc Update IWYU tool with a mapping file 2022-02-24 11:05:06 +00:00
video_rtp_receiver.cc Rename Set(Send|Recv)Parameters Set(Sender|Receiver)Parameters 2023-09-01 08:12:55 +00:00
video_rtp_receiver.h Implement GetParameters/GetSources support for unsignaled SSRCs. 2023-01-10 06:44:27 +00:00
video_rtp_receiver_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
video_rtp_track_source.cc Use SequenceChecker(SequenceChecker::kDetached) in a few places. 2023-03-24 07:44:18 +00:00
video_rtp_track_source.h Use SequenceChecker(SequenceChecker::kDetached) in a few places. 2023-03-24 07:44:18 +00:00
video_rtp_track_source_unittest.cc Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
video_track.cc Replace Thread::Invoke with Thread::BlockingCall 2022-09-09 10:44:17 +00:00
video_track.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
video_track_source.cc Use SequenceChecker(SequenceChecker::kDetached) in a few places. 2023-03-24 07:44:18 +00:00
video_track_source.h Use SequenceChecker(SequenceChecker::kDetached) in a few places. 2023-03-24 07:44:18 +00:00
video_track_source_proxy.cc Make RtpTransceiver not inherit from RefCountedObject. 2022-03-18 16:17:24 +00:00
video_track_source_proxy.h Remove not-needed webrtc:: prefixes in pc/ 2023-11-13 13:23:04 +00:00
video_track_unittest.cc Move rtc::make_ref_counted to api/ 2022-06-15 09:47:38 +00:00
webrtc_sdp.cc sdp: tweak msid signaling further 2024-01-08 14:03:19 +00:00
webrtc_sdp.h Reland "Unify access to SDP codec parameters" 2024-01-03 12:03:11 +00:00
webrtc_sdp_unittest.cc sdp: tweak msid signaling further 2024-01-08 14:03:19 +00:00
webrtc_session_description_factory.cc Make CreateOffer/CreateAnswer return RTCErrorOr<SessionDescription> 2023-09-26 09:41:30 +00:00
webrtc_session_description_factory.h Use RTCError instead of string for PostCreateSessionDescriptionFailed 2023-09-18 15:23:38 +00:00