arduino-audio-tools
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
DSFMetadata Struct Reference

Metadata structure for DSF (DSD Stream File) format. More...

#include <CodecDSF.h>

Inheritance diagram for DSFMetadata:
AudioInfo

Public Member Functions

 DSFMetadata ()=default
 
 DSFMetadata (int rate)
 
virtual void clear ()
 
void copyFrom (AudioInfo info)
 Same as set.
 
bool equals (AudioInfo alt)
 Returns true if alt values are the same like the current values.
 
bool equalsExSampleRate (AudioInfo alt)
 Checks if only the sample rate is different.
 
virtual void logInfo (const char *source="")
 
 operator bool ()
 Returns true if all components are defined (no component is 0)
 
bool operator!= (AudioInfo alt)
 Returns true if alt values are the different from the current values.
 
bool operator== (AudioInfo alt)
 Returns true if alt values are the same like the current values.
 
void set (AudioInfo info)
 Copies the values from info.
 
void setAudioInfo (AudioInfo info)
 Same as set.
 

Public Attributes

uint8_t bits_per_sample = DEFAULT_BITS_PER_SAMPLE
 Number of bits per sample (int16_t = 16 bits)
 
uint32_t block_size_per_channel = 4096
 DSF block size per channel in bytes (from file header, typically 4096)
 
uint16_t channels = DEFAULT_CHANNELS
 Number of channels: 2=stereo, 1=mono.
 
uint64_t dsd_data_bytes = 0
 Total size of DSD data in bytes (0 for streaming mode)
 
uint32_t dsd_sample_rate = 0
 DSD sample rate in Hz (e.g. 2822400 for DSD64, 5644800 for DSD128)
 
float duration_sec = 0
 Approximate audio duration in seconds.
 
float filter_cutoff = 0.45f
 Anti-aliasing filter cutoff as fraction of sample_rate (~0.45 = 90% of Nyquist at 44.1kHz)
 
int filter_stages = 3
 Number of cascaded Butterworth biquad filter stages (1-3), 0 to disable filtering.
 
bool is_raw = false
 When true, output de-interleaved DSD bitstream instead of converting to PCM.
 
int output_buffer_size = 2 * 1024
 PCM output buffer size in bytes (must be >= one frame)
 
uint64_t pcm_frames = 0
 Estimated number of PCM frames after DSD-to-PCM conversion.
 
sample_rate_t sample_rate = DEFAULT_SAMPLE_RATE
 Sample Rate: e.g 44100.
 

Detailed Description

Metadata structure for DSF (DSD Stream File) format.

Author
pschatzmann

Constructor & Destructor Documentation

◆ DSFMetadata() [1/2]

DSFMetadata ( )
default

◆ DSFMetadata() [2/2]

DSFMetadata ( int  rate)
inline

Member Function Documentation

◆ clear()

virtual void clear ( )
inlinevirtualinherited

◆ copyFrom()

void copyFrom ( AudioInfo  info)
inlineinherited

Same as set.

◆ equals()

bool equals ( AudioInfo  alt)
inlineinherited

Returns true if alt values are the same like the current values.

◆ equalsExSampleRate()

bool equalsExSampleRate ( AudioInfo  alt)
inlineinherited

Checks if only the sample rate is different.

◆ logInfo()

virtual void logInfo ( const char source = "")
inlinevirtualinherited

◆ operator bool()

operator bool ( )
inlineinherited

Returns true if all components are defined (no component is 0)

◆ operator!=()

bool operator!= ( AudioInfo  alt)
inlineinherited

Returns true if alt values are the different from the current values.

◆ operator==()

bool operator== ( AudioInfo  alt)
inlineinherited

Returns true if alt values are the same like the current values.

◆ set()

void set ( AudioInfo  info)
inlineinherited

Copies the values from info.

◆ setAudioInfo()

void setAudioInfo ( AudioInfo  info)
inlineinherited

Same as set.

Member Data Documentation

◆ bits_per_sample

uint8_t bits_per_sample = DEFAULT_BITS_PER_SAMPLE
inherited

Number of bits per sample (int16_t = 16 bits)

◆ block_size_per_channel

uint32_t block_size_per_channel = 4096

DSF block size per channel in bytes (from file header, typically 4096)

◆ channels

uint16_t channels = DEFAULT_CHANNELS
inherited

Number of channels: 2=stereo, 1=mono.

◆ dsd_data_bytes

uint64_t dsd_data_bytes = 0

Total size of DSD data in bytes (0 for streaming mode)

◆ dsd_sample_rate

uint32_t dsd_sample_rate = 0

DSD sample rate in Hz (e.g. 2822400 for DSD64, 5644800 for DSD128)

◆ duration_sec

float duration_sec = 0

Approximate audio duration in seconds.

◆ filter_cutoff

float filter_cutoff = 0.45f

Anti-aliasing filter cutoff as fraction of sample_rate (~0.45 = 90% of Nyquist at 44.1kHz)

◆ filter_stages

int filter_stages = 3

Number of cascaded Butterworth biquad filter stages (1-3), 0 to disable filtering.

◆ is_raw

bool is_raw = false

When true, output de-interleaved DSD bitstream instead of converting to PCM.

◆ output_buffer_size

int output_buffer_size = 2 * 1024

PCM output buffer size in bytes (must be >= one frame)

◆ pcm_frames

uint64_t pcm_frames = 0

Estimated number of PCM frames after DSD-to-PCM conversion.

◆ sample_rate

sample_rate_t sample_rate = DEFAULT_SAMPLE_RATE
inherited

Sample Rate: e.g 44100.


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