Mercurial > sdl-ios-xcode
diff src/cdrom/macosx/AudioFilePlayer.h @ 935:f8d5ddc7aef1
Audio improvements from Max Horn, including a new CoreAudio driver for MacOSX
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sat, 21 Aug 2004 02:06:30 +0000 |
parents | b8d311d90021 |
children | 71a2648acc75 |
line wrap: on
line diff
--- a/src/cdrom/macosx/AudioFilePlayer.h Fri Aug 20 22:35:23 2004 +0000 +++ b/src/cdrom/macosx/AudioFilePlayer.h Sat Aug 21 02:06:30 2004 +0000 @@ -31,7 +31,6 @@ #include <CoreServices/CoreServices.h> -#include <AudioToolbox/AudioConverter.h> #include <AudioUnit/AudioUnit.h> #include "SDL_error.h" @@ -65,8 +64,7 @@ ~AudioFilePlayer(); - void SetDestination (AudioUnit &inDestUnit, - int inBusNumber); + void SetDestination (AudioUnit &inDestUnit); void SetNotifier (AudioFilePlayNotifier inNotifier, void *inRefCon) { @@ -88,26 +86,18 @@ bool IsConnected () const { return mConnected; } - UInt32 GetBusNumber () const { return mBusNumber; } - AudioUnit GetDestUnit () const { return mPlayUnit; } - AudioConverterRef GetAudioConverter() const { return mConverter; } - #if DEBUG void Print() const { - printf ("Destination Bus:%ld\n", GetBusNumber()); printf ("Is Connected:%s\n", (IsConnected() ? "true" : "false")); printf ("- - - - - - - - - - - - - - \n"); } #endif - - const AudioStreamBasicDescription& GetFileFormat() const { return mFileDescription; } private: AudioUnit mPlayUnit; - UInt32 mBusNumber; SInt16 mForkRefNum; AudioUnitInputCallback mInputCallback; @@ -117,7 +107,6 @@ bool mConnected; AudioFileManager* mAudioFileManager; - AudioConverterRef mConverter; AudioFilePlayNotifier mNotifier; void* mRefCon; @@ -141,15 +130,11 @@ ~AudioFileManager(); - void Connect (AudioConverterRef inConverter) - { - mParentConverter = inConverter; - DoConnect(); - } - // this method should NOT be called by an object of this class // as it is called by the parent's Disconnect() method void Disconnect (); + + void DoConnect (); OSStatus Read(char *buffer, UInt32 *len); @@ -165,7 +150,6 @@ protected: AudioFilePlayer& mParent; - AudioConverterRef mParentConverter; SInt16 mForkRefNum; SInt64 mAudioDataOffset; @@ -179,6 +163,10 @@ int mNumTimesAskedSinceFinished; + + void* mTmpBuffer; + UInt32 mBufferSize; + UInt32 mBufferOffset; public: const UInt32 mChunkSize; SInt64 mFileLength; @@ -190,8 +178,6 @@ OSStatus Render (AudioBuffer &ioData); OSStatus GetFileData (void** inOutData, UInt32 *inOutDataSize); - - void DoConnect (); void AfterRender (); @@ -201,10 +187,6 @@ const AudioTimeStamp *inTimeStamp, UInt32 inBusNumber, AudioBuffer *ioData); - static OSStatus ACInputProc (AudioConverterRef inAudioConverter, - UInt32* outDataSize, - void** outData, - void* inUserData); };