StormByte C++ Library: Multimedia module 0.0.9999
StormByte-Multimedia is a StormByte library module for parsing configuration files
Loading...
Searching...
No Matches
Public Member Functions | List of all members
StormByte::Multimedia::Property::Audio Class Referencefinal

Per-stream audio properties. More...

#include <StormByte/multimedia/property/audio.hxx>

Public Member Functions

 Audio (ChannelLayout layout, std::uint32_t sample_rate, std::uint8_t channels, std::uint64_t bitrate=0, std::optional< std::string > profile=std::nullopt) noexcept
 Constructs audio properties.
 
 Audio (const Audio &)=default
 Copy constructor.
 
 Audio (Audio &&) noexcept=default
 Move constructor.
 
 ~Audio () noexcept=default
 Destructor.
 
Audiooperator= (const Audio &)=default
 Copy assignment.
 
Audiooperator= (Audio &&) noexcept=default
 Move assignment.
 
ChannelLayout Layout () const noexcept
 Speaker layout.
 
std::uint32_t SampleRate () const noexcept
 Sample rate in Hz.
 
std::uint8_t Channels () const noexcept
 Channel count.
 
std::uint64_t BitRate () const noexcept
 Bitrate in bits per second.
 
const std::optional< std::string > & Profile () const noexcept
 Codec profile name, if present.
 

Detailed Description

Per-stream audio properties.

Constructor & Destructor Documentation

◆ Audio() [1/3]

StormByte::Multimedia::Property::Audio::Audio ( ChannelLayout  layout,
std::uint32_t  sample_rate,
std::uint8_t  channels,
std::uint64_t  bitrate = 0,
std::optional< std::string >  profile = std::nullopt 
)
noexcept

Constructs audio properties.

Parameters
layoutSpeaker layout.
sample_rateSample rate in Hz.
channelsChannel count.
bitrateBitrate in bits per second (0 if unknown).
profileOptional codec profile name.

◆ Audio() [2/3]

StormByte::Multimedia::Property::Audio::Audio ( const Audio )
default

Copy constructor.

◆ Audio() [3/3]

StormByte::Multimedia::Property::Audio::Audio ( Audio &&  )
defaultnoexcept

Move constructor.

◆ ~Audio()

StormByte::Multimedia::Property::Audio::~Audio ( )
defaultnoexcept

Destructor.

Member Function Documentation

◆ BitRate()

std::uint64_t StormByte::Multimedia::Property::Audio::BitRate ( ) const
noexcept

Bitrate in bits per second.

Returns
Bitrate, or 0 if unknown.

◆ Channels()

std::uint8_t StormByte::Multimedia::Property::Audio::Channels ( ) const
noexcept

Channel count.

Returns
Channel count.

◆ Layout()

ChannelLayout StormByte::Multimedia::Property::Audio::Layout ( ) const
noexcept

Speaker layout.

Returns
Layout.

◆ operator=() [1/2]

Audio & StormByte::Multimedia::Property::Audio::operator= ( Audio &&  )
defaultnoexcept

Move assignment.

Returns
*this.

◆ operator=() [2/2]

Audio & StormByte::Multimedia::Property::Audio::operator= ( const Audio )
default

Copy assignment.

Returns
*this.

◆ Profile()

const std::optional< std::string > & StormByte::Multimedia::Property::Audio::Profile ( ) const
noexcept

Codec profile name, if present.

Returns
Profile, or empty.

◆ SampleRate()

std::uint32_t StormByte::Multimedia::Property::Audio::SampleRate ( ) const
noexcept

Sample rate in Hz.

Returns
Sample rate.

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