Add NV12 to libvpx wrappers output

Bug: webrtc:11956
Change-Id: Id8734b8f0fd87ac9b849d70b0c5764bf1ffd9c75
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/185300
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32225}
This commit is contained in:
Ilya Nikolaevskiy
2020-09-29 10:37:32 +02:00
committed by Commit Bot
parent de95329daa
commit b6f002b55f
7 changed files with 120 additions and 35 deletions

View File

@ -92,7 +92,10 @@ class H264DecoderImpl : public H264Decoder {
void ReportInit();
void ReportError();
VideoFrameBufferPool pool_;
// Used by ffmpeg via |AVGetBuffer2()| to allocate I420 images.
VideoFrameBufferPool ffmpeg_buffer_pool_;
// Used to allocate NV12 images if NV12 output is preferred.
VideoFrameBufferPool output_buffer_pool_;
std::unique_ptr<AVCodecContext, AVCodecContextDeleter> av_context_;
std::unique_ptr<AVFrame, AVFrameDeleter> av_frame_;
@ -102,6 +105,9 @@ class H264DecoderImpl : public H264Decoder {
bool has_reported_error_;
webrtc::H264BitstreamParser h264_bitstream_parser_;
// Decoder should produce this format if possible.
const VideoFrameBuffer::Type preferred_output_format_;
};
} // namespace webrtc