#include "ardour/audiofilesource.h"
#include "ardour/broadcast_info.h"
-#include "pbd/sndfile_manager.h"
namespace ARDOUR {
static int get_soundfile_info (const std::string& path, SoundFileInfo& _info, std::string& error_msg);
protected:
+ void close ();
+
void set_path (const std::string& p);
void set_header_timeline_position ();
framecnt_t write_float (Sample* data, framepos_t pos, framecnt_t cnt);
private:
- PBD::SndFileDescriptor* _descriptor;
+ SNDFILE* _sndfile;
SF_INFO _info;
BroadcastInfo *_broadcast_info;
bool _capture_end;
framepos_t capture_start_frame;
framepos_t file_pos; // unit is frames
- framecnt_t xfade_out_count;
- framecnt_t xfade_in_count;
Sample* xfade_buf;
framecnt_t crossfade (Sample* data, framecnt_t cnt, int dir);
framecnt_t nondestructive_write_unlocked (Sample *dst, framecnt_t cnt);
void handle_header_position_change ();
PBD::ScopedConnection header_position_connection;
- PBD::ScopedConnection file_manager_connection;
};
} // namespace ARDOUR