157 WUT_UNKNOWN_BYTES(0x8);
171 WUT_CHECK_OFFSET(
AXVoice, 0x0, index);
172 WUT_CHECK_OFFSET(
AXVoice, 0x4, state);
173 WUT_CHECK_OFFSET(
AXVoice, 0x8, volume);
174 WUT_CHECK_OFFSET(
AXVoice, 0xc, renderer);
175 WUT_CHECK_OFFSET(
AXVoice, 0x10, link);
176 WUT_CHECK_OFFSET(
AXVoice, 0x18, cbNext);
177 WUT_CHECK_OFFSET(
AXVoice, 0x1c, priority);
178 WUT_CHECK_OFFSET(
AXVoice, 0x20, callback);
179 WUT_CHECK_OFFSET(
AXVoice, 0x24, userContext);
180 WUT_CHECK_OFFSET(
AXVoice, 0x28, syncBits);
181 WUT_CHECK_OFFSET(
AXVoice, 0x34, offsets);
182 WUT_CHECK_OFFSET(
AXVoice, 0x48, callbackEx);
183 WUT_CHECK_OFFSET(
AXVoice, 0x4c, callbackReason);
184 WUT_CHECK_OFFSET(
AXVoice, 0x50, unk0);
185 WUT_CHECK_OFFSET(
AXVoice, 0x54, unk1);
235 #pragma pack(push, 1)
250 WUT_CHECK_OFFSET(
AXVoiceSrc, 0x4, currentOffsetFrac);
251 WUT_CHECK_OFFSET(
AXVoiceSrc, 0x6, lastSample);
283 const void *samples);
320 const void *samples);
333 const void *samples);
uint32_t AXDeviceType
A value from enum AX_DEVICE_TYPE.
int32_t AXResult
A value from enum AX_RESULT.
AXVoiceState state
Current play state of this voice.
AXVoiceLoop loopingEnabled
uint32_t ratio
Playback rate, fixed 16.16.
AXVoiceDeviceBusMixData bus[4]
AXVoiceOffsets offsets
The current offset data!
AXVoice * cbNext
A link to the next callback to invoke.
uint16_t currentOffsetFrac
Used by the resampler, fixed 0.16.
AXVoiceCallbackExFn callbackEx
An extended version of the callback above.
AXVoiceCallbackFn callback
The callback to call if this is force-free'd by another acquire.
uint32_t priority
The priority of this voice used for force-acquiring a voice.
uint32_t syncBits
A bitfield representing different things needing to be synced.
AXVoiceLink link
this is a link used in the stack, we do this in host-memory currently
uint32_t index
The index of this voice out of the total voices.
AXVoiceRenderer renderer
The renderer to use for this voice.
uint32_t volume
Current volume of this voice.
uint32_t callbackReason
The reason for the callback being invoked.
void * userContext
The user context to send to the callbacks.
uint32_t AXGetMaxVoices()
void AXSetVoiceVe(AXVoice *voice, AXVoiceVeData *veData)
AXVoice * AXAcquireVoice(uint32_t priority, AXVoiceCallbackFn callback, void *userContext)
void AXSetVoiceType(AXVoice *voice, AXVoiceType type)
void(* AXVoiceCallbackFn)(void *)
void AXSetVoiceLoopOffsetEx(AXVoice *voice, uint32_t offset, const void *samples)
void AXSetVoiceVeDelta(AXVoice *voice, int16_t delta)
void AXSetVoiceState(AXVoice *voice, AXVoiceState state)
BOOL AXCheckVoiceOffsets(AXVoiceOffsets *offsets)
void AXSetVoiceOffsets(AXVoice *voice, AXVoiceOffsets *offsets)
uint16_t AXVoiceFormat
A value from enum AX_VOICE_FORMAT.
uint32_t AXGetVoiceCurrentOffsetEx(AXVoice *voice, const void *samples)
uint32_t AXVoiceRenderer
A value from enum AX_VOICE_RENDERER.
void AXSetVoicePriority(AXVoice *voice, uint32_t priority)
uint32_t AXVoiceType
A value from enum AX_VOICE_TYPE.
void AXSetVoiceEndOffsetEx(AXVoice *voice, uint32_t offset, const void *samples)
void AXSetVoiceSrcType(AXVoice *voice, AXVoiceSrcType type)
uint16_t AXVoiceLoop
A value from enum AX_VOICE_LOOP.
AXResult AXSetVoiceDeviceMix(AXVoice *voice, AXDeviceType type, uint32_t id, AXVoiceDeviceMixData *mixData)
AXVoiceSrcRatioResult AXSetVoiceSrcRatio(AXVoice *voice, float ratio)
BOOL AXIsVoiceRunning(AXVoice *voice)
void AXSetVoiceAdpcmLoop(AXVoice *voice, AXVoiceAdpcmLoopData *loopData)
void AXSetVoiceCurrentOffset(AXVoice *voice, uint32_t offset)
AXResult AXSetVoiceInitialTimeDelay(AXVoice *voice, uint16_t delay)
int32_t AXVoiceBegin(AXVoice *v)
void AXSetVoiceLoop(AXVoice *voice, AXVoiceLoop loop)
void AXSetVoiceRmtIIRCoefs(AXVoice *voice, uint16_t filter,...)
AXVoice * AXAcquireVoiceEx(uint32_t priority, AXVoiceCallbackExFn callback, void *userContext)
void(* AXVoiceCallbackExFn)(void *, uint32_t, uint32_t)
uint32_t AXVoiceState
A value from enum AX_VOICE_STATE.
void AXSetVoiceLoopOffset(AXVoice *voice, uint32_t offset)
void AXSetVoiceSrc(AXVoice *voice, AXVoiceSrc *src)
void AXFreeVoice(AXVoice *voice)
int32_t AXVoiceSrcRatioResult
A value from enum AX_VOICE_RATIO_RESULT.
void AXSetVoiceEndOffset(AXVoice *voice, uint32_t offset)
uint32_t AXVoiceSrcType
A value from enum AX_VOICE_SRC_TYPE.
void AXGetVoiceOffsets(AXVoice *voice, AXVoiceOffsets *offsets)
uint32_t AXGetVoiceLoopCount(AXVoice *voice)
int32_t AXVoiceEnd(AXVoice *v)
void AXSetVoiceAdpcm(AXVoice *voice, AXVoiceAdpcm *adpcm)
@ AX_VOICE_SRC_TYPE_LINEAR
@ AX_VOICE_RATIO_RESULT_LESS_THAN_ZERO
@ AX_VOICE_RATIO_RESULT_GREATER_THAN_SOMETHING
@ AX_VOICE_RATIO_RESULT_SUCCESS
AXVoice Sample Rate Converter.