H264 enc wrapper requests IDR on every bitrate/framerate update |
|||
Issue descriptionThe wrapper sets encoding_parameters_changed_=true when bitrate or framerate is changed: https://cs.chromium.org/chromium/src/media/gpu/vaapi/vaapi_video_encode_accelerator.cc?rcl=9d05ec002dd34b7cb4b9d661aed08bbc70a7959d&l=773 This triggers IDR/keyframe request at encoding next frame: https://cs.chromium.org/chromium/src/media/gpu/vaapi/vaapi_video_encode_accelerator.cc?rcl=9d05ec002dd34b7cb4b9d661aed08bbc70a7959d&l=666 If framerate/bitrate changes frequently (this is what happen at beginning of call at least) sender produces a lot of IDRs. IDR is few times larger than regular P-frame. Large frames can overshoot network buffers and cause packet loss. Could we remove these IDR requests?
,
Apr 19 2018
Yes, I think it is fine to remove IDR requests for bitrate/framerate changes, assuming this is what the clients of RtcVideoEncoder (i.e. webrtc::VideoEncoder) expect. Please feel free to do so. Thank you.
,
May 4 2018
|
|||
►
Sign in to add a comment |
|||
Comment 1 by hiroh@chromium.org
, Apr 17 2018Owner: posciak@chromium.org