class CodecFactoryApp

Defined at line 25 of file ../../src/media/codec/factory/codec_factory_app.h

CodecFactoryApp is singleton per-process.

Public Methods

async_dispatcher_t * dispatcher ()

Defined at line 55 of file ../../src/media/codec/factory/codec_factory_app.h

const std::string & board_name ()

Defined at line 56 of file ../../src/media/codec/factory/codec_factory_app.h

CodecFactoryPolicy & policy ()

Defined at line 58 of file ../../src/media/codec/factory/codec_factory_app.h

void CodecFactoryApp (async_dispatcher_t * dispatcher, ProdOrTest prod_or_test)

board_name_ initialization requires startup_context_ already initialized.

policy_ initialization requires board_name_ already initialized.

Defined at line 155 of file ../../src/media/codec/factory/codec_factory_app.cc

const fuchsia::mediacodec::CodecFactoryPtr * FindHwCodec (fit::function<bool (const fuchsia::mediacodec::DetailedCodecDescription &)> is_match)

The caller must only call this on the FIDL thread, and the returned * is

only valid for use until the caller returns from the caller's work on the

FIDL thread. The caller must not stash the returned * beyond the caller's

return from the caller's work on the FIDL thread, as the next item of work

on the FIDL thread could ~CodecFactoryPtr or similar.

This method can return nullptr if a HW decoder isn't found...

Defined at line 278 of file ../../src/media/codec/factory/codec_factory_app.cc

std::optional<std::string> FindHwIsolate (fit::function<bool (const fuchsia::mediacodec::DetailedCodecDescription &)> is_match)

Defined at line 299 of file ../../src/media/codec/factory/codec_factory_app.cc

std::vector<fuchsia::mediacodec::CodecDescription> MakeCodecList ()

All of the current supported hardware and software decoders, randomly shuffled

so as to avoid clients depending on the order.

TODO(schottm): send encoders as well

Defined at line 211 of file ../../src/media/codec/factory/codec_factory_app.cc

std::vector<fuchsia::mediacodec::DetailedCodecDescription> MakeDetailedCodecDescriptions ()

Defined at line 242 of file ../../src/media/codec/factory/codec_factory_app.cc

Enumerations

enum ProdOrTest
Name Value
kProduction 0
kTesting 1

Defined at line 27 of file ../../src/media/codec/factory/codec_factory_app.h