Audio services: Difference between revisions
Adding names from factory titles and minor corrections |
|||
Line 98: | Line 98: | ||
! Offset || Size || Description | ! Offset || Size || Description | ||
|- | |- | ||
| 0x00 || 8 || Pointer to next buffer | | 0x00 || 8 || Pointer to next buffer (unused) | ||
|- | |- | ||
| 0x08 || 8 || Pointer to sample buffer | | 0x08 || 8 || Pointer to sample buffer | ||
Line 288: | Line 288: | ||
Returns the upper limit of the rendering time in percent. (u32) | Returns the upper limit of the rendering time in percent. (u32) | ||
= audout | = audout:a = | ||
This is "nn::audio::detail::IAudioOutManagerForApplet | This is "nn::audio::detail::IAudioOutManagerForApplet". | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 295: | Line 295: | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || | | 0 || RequestSuspendAudioOuts | ||
|- | |- | ||
| 1 || | | 1 || RequestResumeAudioOuts | ||
|- | |||
| 2 || GetAudioOutsProcessMasterVolume | |||
|- | |||
| 3 || SetAudioOutsProcessMasterVolume | |||
|} | |||
= audin:a = | |||
This is "nn::audio::detail::IAudioInManagerForApplet". | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 0 || RequestSuspendAudioIns | |||
|- | |||
| 1 || RequestResumeAudioIns | |||
|- | |||
| 2 || GetAudioInsProcessMasterVolume | |||
|- | |||
| 3 || SetAudioInsProcessMasterVolume | |||
|} | |||
= audrec:a = | |||
This is "nn::audio::detail::IFinalOutputRecorderManagerForApplet". | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 0 || RequestSuspendFinalOutputRecorders | |||
|- | |||
| 1 || RequestResumeFinalOutputRecorders | |||
|} | |||
= audren:a = | |||
This is "nn::audio::detail::IAudioRendererManagerForApplet". | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 0 || RequestSuspendAudioRenderers | |||
|- | |||
| 1 || RequestResumeAudioRenderers | |||
|- | |||
| 2 || GetAudioRenderersProcessMasterVolume | |||
|- | |||
| 3 || SetAudioRenderersProcessMasterVolume | |||
|- | |||
| 4 || RegisterAppletResourceUserId | |||
|- | |||
| 5 || UnregisterAppletResourceUserId | |||
|} | |} | ||
Line 462: | Line 514: | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || [[# | | 0 || [[#Initialize]] | ||
|- | |- | ||
| 1 || [[# | | 1 || [[#GetWorkBufferSize]] | ||
|- | |- | ||
| 2 || [3.0.0+] | | 2 || [3.0.0+] InitializeEx | ||
|- | |- | ||
| 3 || [3.0.0+] | | 3 || [3.0.0+] GetWorkBufferSizeEx | ||
|} | |} | ||
== | == Initialize == | ||
Takes two u32s '''SampleRate''' and '''ChannelCount''' packed as an u64, an u32 '''WorkBufferSize''' and a TransferMemory handle. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0. | Takes two u32s '''SampleRate''' and '''ChannelCount''' packed as an u64, an u32 '''WorkBufferSize''' and a TransferMemory handle for '''WorkBuffer'''. Returns an [[#IHardwareOpusDecoder]] object. The TransferMemory is created by the user-process with permissions=0. | ||
== | == GetWorkBufferSize== | ||
Takes two u32s '''SampleRate''' and '''ChannelCount''' packed as an u64. Returns the required size for the decoder's work buffer. | Takes two u32s '''SampleRate''' and '''ChannelCount''' packed as an u64. Returns the required size for the decoder's work buffer. | ||
Line 484: | Line 536: | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || [[# | | 0 || [[#DecodeInterleaved]] | ||
|- | |- | ||
| 1 || [[# | | 1 || [[#SetContext]] | ||
|- | |- | ||
| 2 || [3.0.0+] | | 2 || [3.0.0+] DecodeInterleavedEx | ||
|- | |- | ||
| 3 || [3.0.0+] | | 3 || [3.0.0+] SetContextEx | ||
|- | |- | ||
| 4 || [4.0.0+] | | 4 || [4.0.0+] | ||
Line 497: | Line 549: | ||
|} | |} | ||
=== | === DecodeInterleaved === | ||
Takes a type-5 input buffer ('''OpusDataIn''') and a type-6 output buffer ('''PcmDataOut'''). Decodes the Opus source data to PCM and returns two u32s '''DecodedSampleCount''' and '''DecodedDataSize'''. | Takes a type-5 input buffer ('''OpusDataIn''') and a type-6 output buffer ('''PcmDataOut'''). Decodes the Opus source data to PCM and returns two u32s '''DecodedSampleCount''' and '''DecodedDataSize'''. | ||
=== | === SetContext === | ||
Takes a type-5 input buffer ('''DecoderContextIn'''). Sends the unknown context data to the hardware decoder. | Takes a type-5 input buffer ('''DecoderContextIn'''). Sends the unknown context data to the hardware decoder. | ||
= auddebug = | = auddebug = | ||
This is "nn::audio::detail::IAudioDebugManager". | |||
This service doesn't exist in retail units. | This service doesn't exist in retail units. | ||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 0 || | |||
|- | |||
| 1 || | |||
|- | |||
| 2 || | |||
|- | |||
| 3 || | |||
|} | |||
[[Category:Services]] | [[Category:Services]] |