StormByte C++ Library: Multimedia module 0.0.9999
StormByte-Multimedia is a StormByte library module for parsing configuration files
Loading...
Searching...
No Matches
StormByte::Multimedia::Registry Class Reference

Process-wide catalog of codecs and containers. More...

#include <StormByte/multimedia/registry.hxx>

Public Member Functions

 Registry (const Registry &)=delete
 Copy is disabled.
 Registry (Registry &&)=delete
 Move is disabled.
 ~Registry () noexcept=default
 Destructor.
Registry & operator= (const Registry &)=delete
 Copy assignment is disabled.
Registry & operator= (Registry &&)=delete
 Move assignment is disabled.
CodecRefs CodecList (Type type) const noexcept
 Codecs of one Type.
ContainerRefs ContainerList () const noexcept
 All loaded containers.
ExpectedCodec FindCodec (std::string_view name) const noexcept
 Looks up by StormByte name or FFmpeg codec id.
ExpectedContainer FindContainer (std::string_view name) const noexcept
 Looks up by StormByte name or FFmpeg format id.

Static Public Member Functions

static Registry & Instance () noexcept
 Process-wide instance.

Detailed Description

Process-wide catalog of codecs and containers.

First Instance() loads the private tables and probes FFmpeg.

Constructor & Destructor Documentation

◆ Registry() [1/2]

StormByte::Multimedia::Registry::Registry ( const Registry & )
delete

Copy is disabled.

◆ Registry() [2/2]

StormByte::Multimedia::Registry::Registry ( Registry && )
delete

Move is disabled.

◆ ~Registry()

StormByte::Multimedia::Registry::~Registry ( )
defaultnoexcept

Destructor.

Member Function Documentation

◆ CodecList()

CodecRefs StormByte::Multimedia::Registry::CodecList ( Type type) const
noexcept

Codecs of one Type.

Parameters
typeKind to list.
Returns
References into the registry storage.

◆ ContainerList()

ContainerRefs StormByte::Multimedia::Registry::ContainerList ( ) const
noexcept

All loaded containers.

Returns
References into the registry storage.

◆ FindCodec()

ExpectedCodec StormByte::Multimedia::Registry::FindCodec ( std::string_view name) const
noexcept

Looks up by StormByte name or FFmpeg codec id.

Parameters
nameKey (H.265 or hevc).
Returns
Codec or CodecNotFoundException.

◆ FindContainer()

ExpectedContainer StormByte::Multimedia::Registry::FindContainer ( std::string_view name) const
noexcept

Looks up by StormByte name or FFmpeg format id.

Parameters
nameKey (Matroska or matroska).
Returns
Container or ContainerNotFoundException.

◆ Instance()

Registry & StormByte::Multimedia::Registry::Instance ( )
staticnoexcept

Process-wide instance.

Returns
The singleton.

◆ operator=() [1/2]

Registry & StormByte::Multimedia::Registry::operator= ( const Registry & )
delete

Copy assignment is disabled.

Returns
*this.

◆ operator=() [2/2]

Registry & StormByte::Multimedia::Registry::operator= ( Registry && )
delete

Move assignment is disabled.

Returns
*this.

The documentation for this class was generated from the following file: