libnx  v4.6.0
Data Structures | Macros | Enumerations | Functions
audren.h File Reference

Audio renderer service. More...

#include "../types.h"
#include "../audio/audio.h"
#include "../sf/service.h"

Go to the source code of this file.

Data Structures

struct  AudioRendererConfig
 
struct  AudioRendererUpdateDataHeader
 
struct  AudioRendererBehaviorInfoIn
 
struct  AudioRendererBehaviorInfoOut
 
struct  AudioRendererMemPoolInfoIn
 
struct  AudioRendererMemPoolInfoOut
 
struct  AudioRendererChannelInfoIn
 
struct  AudioRendererBiquadFilter
 
struct  AudioRendererAdpcmParameters
 
struct  AudioRendererAdpcmContext
 
struct  AudioRendererWaveBuf
 
struct  AudioRendererVoiceInfoIn
 
struct  AudioRendererVoiceInfoOut
 
struct  AudioRendererMixInfoIn
 
struct  AudioRendererDownMixParameters
 
struct  AudioRendererDeviceSinkInfoIn
 
struct  AudioRendererCircularBufferSinkInfoIn
 
struct  AudioRendererSinkInfoIn
 
struct  AudioRendererSinkInfoOut
 
struct  AudioRendererPerformanceBufferInfoIn
 
struct  AudioRendererPerformanceBufferInfoOut
 

Macros

#define AUDREN_TIMER_FREQ_HZ   200.0f
 
#define AUDREN_TIMER_PERIOD_MS   5.0f
 
#define AUDREN_SAMPLES_PER_FRAME_32KHZ   160
 
#define AUDREN_SAMPLES_PER_FRAME_48KHZ   240
 
#define AUDREN_INPUT_PARAM_ALIGNMENT   0x1000
 
#define AUDREN_OUTPUT_PARAM_ALIGNMENT   0x10
 
#define AUDREN_MEMPOOL_ALIGNMENT   0x1000
 
#define AUDREN_BUFFER_ALIGNMENT   0x40
 
#define AUDREN_REVISION_1   0x31564552
 
#define AUDREN_REVISION_2   0x32564552
 
#define AUDREN_REVISION_3   0x33564552
 
#define AUDREN_REVISION_4   0x34564552
 
#define AUDREN_REVISION_5   0x35564552
 
#define AUDREN_REVISION_6   0x36564552
 
#define AUDREN_NODEID(_a, _b, _c)   ((((u32)(_a) & 0xF) << 28) | (((u32)(_b) & 0xFFF) << 16) | ((u32)(_c) & 0xFFFF))
 
#define AUDREN_FINAL_MIX_ID   0
 
#define AUDREN_UNUSED_MIX_ID   0x7FFFFFFF
 
#define AUDREN_UNUSED_SPLITTER_ID   0xFFFFFFFF
 
#define AUDREN_DEFAULT_DEVICE_NAME   "MainAudioOut"
 

Enumerations

enum  AudioRendererOutputRate {
  AudioRendererOutputRate_32kHz ,
  AudioRendererOutputRate_48kHz
}
 
enum  AudioRendererMemPoolState {
  AudioRendererMemPoolState_Invalid ,
  AudioRendererMemPoolState_New ,
  AudioRendererMemPoolState_RequestDetach ,
  AudioRendererMemPoolState_Detached ,
  AudioRendererMemPoolState_RequestAttach ,
  AudioRendererMemPoolState_Attached ,
  AudioRendererMemPoolState_Released
}
 
enum  AudioRendererVoicePlayState {
  AudioRendererVoicePlayState_Started ,
  AudioRendererVoicePlayState_Stopped ,
  AudioRendererVoicePlayState_Paused
}
 
enum  AudioRendererSinkType {
  AudioRendererSinkType_Invalid ,
  AudioRendererSinkType_Device ,
  AudioRendererSinkType_CircularBuffer
}
 

Functions

static u32 audrenGetRevision (void)
 
static int audrenGetMemPoolCount (const AudioRendererConfig *config)
 
static size_t audrenGetInputParamSize (const AudioRendererConfig *config)
 
static size_t audrenGetOutputParamSize (const AudioRendererConfig *config)
 
Result audrenInitialize (const AudioRendererConfig *config)
 Initialize audren.
 
void audrenExit (void)
 Exit audren.
 
ServiceaudrenGetServiceSession_AudioRenderer (void)
 Gets the Service object for IAudioRenderer.
 
void audrenWaitFrame (void)
 
Result audrenGetState (u32 *out_state)
 
Result audrenRequestUpdateAudioRenderer (const void *in_param_buf, size_t in_param_buf_size, void *out_param_buf, size_t out_param_buf_size, void *perf_buf, size_t perf_buf_size)
 
Result audrenStartAudioRenderer (void)
 
Result audrenStopAudioRenderer (void)
 
Result audrenSetAudioRendererRenderingTimeLimit (int percent)
 

Detailed Description

Audio renderer service.

Author
fincs