X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fcoreaudiosource.h;h=f61c6bb9845127d38e619dbdd71d593e8ecd7289;hb=8a4518d76fe78e5fb99900ff5ff71a22e5912395;hp=5e8e696bf9ebd3100cd9835edd69e3c11a37746b;hpb=ab4b4934b9155d9f3cdb34fa1e71fbfdb2cf7947;p=ardour.git diff --git a/libs/ardour/ardour/coreaudiosource.h b/libs/ardour/ardour/coreaudiosource.h index 5e8e696bf9..f61c6bb984 100644 --- a/libs/ardour/ardour/coreaudiosource.h +++ b/libs/ardour/ardour/coreaudiosource.h @@ -20,7 +20,11 @@ #ifndef __coreaudio_source_h__ #define __coreaudio_source_h__ -#include +#ifdef COREAUDIO105 +#include "CAAudioFile.h" +#else +#include "CAExtAudioFile.h" +#endif #include "ardour/audiofilesource.h" #include @@ -37,7 +41,9 @@ class LIBARDOUR_API CoreAudioSource : public AudioFileSource { void set_path (const std::string& p); float sample_rate() const; - int update_header (framepos_t when, struct tm&, time_t); + int update_header (samplepos_t when, struct tm&, time_t); + + uint32_t channel_count () const { return n_channels; } int flush_header () {return 0;}; void set_header_timeline_position () {}; @@ -49,15 +55,19 @@ class LIBARDOUR_API CoreAudioSource : public AudioFileSource { protected: void close (); - framecnt_t read_unlocked (Sample *dst, framepos_t start, framecnt_t cnt) const; - framecnt_t write_unlocked (Sample *, framecnt_t) { return 0; } + samplecnt_t read_unlocked (Sample *dst, samplepos_t start, samplecnt_t cnt) const; + samplecnt_t write_unlocked (Sample *, samplecnt_t) { return 0; } private: +#ifdef COREAUDIO105 mutable CAAudioFile af; +#else + mutable CAExtAudioFile af; +#endif uint16_t n_channels; void init_cafile (); - int safe_read (Sample*, framepos_t start, framecnt_t cnt, AudioBufferList&) const; + int safe_read (Sample*, samplepos_t start, samplecnt_t cnt, AudioBufferList&) const; }; }; /* namespace ARDOUR */