VLC  4.0.0-dev
Data Structures | Macros | Typedefs | Enumerations | Functions
aout_internal.h File Reference
Include dependency graph for aout_internal.h:

Go to the source code of this file.

Data Structures

struct  aout_owner_t
 
struct  aout_instance_t
 

Macros

#define AOUT_MAX_INPUT_RATE   (4)
 
#define aout_volume_New(o, g)   aout_volume_New(VLC_OBJECT(o), g)
 
#define aout_New(a)   aout_New(VLC_OBJECT(a))
 
#define aout_FormatsPrint(o, t, a, b)   aout_FormatsPrint(VLC_OBJECT(o), t, a, b)
 
#define AOUT_DEC_SUCCESS   0
 
#define AOUT_DEC_CHANGED   1
 
#define AOUT_DEC_FAILED   VLC_EGENERIC
 

Typedefs

typedef struct aout_volume aout_volume_t
 
typedef struct aout_dev aout_dev_t
 

Enumerations

enum  { AOUT_RESAMPLING_NONE =0, AOUT_RESAMPLING_UP, AOUT_RESAMPLING_DOWN }
 

Functions

static aout_owner_taout_owner (audio_output_t *aout)
 
aout_volume_taout_volume_New (vlc_object_t *, const audio_replay_gain_t *)
 Creates a software amplifier. More...
 
int aout_volume_SetFormat (aout_volume_t *, vlc_fourcc_t)
 Selects the current sample format for software amplification. More...
 
void aout_volume_SetVolume (aout_volume_t *, float)
 
int aout_volume_Amplify (aout_volume_t *, block_t *)
 Applies replay gain and software volume to an audio buffer. More...
 
void aout_volume_Delete (aout_volume_t *)
 Destroys a software amplifier. More...
 
audio_output_taout_New (vlc_object_t *)
 Creates an audio output object and initializes an output module. More...
 
void aout_Destroy (audio_output_t *)
 Deinitializes an audio output module and destroys an audio output object. More...
 
int aout_OutputNew (audio_output_t *)
 Starts an audio output stream. More...
 
void aout_OutputDelete (audio_output_t *p_aout)
 Stops the audio output stream (undoes aout_OutputNew()). More...
 
void aout_FormatsPrint (vlc_object_t *, const char *, const audio_sample_format_t *, const audio_sample_format_t *)
 Prints two formats in a human-readable form. More...
 
int aout_DecNew (audio_output_t *, const audio_sample_format_t *, int profile, struct vlc_clock_t *clock, const audio_replay_gain_t *)
 Creates an audio output. More...
 
void aout_DecDelete (audio_output_t *)
 Stops all plugins involved in the audio output. More...
 
int aout_DecPlay (audio_output_t *aout, block_t *block)
 
void aout_DecGetResetStats (audio_output_t *, unsigned *, unsigned *)
 
void aout_DecChangePause (audio_output_t *, bool b_paused, vlc_tick_t i_date)
 
void aout_DecChangeRate (audio_output_t *aout, float rate)
 
void aout_DecChangeDelay (audio_output_t *aout, vlc_tick_t delay)
 
void aout_DecFlush (audio_output_t *)
 
void aout_DecDrain (audio_output_t *)
 
void aout_RequestRestart (audio_output_t *, unsigned)
 Marks the audio output for restart, to update any parameter of the output plug-in (e.g. More...
 
void aout_RequestRetiming (audio_output_t *aout, vlc_tick_t system_ts, vlc_tick_t audio_ts)
 
static void aout_InputRequestRestart (audio_output_t *aout)
 
static void aout_SetWavePhysicalChannels (audio_sample_format_t *fmt)
 
aout_filters_taout_FiltersNewWithClock (vlc_object_t *, const vlc_clock_t *, const audio_sample_format_t *, const audio_sample_format_t *, const aout_filters_cfg_t *cfg)
 
void aout_FiltersResetClock (aout_filters_t *filters)
 
void aout_FiltersSetClockDelay (aout_filters_t *filters, vlc_tick_t delay)
 
bool aout_FiltersCanResample (aout_filters_t *filters)
 

Macro Definition Documentation

◆ AOUT_DEC_CHANGED

#define AOUT_DEC_CHANGED   1

◆ AOUT_DEC_FAILED

#define AOUT_DEC_FAILED   VLC_EGENERIC

◆ AOUT_DEC_SUCCESS

#define AOUT_DEC_SUCCESS   0

Referenced by aout_CheckReady().

◆ aout_FormatsPrint

#define aout_FormatsPrint (   o,
  t,
  a,
 
)    aout_FormatsPrint(VLC_OBJECT(o), t, a, b)

◆ AOUT_MAX_INPUT_RATE

#define AOUT_MAX_INPUT_RATE   (4)

◆ aout_New

#define aout_New (   a)    aout_New(VLC_OBJECT(a))

Referenced by input_resource_GetAout().

◆ aout_volume_New

#define aout_volume_New (   o,
 
)    aout_volume_New(VLC_OBJECT(o), g)

Referenced by aout_DecNew(), and aout_owner().

Typedef Documentation

◆ aout_dev_t

typedef struct aout_dev aout_dev_t

◆ aout_volume_t

typedef struct aout_volume aout_volume_t

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
AOUT_RESAMPLING_NONE 
AOUT_RESAMPLING_UP 
AOUT_RESAMPLING_DOWN 

Function Documentation

◆ aout_DecChangeDelay()

void aout_DecChangeDelay ( audio_output_t aout,
vlc_tick_t  delay 
)

◆ aout_DecChangePause()

void aout_DecChangePause ( audio_output_t ,
bool  b_paused,
vlc_tick_t  i_date 
)

◆ aout_DecChangeRate()

void aout_DecChangeRate ( audio_output_t aout,
float  rate 
)

◆ aout_DecDelete()

void aout_DecDelete ( audio_output_t )

◆ aout_DecDrain()

void aout_DecDrain ( audio_output_t )

◆ aout_DecFlush()

void aout_DecFlush ( audio_output_t )

◆ aout_DecGetResetStats()

void aout_DecGetResetStats ( audio_output_t ,
unsigned *  ,
unsigned *   
)

◆ aout_DecNew()

int aout_DecNew ( audio_output_t ,
const audio_sample_format_t ,
int  profile,
struct vlc_clock_t clock,
const audio_replay_gain_t  
)

◆ aout_DecPlay()

int aout_DecPlay ( audio_output_t aout,
block_t block 
)

◆ aout_Destroy()

void aout_Destroy ( audio_output_t )

◆ aout_FiltersCanResample()

bool aout_FiltersCanResample ( aout_filters_t filters)

◆ aout_FiltersNewWithClock()

aout_filters_t* aout_FiltersNewWithClock ( vlc_object_t ,
const vlc_clock_t ,
const audio_sample_format_t ,
const audio_sample_format_t ,
const aout_filters_cfg_t cfg 
)

◆ aout_FiltersResetClock()

void aout_FiltersResetClock ( aout_filters_t filters)

◆ aout_FiltersSetClockDelay()

void aout_FiltersSetClockDelay ( aout_filters_t filters,
vlc_tick_t  delay 
)

◆ aout_FormatsPrint()

void aout_FormatsPrint ( vlc_object_t ,
const char *  ,
const audio_sample_format_t ,
const audio_sample_format_t  
)

Prints two formats in a human-readable form.

References aout_FormatPrintChannels(), audio_format_t::i_format, audio_format_t::i_rate, and msg_Dbg.

◆ aout_InputRequestRestart()

static void aout_InputRequestRestart ( audio_output_t aout)
inlinestatic

◆ aout_New()

audio_output_t* aout_New ( vlc_object_t )

◆ aout_OutputDelete()

void aout_OutputDelete ( audio_output_t aout)

Stops the audio output stream (undoes aout_OutputNew()).

Note
This can only be called after a successful aout_OutputNew().
Warning
The caller must NOT hold the audio output lock.

References aout_owner(), aout_owner_t::lock, audio_output::stop, vlc_mutex_lock(), and vlc_mutex_unlock().

Referenced by aout_CheckReady(), aout_DecDelete(), and aout_DecNew().

◆ aout_OutputNew()

int aout_OutputNew ( audio_output_t aout)

◆ aout_owner()

static aout_owner_t* aout_owner ( audio_output_t aout)
inlinestatic

◆ aout_RequestRestart()

void aout_RequestRestart ( audio_output_t aout,
unsigned  mode 
)

Marks the audio output for restart, to update any parameter of the output plug-in (e.g.

output device or channel mapping).

References aout_owner(), msg_Dbg, and aout_owner_t::restart.

Referenced by aout_InputRequestRestart(), and aout_RestartNotify().

◆ aout_RequestRetiming()

void aout_RequestRetiming ( audio_output_t aout,
vlc_tick_t  system_ts,
vlc_tick_t  audio_ts 
)

◆ aout_SetWavePhysicalChannels()

static void aout_SetWavePhysicalChannels ( audio_sample_format_t fmt)
inlinestatic

◆ aout_volume_Amplify()

int aout_volume_Amplify ( aout_volume_t ,
block_t  
)

Applies replay gain and software volume to an audio buffer.

References audio_volume::amplify, aout_volume::gain_factor, aout_volume::module, aout_volume::object, aout_volume::output_factor, and unlikely.

Referenced by aout_DecPlay().

◆ aout_volume_Delete()

void aout_volume_Delete ( aout_volume_t )

◆ aout_volume_New()

aout_volume_t* aout_volume_New ( vlc_object_t ,
const audio_replay_gain_t  
)

◆ aout_volume_SetFormat()

int aout_volume_SetFormat ( aout_volume_t ,
vlc_fourcc_t   
)

Selects the current sample format for software amplification.

References audio_volume::format, aout_volume::module, module_need, module_unneed, msg_Dbg, aout_volume::object, and unlikely.

Referenced by aout_CheckReady(), and aout_DecNew().

◆ aout_volume_SetVolume()

void aout_volume_SetVolume ( aout_volume_t ,
float   
)

References aout_volume::output_factor, and unlikely.

Referenced by aout_GainNotify().