arduino-audio-tools
All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Modules Pages
Public Member Functions | Public Attributes | List of all members
PitchShiftInfo Struct Reference

Configuration for PitchShiftOutput. More...

#include <PitchShift.h>

Inheritance diagram for PitchShiftInfo:
AudioInfo

Public Member Functions

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)
 
int buffer_size = 1000
 Size of the internal buffer used for pitch shifting (affects quality and latency)
 
uint16_t channels = DEFAULT_CHANNELS
 Number of channels: 2=stereo, 1=mono.
 
float pitch_shift = 1.4f
 Pitch shift factor: 1.0 = no change, >1.0 = higher pitch, <1.0 = lower pitch.
 
sample_rate_t sample_rate = DEFAULT_SAMPLE_RATE
 Sample Rate: e.g 44100.
 

Detailed Description

Configuration for PitchShiftOutput.

This structure contains all the parameters needed to configure pitch shifting. The pitch_shift parameter determines the amount of frequency shift applied to the audio. Values > 1.0 increase pitch (higher frequency), values < 1.0 decrease pitch (lower frequency). A value of 1.0 means no pitch change.

Note
The buffer_size affects the quality and latency of the pitch shifting. Larger buffers provide better quality but increase latency.

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