This is a follow-up to the VP9, fixing VP8 this time. Context again: This CL is part of Optimized Scaling efforts. In Chromium, the native frame buffer is getting an optimized CropAndScale() implementation. To support HW accelerated scaling, returning pre-scaled images and skipping unnecessary intermediate downscales, WebRTC needs to 1) use CropAndScale instead of libyuv::XXXXScale and 2) only map buffers it actually intends to encode. - To achieve this, WebRTC encoders are updated to map kNative video buffers so that in a follow-up CL VideoStreamEncoder can stop mapping intermediate buffer sizes. Bug: webrtc:12469, chromium:1157072 Change-Id: I026527ae77e36f66d02e149ad6fe304f6a8ccb05 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/212600 Commit-Queue: Henrik Boström <hbos@webrtc.org> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org> Reviewed-by: Evan Shrubsole <eshr@google.com> Cr-Commit-Position: refs/heads/master@{#33537} |
||
|---|---|---|
| .. | ||
| include | ||
| test | ||
| DEPS | ||
| libvpx_vp9_decoder.cc | ||
| libvpx_vp9_decoder.h | ||
| libvpx_vp9_encoder.cc | ||
| libvpx_vp9_encoder.h | ||
| svc_config_unittest.cc | ||
| svc_config.cc | ||
| svc_config.h | ||
| svc_rate_allocator.h | ||
| vp9_frame_buffer_pool.cc | ||
| vp9_frame_buffer_pool.h | ||
| vp9.cc | ||