vitasdk
Documentation of the vitasdk
audioenc.h
Go to the documentation of this file.
1 
7 #ifndef _PSP2_AUDIOENC_H_
8 #define _PSP2_AUDIOENC_H_
9 
10 #include <vitasdk/build_utils.h>
11 #include <psp2/types.h>
12 #include <stdint.h>
13 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 
18 typedef enum SceAudioencErrorCode {
36 
40 
41 #define SCE_AUDIOENC_WORD_LENGTH_16BITS 16
42 #define SCE_AUDIOENC_TYPE_CELP 0x2006U
43 #define SCE_AUDIOENC_CELP_MAX_STREAMS 1
44 #define SCE_AUDIOENC_CELP_MAX_SAMPLES 320
45 #define SCE_AUDIOENC_CELP_MAX_ES_SIZE 24
46 #define SCE_AUDIOENC_CELP_MPE (0)
47 #define SCE_AUDIOENC_CELP_SAMPLING_RATE_8KHZ (8000)
48 
49 typedef enum SceAudioencCelpBitrate {
61 
65  unsigned int totalStreams;
68 
70 typedef struct SceAudioencInfoCelp {
72  unsigned int excitationMode;
73  unsigned int samplingRate;
74  unsigned int bitRate;
77 
79 typedef struct SceAudioencOptInfoCelp {
81  uint8_t header[32];
83  unsigned int encoderVersion;
86 
88 typedef union SceAudioencInitParam {
93 
95 typedef union SceAudioencInfo {
100 
102 typedef union SceAudioencOptInfo {
107 
108 typedef struct SceAudioencCtrl {
110  int handle;
111  void *pInputPcm;
114  void *pOutputEs;
122 
123 int sceAudioencInitLibrary(int codecType, SceAudioencInitParam *pInitParam);
124 int sceAudioencTermLibrary(unsigned int codecType);
125 int sceAudioencCreateEncoder(SceAudioencCtrl *pCtrl, int codecType);
130 int sceAudioencGetInternalError(SceAudioencCtrl *pCtrl, int *pInternalError);
131 
132 #ifdef __cplusplus
133 }
134 #endif
135 
136 #endif /* _PSP2_AUDIOENC_H_ */
SceSize size
sizeof(SceAudioencOptInfoCelp)
Definition: audioenc.h:80
SceSize wordLength
PCM bit depth.
Definition: audioenc.h:117
void * pInputPcm
Pointer to elementary stream.
Definition: audioenc.h:111
unsigned int bitRate
Bit rate (one of SceAudioencCelpBitrate)
Definition: audioenc.h:74
int sceAudioencDeleteEncoder(SceAudioencCtrl *pCtrl)
SceAudioencInfo * pInfo
Pointer to SceAudioencInfo.
Definition: audioenc.h:118
SceAudioencInitStreamParam celp
See SceAudioencInitStreamParam.
Definition: audioenc.h:90
int sceAudioencGetInternalError(SceAudioencCtrl *pCtrl, int *pInternalError)
int sceAudioencInitLibrary(int codecType, SceAudioencInitParam *pInitParam)
SceSize headerSize
Header size.
Definition: audioenc.h:82
VITASDK_BUILD_ASSERT_EQ(8, SceAudioencInitStreamParam)
SceAudioencErrorCode
Definition: audioenc.h:18
int sceAudioencEncode(SceAudioencCtrl *pCtrl)
SceAudioencCelpBitrate
Definition: audioenc.h:49
SceSize maxEsSize
Max size of PCM output (in byte)
Definition: audioenc.h:116
SceSize size
sizeof(SceAudioencInitParam)
Definition: audioenc.h:89
SceSize outputEsSize
Size of PCM output actually (in byte)
Definition: audioenc.h:115
SceAudioencOptInfo * pOptInfo
Pointer to SceAudioencOptInfo.
Definition: audioenc.h:119
SceSize size
sizeof(SceAudioencInfo)
Definition: audioenc.h:96
unsigned int totalStreams
Total number of audio streams.
Definition: audioenc.h:65
SceSize size
sizeof(SceAudioencCtrl)
Definition: audioenc.h:109
SceSize size
sizeof(SceAudioencInitStreamParam)
Definition: audioenc.h:64
int sceAudioencGetOptInfo(SceAudioencCtrl *pCtrl)
SceAudioencInfoCelp celp
Information structure for CELP.
Definition: audioenc.h:97
int sceAudioencClearContext(SceAudioencCtrl *pCtrl)
SceSize size
sizeof(SceAudioencInfoCelp)
Definition: audioenc.h:71
unsigned int encoderVersion
Encoder version.
Definition: audioenc.h:83
unsigned int samplingRate
Sampling rate.
Definition: audioenc.h:73
void * pOutputEs
Pointer to PCM.
Definition: audioenc.h:114
SceAudioencOptInfoCelp celp
Optional information structure for CELP.
Definition: audioenc.h:104
int sceAudioencCreateEncoder(SceAudioencCtrl *pCtrl, int codecType)
SceSize maxPcmSize
Max size of elementary stream used (in byte)
Definition: audioenc.h:113
uint8_t header[32]
Header buffer.
Definition: audioenc.h:81
int handle
Encoder handle.
Definition: audioenc.h:110
SceSize size
sizeof(SceAudioencOptInfo)
Definition: audioenc.h:103
int sceAudioencTermLibrary(unsigned int codecType)
SceAudioencCelpErrorCode
Definition: audioenc.h:37
unsigned int excitationMode
Excitation mode.
Definition: audioenc.h:72
SceSize inputPcmSize
Size of elementary stream used actually (in byte)
Definition: audioenc.h:112
@ SCE_AUDIOENC_ERROR_INVALID_SIZE
Definition: audioenc.h:32
@ SCE_AUDIOENC_ERROR_A_HANDLE_IN_USE
Definition: audioenc.h:25
@ SCE_AUDIOENC_ERROR_ALL_HANDLES_IN_USE
Definition: audioenc.h:26
@ SCE_AUDIOENC_ERROR_CH_SHORTAGE
Definition: audioenc.h:30
@ SCE_AUDIOENC_ERROR_INVALID_WORD_LENGTH
Definition: audioenc.h:31
@ SCE_AUDIOENC_ERROR_INVALID_TYPE
Definition: audioenc.h:20
@ SCE_AUDIOENC_ERROR_INVALID_HANDLE
Definition: audioenc.h:28
@ SCE_AUDIOENC_ERROR_ALREADY_INITIALIZED
Definition: audioenc.h:22
@ SCE_AUDIOENC_ERROR_NOT_HANDLE_IN_USE
Definition: audioenc.h:29
@ SCE_AUDIOENC_ERROR_UNSUPPORTED
Definition: audioenc.h:34
@ SCE_AUDIOENC_ERROR_OUT_OF_MEMORY
Definition: audioenc.h:23
@ SCE_AUDIOENC_ERROR_INVALID_ALIGNMENT
Definition: audioenc.h:33
@ SCE_AUDIOENC_ERROR_INVALID_PTR
Definition: audioenc.h:27
@ SCE_AUDIOENC_ERROR_INVALID_INIT_PARAM
Definition: audioenc.h:21
@ SCE_AUDIOENC_ERROR_NOT_INITIALIZED
Definition: audioenc.h:24
@ SCE_AUDIOENC_ERROR_API_FAIL
Definition: audioenc.h:19
@ SCE_AUDIOENC_CELP_BIT_RATE_4650BPS
Definition: audioenc.h:51
@ SCE_AUDIOENC_CELP_BIT_RATE_10700BPS
Definition: audioenc.h:57
@ SCE_AUDIOENC_CELP_BIT_RATE_11800BPS
Definition: audioenc.h:58
@ SCE_AUDIOENC_CELP_BIT_RATE_7300BPS
Definition: audioenc.h:54
@ SCE_AUDIOENC_CELP_BIT_RATE_8700BPS
Definition: audioenc.h:55
@ SCE_AUDIOENC_CELP_BIT_RATE_9900BPS
Definition: audioenc.h:56
@ SCE_AUDIOENC_CELP_BIT_RATE_12200BPS
Definition: audioenc.h:59
@ SCE_AUDIOENC_CELP_BIT_RATE_6600BPS
Definition: audioenc.h:53
@ SCE_AUDIOENC_CELP_BIT_RATE_3850BPS
Definition: audioenc.h:50
@ SCE_AUDIOENC_CELP_BIT_RATE_5700BPS
Definition: audioenc.h:52
@ SCE_AUDIOENC_CELP_ERROR_INVALID_CONFIG
Definition: audioenc.h:38
Definition: audioenc.h:108
Information structure for CELP.
Definition: audioenc.h:70
Initialization structure to provide to SceAudioencInitParam.
Definition: audioenc.h:63
Optional information structure for CELP.
Definition: audioenc.h:79
Audio encoder info.
Definition: audioenc.h:95
Initialization structure to pass as argument to sceAudioencInitLibrary.
Definition: audioenc.h:88
Audio encoder optional info.
Definition: audioenc.h:102
unsigned int SceSize
Definition: types.h:56