MythTV  master
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
AudioOutputGraph::AOBuffer Class Reference
Inheritance diagram for AudioOutputGraph::AOBuffer:
[legend]
Collaboration diagram for AudioOutputGraph::AOBuffer:
[legend]

Public Types

using Range = std::pair< std::chrono::milliseconds, std::chrono::milliseconds >
 

Public Member Functions

 AOBuffer ()=default
 
void SetMaxSamples (uint16_t Samples)
 
void SetSampleRate (uint16_t SampleRate)
 
int Channels () const
 
std::chrono::milliseconds Next () const
 
std::chrono::milliseconds First () const
 
Range Avail (std::chrono::milliseconds Timecode) const
 
int Samples (Range Available) const
 
void Empty ()
 
void Append (const void *Buffer, unsigned long Length, std::chrono::milliseconds Timecode, int Channels, int Bits)
 
const int16_t * Data16 (Range Available) const
 

Static Public Member Functions

static int BitsPerChannel ()
 

Protected Member Functions

uint BytesPerSample () const
 
unsigned Bytes2Samples (unsigned Bytes) const
 
std::chrono::milliseconds Samples2MS (unsigned Samples) const
 
int MS2Samples (std::chrono::milliseconds Msecs) const
 
void Append (const void *Buffer, unsigned long Length, int Bits)
 

Private Member Functions

void Resize (int Channels, int Bits)
 

Private Attributes

std::chrono::milliseconds m_tcFirst { 0ms }
 
std::chrono::milliseconds m_tcNext { 0ms }
 
uint16_t m_maxSamples { 0 }
 
uint16_t m_sampleRate { 44100 }
 
int m_bits { 0 }
 
int m_channels { 0 }
 
int m_sizeMax { 0 }
 

Detailed Description

Definition at line 27 of file audiooutputgraph.cpp.

Member Typedef Documentation

◆ Range

using AudioOutputGraph::AOBuffer::Range = std::pair<std::chrono::milliseconds, std::chrono::milliseconds>

Definition at line 39 of file audiooutputgraph.cpp.

Constructor & Destructor Documentation

◆ AOBuffer()

AudioOutputGraph::AOBuffer::AOBuffer ( )
default

Member Function Documentation

◆ SetMaxSamples()

void AudioOutputGraph::AOBuffer::SetMaxSamples ( uint16_t  Samples)
inline

Definition at line 32 of file audiooutputgraph.cpp.

Referenced by AudioOutputGraph::SetSampleCount().

◆ SetSampleRate()

void AudioOutputGraph::AOBuffer::SetSampleRate ( uint16_t  SampleRate)
inline

Definition at line 33 of file audiooutputgraph.cpp.

Referenced by AudioOutputGraph::SetSampleRate().

◆ BitsPerChannel()

static int AudioOutputGraph::AOBuffer::BitsPerChannel ( )
inlinestatic

Definition at line 34 of file audiooutputgraph.cpp.

Referenced by AudioOutputGraph::GetImage().

◆ Channels()

int AudioOutputGraph::AOBuffer::Channels ( ) const
inline

Definition at line 35 of file audiooutputgraph.cpp.

Referenced by AudioOutputGraph::GetImage().

◆ Next()

std::chrono::milliseconds AudioOutputGraph::AOBuffer::Next ( ) const
inline

Definition at line 36 of file audiooutputgraph.cpp.

Referenced by AudioOutputGraph::GetImage().

◆ First()

std::chrono::milliseconds AudioOutputGraph::AOBuffer::First ( ) const
inline

Definition at line 37 of file audiooutputgraph.cpp.

Referenced by AudioOutputGraph::GetImage().

◆ Avail()

Range AudioOutputGraph::AOBuffer::Avail ( std::chrono::milliseconds  Timecode) const
inline

Definition at line 40 of file audiooutputgraph.cpp.

Referenced by AudioOutputGraph::GetImage().

◆ Samples()

int AudioOutputGraph::AOBuffer::Samples ( Range  Available) const
inline

Definition at line 63 of file audiooutputgraph.cpp.

Referenced by AudioOutputGraph::GetImage().

◆ Empty()

void AudioOutputGraph::AOBuffer::Empty ( )
inline

Definition at line 68 of file audiooutputgraph.cpp.

Referenced by AudioOutputGraph::Reset().

◆ Append() [1/2]

void AudioOutputGraph::AOBuffer::Append ( const void *  Buffer,
unsigned long  Length,
std::chrono::milliseconds  Timecode,
int  Channels,
int  Bits 
)
inline

Definition at line 75 of file audiooutputgraph.cpp.

Referenced by AudioOutputGraph::add().

◆ Data16()

const int16_t* AudioOutputGraph::AOBuffer::Data16 ( Range  Available) const
inline

Definition at line 118 of file audiooutputgraph.cpp.

Referenced by AudioOutputGraph::GetImage().

◆ BytesPerSample()

uint AudioOutputGraph::AOBuffer::BytesPerSample ( ) const
inlineprotected

Definition at line 125 of file audiooutputgraph.cpp.

◆ Bytes2Samples()

unsigned AudioOutputGraph::AOBuffer::Bytes2Samples ( unsigned  Bytes) const
inlineprotected

Definition at line 130 of file audiooutputgraph.cpp.

◆ Samples2MS()

std::chrono::milliseconds AudioOutputGraph::AOBuffer::Samples2MS ( unsigned  Samples) const
inlineprotected

Definition at line 135 of file audiooutputgraph.cpp.

◆ MS2Samples()

int AudioOutputGraph::AOBuffer::MS2Samples ( std::chrono::milliseconds  Msecs) const
inlineprotected

Definition at line 140 of file audiooutputgraph.cpp.

◆ Append() [2/2]

void AudioOutputGraph::AOBuffer::Append ( const void *  Buffer,
unsigned long  Length,
int  Bits 
)
inlineprotected

Definition at line 145 of file audiooutputgraph.cpp.

◆ Resize()

void AudioOutputGraph::AOBuffer::Resize ( int  Channels,
int  Bits 
)
inlineprivate

Definition at line 184 of file audiooutputgraph.cpp.

Member Data Documentation

◆ m_tcFirst

std::chrono::milliseconds AudioOutputGraph::AOBuffer::m_tcFirst { 0ms }
private

Definition at line 193 of file audiooutputgraph.cpp.

◆ m_tcNext

std::chrono::milliseconds AudioOutputGraph::AOBuffer::m_tcNext { 0ms }
private

Definition at line 194 of file audiooutputgraph.cpp.

◆ m_maxSamples

uint16_t AudioOutputGraph::AOBuffer::m_maxSamples { 0 }
private

Definition at line 195 of file audiooutputgraph.cpp.

◆ m_sampleRate

uint16_t AudioOutputGraph::AOBuffer::m_sampleRate { 44100 }
private

Definition at line 196 of file audiooutputgraph.cpp.

◆ m_bits

int AudioOutputGraph::AOBuffer::m_bits { 0 }
private

Definition at line 197 of file audiooutputgraph.cpp.

◆ m_channels

int AudioOutputGraph::AOBuffer::m_channels { 0 }
private

Definition at line 198 of file audiooutputgraph.cpp.

◆ m_sizeMax

int AudioOutputGraph::AOBuffer::m_sizeMax { 0 }
private

Definition at line 199 of file audiooutputgraph.cpp.


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