class LinearBufferManager

Defined at line 42 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

This class manages output buffers when the client selects a linear buffer output. Since the

output is linear the client will have to deswizzle the output from the decoded picture buffer

(DPB) meaning that we can't directly share the output with the client. The manager will be

responsible for creating the DPB surfaces used by the decoder and reconstructing them when a mid

stream configuration change is required. This buffer manager will also be responsible for copying

the output from the DBPs to the CodecBuffers the client provides us.

Public Methods

void LinearBufferManager (std::mutex & codec_lock, CodecFailureCallback failure_callback)

Defined at line 44 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

void ~LinearBufferManager ()

Defined at line 46 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

void AddBuffer (const CodecBuffer * buffer)

Defined at line 48 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

void RecycleBuffer (const CodecBuffer * buffer)

Defined at line 50 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

void DeconfigureBuffers ()

Defined at line 61 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

scoped_refptr<VASurface> GetDPBSurface ()

Defined at line 79 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

std::optional<std::pair<const CodecBuffer *, uint32_t>> ProcessOutputSurface (scoped_refptr<VASurface> va_surface)

Defined at line 118 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

void Reset ()

Defined at line 330 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

void StopAllWaits ()

Defined at line 332 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

gfx::Size GetRequiredSurfaceSize (const gfx::Size & picture_size)

Defined at line 334 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

bool NeedsKeyframeForBufferAllocation ()

Defined at line 339 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

Protected Methods

gfx::Size GetRequiredSurfaceSizeLocked (const gfx::Size & picture_size)

Defined at line 342 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

void OnSurfaceGenerationUpdatedLocked (size_t num_of_surfaces)

Defined at line 361 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc