1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
/*
PsychToolbox3/Source/Common/PsychSound/PsychSound.h
PROJECTS: PsychSound only.
AUTHORS:
mario.kleiner at tuebingen.mpg.de mk
PLATFORMS: OS X only for now, but should work on all platforms.
HISTORY:
10/14/05 mk Created
DESCRIPTION:
Implementation of the PsychSound function, which is supposed to be a
replacement for the old PTB SND() function.
Design goals:
- More flexibility, more functionality than old SND function.
- Fully asynchronous operation - choice between sync/async mode.
- Better timing, aka lowe latencies in start/stop/processing of sound playback or recording.
- Bugfree(TM), as opposed to the very buggy Matlab drivers on Windows and MacOS-X.
- Fully portable due to the use of OpenAL as underlying sound library (Available for OS-X, Windows, Linux, Unixes, ...)
TARGET LOCATION:
PsychSound.mexmac resides in:
PsychToolbox/PsychBasic/PsychSound.mexmac
To change the target location modify the script:
Psychtoolbox/Tools/Scripts/CopyOutMexFiles/PsychSound_CopyOut.sh
*/
//begin include once
#ifndef PSYCH_IS_INCLUDED_PsychSound
#define PSYCH_IS_INCLUDED_PsychSound
//project includes
#include "Psych.h"
#include "PsychTimeGlue.h"
#include <OpenAL/al.h>
#include <OpenAL/alc.h>
void InitializeSynopsis();
//function prototypes
PsychError PsychSoundExit(void);
PsychError MODULEVersion(void); //MODULEVersion.c
PsychError PsychDisplaySoundSynopsis(void);
PsychError PSYCHSOUNDInitRecording(void);
PsychError PSYCHSOUNDStartRecording(void);
PsychError PSYCHSOUNDStopRecording(void);
PsychError PSYCHSOUNDShutdownRecording(void);
PsychError PSYCHSOUNDGetRecordingPosition(void);
PsychError PSYCHSOUNDGetData(void);
//end include once
#endif
|