#include <CoreAudio/CoreAudio.h>
#include <AudioUnit/AudioUnit.h>
#include <AudioUnit/AudioOutputUnit.h>
#include <AudioToolbox/AudioConverter.h>
#include <pthread.h>
#include <stdio.h>
Include dependency graph for adin_mic_darwin_coreaudio.c:

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 | 
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) | 
| bool | adin_mic_standby (int sfreq, void *dummy) | 
| bool | adin_mic_start () | 
| bool | adin_mic_stop () | 
| 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 | 
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.
      
  | 
  ||||||||||||
| 
 Connection initialization: check connectivity and open for recording. 
 
 
 Definition at line 281 of file adin_mic_darwin_coreaudio.c.  | 
  
      
  | 
  
| 
 Start recording. 
 
 Definition at line 565 of file adin_mic_darwin_coreaudio.c.  | 
  
      
  | 
  
| 
 Stop recording. 
 
 Definition at line 566 of file adin_mic_darwin_coreaudio.c.  | 
  
 1.4.2