This Microphone API provides the ability to interact with the microphone and record Audio
iOS | Android | Web | |
---|---|---|---|
Availability | ✔️ | ✔️ | ❌ |
Encoding | kAudioFormatMPEG4AAC | MPEG_4 / AAC | ❌ |
Extension | .m4a | .m4a | ❌ |
npm install @mozartec/capacitor-microphone
npx cap sync
iOS requires the following usage description to be added and filled out for your app in Info.plist
:
NSMicrophoneUsageDescription
(Privacy - Microphone Usage Description
)
Read about Configuring Info.plist
in the iOS Guide for more information on setting iOS permissions in Xcode.
This API requires the following permission to be added to your AndroidManifest.xml
:
<uses-permission android:name="android.permission.RECORD_AUDIO" />
The RECORD_AUDIO permission is for recording audio.
Read about Setting Permissions in the Android Guide for more information on setting Android permissions.
checkPermissions()
requestPermissions()
enableMicrophone(...)
disableMicrophone()
requestData()
getAudioContext()
- Interfaces
- Type Aliases
checkPermissions() => Promise<PermissionStatus>
Checks microphone permission
Returns: Promise<PermissionStatus>
requestPermissions() => Promise<PermissionStatus>
Requests microphone permission
Returns: Promise<PermissionStatus>
enableMicrophone(options: { recordingEnabled: boolean; silenceDetection: boolean; }) => Promise<void>
Param | Type |
---|---|
options |
{ recordingEnabled: boolean; silenceDetection: boolean; } |
disableMicrophone() => Promise<void>
requestData() => void
getAudioContext() => Promise<AudioContext | null>
Returns: Promise<any>
Prop | Type |
---|---|
microphone |
MicrophonePermissionState |
PermissionState | 'limited'
'prompt' | 'prompt-with-rationale' | 'granted' | 'denied'