class LinearBufferManager

Defined at line 41 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 43 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

void ~LinearBufferManager ()

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

void AddBuffer (const CodecBuffer * buffer)

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

void RecycleBuffer (const CodecBuffer * buffer)

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

void DeconfigureBuffers ()

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

scoped_refptr<VASurface> GetDPBSurface ()

Defined at line 78 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 117 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

void Reset ()

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

void StopAllWaits ()

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

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

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

bool NeedsKeyframeForBufferAllocation ()

Defined at line 338 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 341 of file ../../src/media/codec/codecs/vaapi/codec_adapter_vaapi_decoder.cc

void OnSurfaceGenerationUpdatedLocked (size_t num_of_surfaces)

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