#include <CoreAudio/CoreAudio.h>
#include <AudioUnit/AudioUnit.h>
#include <AudioUnit/AudioOutputUnit.h>
#include <AudioToolbox/AudioConverter.h>
#include <pthread.h>
#include <stdio.h>
Go to the source code of this file.
Defines | |
| #define | DEVICE_NAME_LEN 128 | 
| #define | BUF_SAMPLES 4096 | 
| #define | BITS_PER_BYTE 8 | 
Typedefs | |
| typedef SInt16 | Sample | 
| typedef unsigned char | boolean | 
Functions | |
| static void | printStreamInfo (AudioStreamBasicDescription *desc) | 
| static void | printAudioBuffer (AudioBuffer *buf) | 
| static AudioBufferList * | allocateAudioBufferList (UInt32 data_bytes, UInt32 nsamples, UInt32 nchan) | 
| static OSStatus | ConvInputProc (AudioConverterRef inConv, UInt32 *ioNumDataPackets, AudioBufferList *ioData, AudioStreamPacketDescription **outDataPacketDesc, void *inUserData) | 
| static OSStatus | InputProc (void *inRefCon, AudioUnitRenderActionFlags *ioActionFlags, const AudioTimeStamp *inTimeStamp, UInt32 inBusNumber, UInt32 inNumberFrames, AudioBufferList *ioData) | 
| boolean | adin_mic_standby (int sfreq, void *dummy) | 
| Connection initialization: check connectivity and open for recording.   | |
| boolean | adin_mic_begin () | 
| Start recording.   | |
| boolean | adin_mic_end () | 
| Stop recording.   | |
| int | adin_mic_read (void *buffer, int nsamples) | 
| void | adin_mic_pause () | 
Variables | |
| static UInt32 | ConvQuality = kAudioConverterQuality_Medium | 
| static UInt32 | BytesPerSample = sizeof(Sample) | 
| static AudioDeviceID | InputDeviceID | 
| static AudioUnit | InputUnit | 
| static AudioConverterRef | Converter | 
| static pthread_mutex_t | MutexInput | 
| static pthread_cond_t | CondInput | 
| static bool | CoreAudioRecordStarted = FALSE | 
| static bool | CoreAudioHasInputDevice = FALSE | 
| static bool | CoreAudioInit = FALSE | 
| static UInt32 | NumSamplesAvailable = 0 | 
| static UInt32 | InputDeviceBufferSamples = 0 | 
| static UInt32 | InputBytesPerPacket = 0 | 
| static UInt32 | InputFramesPerPacket = 0 | 
| static UInt32 | InputSamplesPerPacket = 0 | 
| static UInt32 | OutputBitsPerChannel = 0 | 
| static UInt32 | OutputBytesPerPacket = 0 | 
| static UInt32 | OutputSamplesPerPacket = 0 | 
| static AudioBufferList * | BufList | 
| static AudioBufferList | BufListBackup | 
| static AudioBufferList * | BufListConverted | 
by Masatomo Hashimoto <m.hashimoto@aist.go.jp>
Tested on Mac OS X v10.3.9 and v10.4.1
This file has been contributed from the Ubiquitous Software Group, Information Technology Research Institute, AIST.
Definition in file adin_mic_darwin_coreaudio.c.
| boolean adin_mic_standby | ( | int | sfreq, | |
| void * | dummy | |||
| ) | 
Connection initialization: check connectivity and open for recording.
| sfreq | [in] required sampling frequency | |
| dummy | [in] a dummy data | 
Definition at line 285 of file adin_mic_darwin_coreaudio.c.
| boolean adin_mic_begin | ( | ) | 
Start recording.
Definition at line 571 of file adin_mic_darwin_coreaudio.c.
| boolean adin_mic_end | ( | ) | 
Stop recording.
Definition at line 572 of file adin_mic_darwin_coreaudio.c.
 1.5.4