webrtc/modules/video_coding/codecs/h264
Byoungchan Lee 11376fb992 Reset H.264 SVC Controller on key frame
Sometimes OpenH264 returns a key frame even though we have not
requested one. However, SVC controller does not know about this
and will not reset its state. Since we are comparing expected tid
from SVC controller with actual tid from OpenH264, and drop frames
if they do not match, that causes a missing frame.

This CL resets the SVC controller state on key frames, ensuring
that it accurately maintains its state and does not drop frames.
Also, changes the message of the error log to be more descriptive.
Now, it will print the expected tid and actual tid.

Bug: webrtc:14877
Change-Id: I6c9e7532b2478773f03e5707bf7a1ca56e4f7b99
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/324001
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40972}
2023-10-19 09:51:14 +00:00
..
include Add H264Encoder::Create() 2023-06-02 17:40:26 +00:00
test Remove EncodedFrame::MissingFrame and start removing Decode() param 2023-08-30 10:38:35 +00:00
DEPS Support more H264 profiles for internal software codec 2017-10-06 14:28:44 +00:00
h264.cc Add H264Encoder::Create() 2023-06-02 17:40:26 +00:00
h264_color_space.cc Use preprocessor to strip H264 implementation. 2019-05-24 11:33:07 +00:00
h264_color_space.h Use preprocessor to strip H264 implementation. 2019-05-24 11:33:07 +00:00
h264_decoder_impl.cc Rename EncodedImage property Timetamp to RtpTimestamp 2023-09-24 20:06:48 +00:00
h264_decoder_impl.h Remove WebRTC-NV12Decode field trial 2022-08-19 08:57:34 +00:00
h264_encoder_impl.cc Reset H.264 SVC Controller on key frame 2023-10-19 09:51:14 +00:00
h264_encoder_impl.h Enable multithreaded OpenH264 encoding behind field trial 2023-02-22 14:26:33 +00:00
h264_encoder_impl_unittest.cc Remove references to AudioCodec and VideoCodec constructors 2023-06-05 23:23:40 +00:00
h264_simulcast_unittest.cc Add H264Encoder::Create() 2023-06-02 17:40:26 +00:00
OWNERS Update codecs/h264 owners. 2019-04-04 10:21:32 +00:00