Object <- Server <- SoundInputDevice <- MacMicrophone |
|
|
Abort ReinitializeClass StartRecording StopRecording |
|
Count InputLevel |
| Field | Type | |
|---|---|---|
| Server: | enabled: | Boolean |
| SoundInputDevice: | flags: | Flags |
| sampleRate: | Fixed | |
| sound: | Sound | |
| CanPreventSleep: | dozeCount: | Signed |
| sleepCount: | Signed | |
| MacMicrophone: | refNum: | Signed |
| buffer: | Object |
instance MacMicrophone tag; enabled: false; flags: 0x00000000; sampleRate: 0; sound: nilObject; dozeCount: 0; sleepCount: 0; refNum: 0; buffer: nilObject; end instance;
Define Class MacMicrophone; inherits from SoundInputDevice; inherits from HasReinitialize, CanPreventSleep; field refNum: Signed; field buffer: Object; overrides ReinitializeClass; overrides StartRecording; overrides StopRecording; // stop recording, if this is the sound being recorded overrides InputLevel; // returns input sound level in %full scale (0 to 100) overrides Count; // total sample count since last record command operation Abort(), noFail; // abort in power down, don't wait for buffer completion end class;