Difference between revisions of "MIC Services"
Jump to navigation
Jump to search
Steveice10 (talk | contribs) m (Name consistency, some constant values.) |
|||
(8 intermediate revisions by one other user not shown) | |||
Line 16: | Line 16: | ||
|- | |- | ||
| 0x00040040 | | 0x00040040 | ||
− | | AdjustSampling | + | | [[MICU:AdjustSampling|AdjustSampling]] |
|- | |- | ||
| 0x00050000 | | 0x00050000 | ||
− | | StopSampling | + | | [[MICU:StopSampling|StopSampling]] |
|- | |- | ||
| 0x00060000 | | 0x00060000 | ||
− | | IsSampling | + | | [[MICU:IsSampling|IsSampling]] |
|- | |- | ||
| 0x00070000 | | 0x00070000 | ||
− | | GetEventHandle | + | | [[MICU:GetEventHandle|GetEventHandle]] |
|- | |- | ||
| 0x00080040 | | 0x00080040 | ||
− | | SetGain | + | | [[MICU:SetGain|SetGain]] |
|- | |- | ||
| 0x00090000 | | 0x00090000 | ||
− | | GetGain | + | | [[MICU:GetGain|GetGain]] |
|- | |- | ||
| 0x000A0040 | | 0x000A0040 | ||
− | | | + | | [[MICU:SetPower|SetPower]] |
|- | |- | ||
| 0x000B0000 | | 0x000B0000 | ||
− | | | + | | [[MICU:GetPower|GetPower]] |
|- | |- | ||
| 0x000C0042 | | 0x000C0042 | ||
− | | | + | | [[MICU:SetIirFilterMic|SetIirFilterMic]] |
|- | |- | ||
| 0x000D0040 | | 0x000D0040 | ||
− | | SetClamp | + | | [[MICU:SetClamp|SetClamp]] |
|- | |- | ||
| 0x000E0000 | | 0x000E0000 | ||
− | | GetClamp | + | | [[MICU:GetClamp|GetClamp]] |
|- | |- | ||
| 0x000F0040 | | 0x000F0040 | ||
− | | | + | | [[MICU:SetAllowShellClosed|SetAllowShellClosed]] |
|- | |- | ||
| 0x00100040 | | 0x00100040 | ||
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). | ||
− | + | ==Encoding== | |
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
Line 78: | Line 78: | ||
|} | |} | ||
− | + | ==SampleRate== | |
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
Line 96: | Line 96: | ||
| 3 | | 3 | ||
|} | |} | ||
+ | |||
+ | |||
+ | The actual accurate sampling rate can be calculated using <code>(16756991 / 512) / (SampleRate + 1)</code> where <code>SampleRate</code> is one of the above values. | ||
=See Also= | =See Also= | ||
[[MIC Shared Memory]] | [[MIC Shared Memory]] |
Latest revision as of 16:45, 17 March 2018
Microphone service "mic:u"[edit]
Command Header | Description |
---|---|
0x00010042 | MapSharedMem |
0x00020000 | UnmapSharedMem |
0x00030140 | StartSampling |
0x00040040 | AdjustSampling |
0x00050000 | StopSampling |
0x00060000 | IsSampling |
0x00070000 | GetEventHandle |
0x00080040 | SetGain |
0x00090000 | GetGain |
0x000A0040 | SetPower |
0x000B0000 | GetPower |
0x000C0042 | SetIirFilterMic |
0x000D0040 | SetClamp |
0x000E0000 | GetClamp |
0x000F0040 | SetAllowShellClosed |
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).
Encoding[edit]
Enum | Value |
---|---|
ENCODING_PCM8 | 0 |
ENCODING_PCM16 | 1 |
ENCODING_PCM8_SIGNED | 2 |
ENCODING_PCM16_SIGNED | 3 |
SampleRate[edit]
Enum | Value |
---|---|
SAMPLE_RATE_32730 | 0 |
SAMPLE_RATE_16360 | 1 |
SAMPLE_RATE_10910 | 2 |
SAMPLE_RATE_8180 | 3 |
The actual accurate sampling rate can be calculated using (16756991 / 512) / (SampleRate + 1)
where SampleRate
is one of the above values.