webrtc/modules/video_coding
Qiang Chen a9329dbae2 Bug Fix: Peers Cannot Communicate If One With Stereo Codec, One Not
When Chromium hooks up with the stereo codec, then it has difficulty
communicating with a google chrome without stereo codec. By design, we
do allow codec choice for the standalone codecs, but the problem is
that we do not handle the payload correctly, and thus the existence
of stereo codec will remove the payload registry of the standalone
version of its associated codec. (For example, stereo codec on top of
VP9 will remove the payload registry of standalone VP9 codec.)

This CL fixes the issue. When generating payload data, we should use
"stereo" as payload name, instead of its associated codecs.


Bug: webrtc:8657
Change-Id: I9e0b54de6bd41d370b9353f9553c998e4049789f
Reviewed-on: https://webrtc-review.googlesource.com/33122
Reviewed-by: Emircan Uysaler <emircan@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Qiang Chen <qiangchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#21523}
2018-01-08 17:53:39 +00:00
..
codecs Android: Use scoped java refs 2017-12-20 15:46:06 +00:00
include Added WEBRTC_VIDEO_CODEC_OK_REQUEST_KEYFRAME decoder return code. 2017-12-19 14:57:41 +00:00
test Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
utility Optional: Use nullopt and implicit construction in /modules/video_coding 2017-11-24 18:36:09 +00:00
BUILD.gn Add untracked headers to video_coding. 2018-01-08 11:51:52 +00:00
codec_database.cc Reland "Add stereo codec header and pass it through RTP" 2017-11-30 01:44:19 +00:00
codec_database.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
codec_timer.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
codec_timer.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
decoding_state_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
decoding_state.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00
decoding_state.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
DEPS Including libyuv headers using fully qualified paths. 2017-12-11 15:51:26 +00:00
encoded_frame.cc Reland "Add stereo codec header and pass it through RTP" 2017-11-30 01:44:19 +00:00
encoded_frame.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
fec_rate_table.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
frame_buffer2_unittest.cc Move sequence_number_utils.h to rtc_base/ 2017-10-25 12:33:57 +00:00
frame_buffer2.cc Don't cast picture ids (of type int64_t) to int. 2017-12-14 14:22:13 +00:00
frame_buffer2.h Don't cast picture ids (of type int64_t) to int. 2017-12-14 14:22:13 +00:00
frame_buffer.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00
frame_buffer.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
frame_object.cc Reland "Add stereo codec header and pass it through RTP" 2017-11-30 01:44:19 +00:00
frame_object.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
generic_decoder.cc Optional: Use nullopt and implicit construction in /modules/video_coding 2017-11-24 18:36:09 +00:00
generic_decoder.h Reland "Update internal SW codecs to return unique_ptrs" 2017-11-13 14:23:58 +00:00
generic_encoder_unittest.cc In generic encoder ensure capture timestamp is preserved. 2017-11-17 16:06:17 +00:00
generic_encoder.cc In generic encoder ensure capture timestamp is preserved. 2017-11-17 16:06:17 +00:00
generic_encoder.h In generic encoder ensure capture timestamp is preserved. 2017-11-17 16:06:17 +00:00
h264_sprop_parameter_sets_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
h264_sprop_parameter_sets.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00
h264_sprop_parameter_sets.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
h264_sps_pps_tracker_unittest.cc Move SPS/PPS/IDR requirement from RtpFrameObject to PacketBuffer. 2017-11-06 12:04:46 +00:00
h264_sps_pps_tracker.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00
h264_sps_pps_tracker.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
histogram_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
histogram.cc Move sequence_number_utils.h to rtc_base/ 2017-10-25 12:33:57 +00:00
histogram.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
inter_frame_delay.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
inter_frame_delay.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
internal_defines.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
jitter_buffer_common.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
jitter_buffer_unittest.cc Remove unused mocks of process thread 2017-09-28 07:57:28 +00:00
jitter_buffer.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00
jitter_buffer.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
jitter_estimator_tests.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
jitter_estimator.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
jitter_estimator.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
media_opt_util.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
media_opt_util.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
media_optimization.cc Remove use of SetEncodingDataInternal in MediaOptimization. 2017-11-13 12:39:48 +00:00
media_optimization.h Remove use of SetEncodingDataInternal in MediaOptimization. 2017-11-13 12:39:48 +00:00
nack_fec_tables.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
nack_module_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
nack_module.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00
nack_module.h Move sequence_number_utils.h to rtc_base/ 2017-10-25 12:33:57 +00:00
OWNERS Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
packet_buffer.cc Fix off-by-one error when removing information about missing packet in PacketBuffer. 2017-12-06 12:15:42 +00:00
packet_buffer.h Move SPS/PPS/IDR requirement from RtpFrameObject to PacketBuffer. 2017-11-06 12:04:46 +00:00
packet.cc Reland "Add stereo codec header and pass it through RTP" 2017-11-30 01:44:19 +00:00
packet.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
protection_bitrate_calculator_unittest.cc Revert "Revert "Revert "Add ProtectionBitrateCalculator as an abstract class. ProtectionBitrateCalculatorDefault implements ProtectionBitrateCalculator. Register VideoSendStream to packet feedback""" 2017-12-21 12:26:31 +00:00
protection_bitrate_calculator.cc Revert "Revert "Revert "Add ProtectionBitrateCalculator as an abstract class. ProtectionBitrateCalculatorDefault implements ProtectionBitrateCalculator. Register VideoSendStream to packet feedback""" 2017-12-21 12:26:31 +00:00
protection_bitrate_calculator.h Revert "Revert "Revert "Add ProtectionBitrateCalculator as an abstract class. ProtectionBitrateCalculatorDefault implements ProtectionBitrateCalculator. Register VideoSendStream to packet feedback""" 2017-12-21 12:26:31 +00:00
qp_parser.cc Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
qp_parser.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
receiver_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
receiver.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00
receiver.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
rtp_frame_reference_finder_unittest.cc Calculate VP9 references to wrap at kPicIdLength instead of 16 bits. 2017-09-28 13:53:38 +00:00
rtp_frame_reference_finder.cc Don't cast picture ids (of type int64_t) to int. 2017-12-14 14:22:13 +00:00
rtp_frame_reference_finder.h Don't cast picture ids (of type int64_t) to int. 2017-12-14 14:22:13 +00:00
rtt_filter.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
rtt_filter.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
session_info_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
session_info.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00
session_info.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
timestamp_map.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
timestamp_map.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
timing_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
timing.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
timing.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
video_codec_initializer_unittest.cc Add optional stereo codec to SDP negotiation 2017-12-11 16:30:06 +00:00
video_codec_initializer.cc Bug Fix: Peers Cannot Communicate If One With Stereo Codec, One Not 2018-01-08 17:53:39 +00:00
video_coding_impl.cc Delete VCMSendStatisticsCallback and corresponding use of ProcessThread 2017-10-26 08:13:55 +00:00
video_coding_impl.h Delete VCMSendStatisticsCallback and corresponding use of ProcessThread 2017-10-26 08:13:55 +00:00
video_packet_buffer_unittest.cc Fix off-by-one error when removing information about missing packet in PacketBuffer. 2017-12-06 12:15:42 +00:00
video_receiver_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
video_receiver.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00
video_sender_unittest.cc Reland "Update internal SW codecs to return unique_ptrs" 2017-11-13 14:23:58 +00:00
video_sender.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00