Difference between revisions of "MIC Services"
Jump to navigation
Jump to search
Steveice10 (talk | contribs) m (Name consistency, some constant values.) |
|||
Line 13: | Line 13: | ||
|- | |- | ||
| 0x00030140 | | 0x00030140 | ||
− | | [[MICU: | + | | [[MICU:StartSampling|StartSampling]] |
|- | |- | ||
| 0x00040040 | | 0x00040040 | ||
Line 28: | Line 28: | ||
|- | |- | ||
| 0x00080040 | | 0x00080040 | ||
− | | | + | | SetGain(u8 input). This is a wrapper for CDCMIC command 0x00010040. |
|- | |- | ||
| 0x00090000 | | 0x00090000 | ||
− | | | + | | GetGain. This is a wrapper for CDCMIC command 0x00020000. |
|- | |- | ||
| 0x000A0040 | | 0x000A0040 | ||
Line 59: | Line 59: | ||
Only one session can be open for this service total(that is, only one process can use this service at a time). | Only one session can be open for this service total(that is, only one process can use this service at a time). | ||
− | + | '''enum Encoding''' | |
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
− | ! | + | ! Enum |
− | ! | + | ! Value |
|- | |- | ||
− | | | + | | ENCODING_PCM8 |
− | | | + | | 0 |
|- | |- | ||
− | | | + | | ENCODING_PCM16 |
− | | | + | | 1 |
+ | |- | ||
+ | | ENCODING_PCM8_SIGNED | ||
+ | | 2 | ||
+ | |- | ||
+ | | ENCODING_PCM16_SIGNED | ||
+ | | 3 | ||
+ | |} | ||
+ | |||
+ | '''enum SampleRate''' | ||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Enum | ||
+ | ! Value | ||
+ | |- | ||
+ | | SAMPLE_RATE_32730 | ||
+ | | 0 | ||
+ | |- | ||
+ | | SAMPLE_RATE_16360 | ||
+ | | 1 | ||
+ | |- | ||
+ | | SAMPLE_RATE_10910 | ||
+ | | 2 | ||
+ | |- | ||
+ | | SAMPLE_RATE_8180 | ||
+ | | 3 | ||
|} | |} | ||
=See Also= | =See Also= | ||
[[MIC Shared Memory]] | [[MIC Shared Memory]] |
Revision as of 03:03, 9 October 2015
Microphone service "mic:u"
Command Header | Description |
---|---|
0x00010042 | MapSharedMem |
0x00020000 | UnmapSharedMem |
0x00030140 | StartSampling |
0x00040040 | AdjustSampling(u8 input) |
0x00050000 | StopSampling |
0x00060000 | IsSampling |
0x00070000 | GetEventHandle. This event is signaled by MIC-module when more audio-data is available in shared-mem. |
0x00080040 | SetGain(u8 input). This is a wrapper for CDCMIC command 0x00010040. |
0x00090000 | GetGain. This is a wrapper for CDCMIC command 0x00020000. |
0x000A0040 | SetBias(u8 input). This is a wrapper for CDCMIC command 0x00030040. 0 = disable recording, 1 = enable recording. When recording is disabled with this, MIC-module writes value 0xFFFF to the output audio sample data in shared-mem, since that's what the MIC hardware returns here. |
0x000B0000 | GetBias. This is a wrapper for CDCMIC command 0x00040000. |
0x000C0042 | (size, <translate-header>, bufptr) This is a wrapper for CDCMIC command 0x00050042. |
0x000D0040 | SetClamp(u8 input) This writes the input value to a MIC-module state field. |
0x000E0000 | GetClamp. This writes the u8 value of the MIC-module field also used by command 0x000D0040, to cmdreply indexword[2]. |
0x000F0040 | (u8 input) This writes the input u8 value to a MIC-module state field. |
0x00100040 | When the input value is 0, value 1 is written to an u8 MIC module state field. Otherwise, value 0 is written there. Normally the input value is non-zero. |
This is an interface for using the MIC hardware via the "cdc:MIC" service and the MIC IO registers.
Only one session can be open for this service total(that is, only one process can use this service at a time).
enum Encoding
Enum | Value |
---|---|
ENCODING_PCM8 | 0 |
ENCODING_PCM16 | 1 |
ENCODING_PCM8_SIGNED | 2 |
ENCODING_PCM16_SIGNED | 3 |
enum SampleRate
Enum | Value |
---|---|
SAMPLE_RATE_32730 | 0 |
SAMPLE_RATE_16360 | 1 |
SAMPLE_RATE_10910 | 2 |
SAMPLE_RATE_8180 | 3 |