ardour
|
#include <coreaudiosource.h>
Public Member Functions | |
CoreAudioSource (ARDOUR::Session &, const XMLNode &) | |
CoreAudioSource (ARDOUR::Session &, const string &path, int chn, Flag) | |
~CoreAudioSource () | |
void | set_path (const std::string &p) |
float | sample_rate () const |
int | update_header (framepos_t when, struct tm &, time_t) |
int | flush_header () |
void | set_header_timeline_position () |
bool | clamped_at_unity () const |
void | flush () |
Public Member Functions inherited from ARDOUR::AudioFileSource | |
virtual | ~AudioFileSource () |
std::string | peak_path (std::string audio_path) |
std::string | find_broken_peakfile (std::string missing_peak_path, std::string audio_path) |
bool | safe_file_extension (const std::string &path) const |
virtual framepos_t | last_capture_start_frame () const |
virtual void | mark_capture_start (framepos_t) |
virtual void | mark_capture_end () |
virtual void | clear_capture_marks () |
virtual bool | one_of_several_channels () const |
void | mark_streaming_write_completed (const Lock &lock) |
int | setup_peakfile () |
XMLNode & | get_state () |
int | set_state (const XMLNode &, int version) |
bool | can_truncate_peaks () const |
bool | can_be_analysed () const |
Public Member Functions inherited from ARDOUR::AudioSource | |
AudioSource (Session &, std::string name) | |
AudioSource (Session &, const XMLNode &) | |
virtual | ~AudioSource () |
framecnt_t | readable_length () const |
virtual uint32_t | n_channels () const |
virtual bool | empty () const |
framecnt_t | length (framepos_t pos) const |
void | update_length (framecnt_t cnt) |
virtual framecnt_t | available_peaks (double zoom) const |
virtual framecnt_t | read (Sample *dst, framepos_t start, framecnt_t cnt, int channel=0) const |
virtual framecnt_t | write (Sample *src, framecnt_t cnt) |
void | set_captured_for (std::string str) |
std::string | captured_for () const |
int | read_peaks (PeakData *peaks, framecnt_t npeaks, framepos_t start, framecnt_t cnt, double samples_per_visual_peak) const |
int | build_peaks () |
bool | peaks_ready (boost::function< void()> callWhenReady, PBD::ScopedConnection **connection_created_if_not_ready, PBD::EventLoop *event_loop) const |
XMLNode & | get_state () |
int | set_state (const XMLNode &, int version) |
int | rename_peakfile (std::string newpath) |
void | touch_peakfile () |
int | prepare_for_peakfile_writes () |
void | done_with_peakfile_writes (bool done=true) |
Public Member Functions inherited from ARDOUR::Source | |
Source (Session &, DataType type, const std::string &name, Flag flags=Flag(0)) | |
Source (Session &, const XMLNode &) | |
virtual | ~Source () |
DataType | type () |
time_t | timestamp () const |
void | stamp (time_t when) |
virtual framepos_t | natural_position () const |
void | mark_for_remove () |
virtual void | mark_streaming_write_started (const Lock &lock) |
virtual void | session_saved () |
XMLNode & | get_state () |
int | set_state (const XMLNode &, int version) |
bool | destructive () const |
bool | writable () const |
virtual bool | set_destructive (bool) |
virtual bool | length_mutable () const |
bool | has_been_analysed () const |
virtual void | set_been_analysed (bool yn) |
virtual bool | check_for_analysis_data_on_disk () |
std::string | get_transients_path () const |
int | load_transients (const std::string &) |
framepos_t | timeline_position () const |
virtual void | set_timeline_position (framepos_t pos) |
void | set_allow_remove_if_empty (bool yn) |
Glib::Threads::Mutex & | mutex () |
Flag | flags () const |
virtual void | dec_use_count () |
int | use_count () const |
bool | used () const |
uint32_t | level () const |
std::string | ancestor_name () |
void | set_ancestor_name (const std::string &name) |
Public Member Functions inherited from ARDOUR::SessionObject | |
SessionObject (Session &session, const std::string &name) | |
Session & | session () const |
std::string | name () const |
virtual bool | set_name (const std::string &str) |
Public Member Functions inherited from ARDOUR::SessionHandleRef | |
SessionHandleRef (ARDOUR::Session &s) | |
virtual | ~SessionHandleRef () |
Public Member Functions inherited from PBD::ScopedConnectionList | |
ScopedConnectionList () | |
virtual | ~ScopedConnectionList () |
void | add_connection (const UnscopedConnection &c) |
void | drop_connections () |
Public Member Functions inherited from PBD::Stateful | |
Stateful () | |
virtual | ~Stateful () |
virtual bool | apply_changes (PropertyBase const &) |
PropertyChange | apply_changes (PropertyList const &) |
const OwnedPropertyList & | properties () const |
void | add_property (PropertyBase &s) |
void | add_extra_xml (XMLNode &) |
XMLNode * | extra_xml (const std::string &str, bool add_if_missing=false) |
void | save_extra_xml (const XMLNode &) |
const PBD::ID & | id () const |
bool | set_id (const XMLNode &) |
void | set_id (const std::string &) |
void | reset_id () |
void | clear_changes () |
virtual void | clear_owned_changes () |
PropertyList * | get_changes_as_properties (Command *) const |
virtual void | rdiff (std::vector< Command * > &) const |
bool | changed () const |
virtual PropertyList * | property_factory (const XMLNode &) const |
virtual void | suspend_property_changes () |
virtual void | resume_property_changes () |
bool | property_changes_suspended () const |
Public Member Functions inherited from PBD::Destructible | |
Destructible () | |
virtual | ~Destructible () |
void | drop_references () |
Public Member Functions inherited from ARDOUR::Readable | |
Readable () | |
virtual | ~Readable () |
Public Member Functions inherited from ARDOUR::FileSource | |
virtual | ~FileSource () |
const std::string & | path () const |
int | move_to_trash (const std::string &trash_dir_name) |
void | mark_take (const std::string &id) |
void | mark_immutable () |
void | mark_immutable_except_write () |
void | mark_nonremovable () |
const std::string & | take_id () const |
bool | within_session () const |
uint16_t | channel () const |
int | set_state (const XMLNode &, int version) |
int | set_source_name (const std::string &newname, bool destructive) |
void | inc_use_count () |
bool | removable () const |
bool | is_stub () const |
const std::string & | origin () const |
void | existence_check () |
virtual void | prevent_deletion () |
int | rename (const std::string &name) |
Static Public Member Functions | |
static int | get_soundfile_info (string path, SoundFileInfo &_info, string &error_msg) |
Static Public Member Functions inherited from ARDOUR::AudioFileSource | |
static void | set_peak_dir (std::string dir) |
static bool | get_soundfile_info (std::string path, SoundFileInfo &_info, std::string &error) |
static bool | safe_audio_file_extension (const std::string &path) |
static bool | is_empty (Session &, std::string path) |
static void | set_bwf_serial_number (int) |
static void | set_header_position_offset (framecnt_t offset) |
Static Public Member Functions inherited from ARDOUR::AudioSource | |
static void | set_build_missing_peakfiles (bool yn) |
static void | set_build_peakfiles (bool yn) |
static bool | get_build_peakfiles () |
static void | allocate_working_buffers (framecnt_t framerate) |
Static Public Member Functions inherited from ARDOUR::SessionObject | |
static void | make_property_quarks () |
Static Public Member Functions inherited from ARDOUR::FileSource | |
static bool | find (Session &, DataType type, const std::string &path, bool must_exist, bool &is_new, uint16_t &chan, std::string &found_path) |
static bool | find_2X (Session &, DataType type, const std::string &path, bool must_exist, bool &is_new, uint16_t &chan, std::string &found_path) |
Protected Member Functions | |
void | close () |
framecnt_t | read_unlocked (Sample *dst, framepos_t start, framecnt_t cnt) const |
framecnt_t | write_unlocked (Sample *, framecnt_t) |
Protected Member Functions inherited from ARDOUR::AudioFileSource | |
AudioFileSource (Session &, const std::string &path, Source::Flag flags) | |
AudioFileSource (Session &, const std::string &path, const std::string &origin, Source::Flag flags, SampleFormat samp_format, HeaderFormat hdr_format) | |
AudioFileSource (Session &, const XMLNode &, bool must_exist=true) | |
AudioFileSource (Session &, const std::string &path, Source::Flag flags, bool) | |
int | init (const std::string &idstr, bool must_exist) |
virtual void | handle_header_position_change () |
int | move_dependents_to_trash () |
Protected Member Functions inherited from ARDOUR::AudioSource | |
int | initialize_peakfile (std::string path) |
int | build_peaks_from_scratch () |
int | compute_and_write_peaks (Sample *buf, framecnt_t first_frame, framecnt_t cnt, bool force, bool intermediate_peaks_ready_signal) |
void | truncate_peakfile () |
virtual int | read_peaks_with_fpp (PeakData *peaks, framecnt_t npeaks, framepos_t start, framecnt_t cnt, double samples_per_visual_peak, framecnt_t fpp) const |
int | compute_and_write_peaks (Sample *buf, framecnt_t first_frame, framecnt_t cnt, bool force, bool intermediate_peaks_ready_signal, framecnt_t frames_per_peak) |
Protected Member Functions inherited from ARDOUR::SessionHandleRef | |
virtual void | session_going_away () |
virtual void | insanity_check () |
Protected Member Functions inherited from PBD::Stateful | |
void | add_instant_xml (XMLNode &, const std::string &directory_path) |
XMLNode * | instant_xml (const std::string &str, const std::string &directory_path) |
void | add_properties (XMLNode &) |
PropertyChange | set_values (XMLNode const &) |
virtual void | post_set (const PropertyChange &) |
virtual void | send_change (const PropertyChange &) |
virtual void | mid_thaw (const PropertyChange &) |
Protected Member Functions inherited from ARDOUR::FileSource | |
FileSource (Session &session, DataType type, const std::string &path, const std::string &origin, Source::Flag flags=Source::Flag(0)) | |
FileSource (Session &session, const XMLNode &node, bool must_exist) | |
void | set_within_session_from_path (const std::string &) |
Private Member Functions | |
void | init_cafile () |
int | safe_read (Sample *, framepos_t start, framecnt_t cnt, AudioBufferList &) const |
Private Attributes | |
CAAudioFile | af |
uint16_t | n_channels |
Additional Inherited Members | |
Public Types inherited from ARDOUR::Source | |
enum | Flag { Writable = 0x1, CanRename = 0x2, Broadcast = 0x4, Removable = 0x8, RemovableIfEmpty = 0x10, RemoveAtDestroy = 0x20, NoPeakFile = 0x40, Destructive = 0x80, Empty = 0x100 } |
typedef Glib::Threads::Mutex::Lock | Lock |
Public Attributes inherited from ARDOUR::AudioSource | |
PBD::Signal0< void > | PeaksReady |
PBD::Signal2< void, framepos_t, framepos_t > | PeakRangeReady |
Public Attributes inherited from ARDOUR::Source | |
PBD::Signal0< void > | AnalysisChanged |
AnalysisFeatureList | transients |
Public Attributes inherited from PBD::Stateful | |
PBD::Signal1< void, const PropertyChange & > | PropertyChanged |
Public Attributes inherited from PBD::Destructible | |
PBD::Signal0< void > | Destroyed |
PBD::Signal0< void > | DropReferences |
Static Public Attributes inherited from ARDOUR::AudioFileSource | |
static PBD::Signal0< void > | HeaderPositionOffsetChanged |
Static Public Attributes inherited from ARDOUR::Source | |
static PBD::Signal1< void, Source * > | SourceCreated |
Static Public Attributes inherited from PBD::Stateful | |
static int | current_state_version = 0 |
static int | loading_state_version = 0 |
Static Public Attributes inherited from ARDOUR::FileSource | |
static PBD::Signal2< int, std::string, std::vector < std::string > > | AmbiguousFileName |
Static Protected Member Functions inherited from ARDOUR::AudioFileSource | |
static Sample * | get_interleave_buffer (framecnt_t size) |
Static Protected Member Functions inherited from ARDOUR::AudioSource | |
static void | ensure_buffers_for_level (uint32_t, framecnt_t) |
static void | ensure_buffers_for_level_locked (uint32_t, framecnt_t) |
Protected Attributes inherited from ARDOUR::AudioSource | |
framecnt_t | _length |
std::string | peakpath |
std::string | _captured_for |
off_t | _peak_byte_max |
Protected Attributes inherited from ARDOUR::Source | |
DataType | _type |
Flag | _flags |
time_t | _timestamp |
framepos_t | _timeline_position |
bool | _analysed |
Glib::Threads::Mutex | _lock |
Glib::Threads::Mutex | _analysis_lock |
gint | _use_count |
uint32_t | _level |
std::string | _ancestor_name |
Protected Attributes inherited from ARDOUR::SessionObject | |
PBD::Property< std::string > | _name |
Protected Attributes inherited from ARDOUR::SessionHandleRef | |
ARDOUR::Session & | _session |
Protected Attributes inherited from PBD::Stateful | |
XMLNode * | _extra_xml |
XMLNode * | _instant_xml |
PBD::PropertyChange | _pending_changed |
Glib::Threads::Mutex | _lock |
std::string | _xml_node_name |
name of node to use for this object in XML More... | |
OwnedPropertyList * | _properties |
Protected Attributes inherited from ARDOUR::FileSource | |
std::string | _path |
std::string | _take_id |
bool | _file_is_new |
uint16_t | _channel |
bool | _within_session |
std::string | _origin |
Static Protected Attributes inherited from ARDOUR::AudioFileSource | |
static std::string | peak_dir = "" |
static char | bwf_country_code [3] |
static char | bwf_organization_code [4] |
static char | bwf_serial_number [13] = "000000000000" |
static framecnt_t | header_position_offset = 0 |
Static Protected Attributes inherited from ARDOUR::AudioSource | |
static bool | _build_missing_peakfiles = false |
static bool | _build_peakfiles = false |
static size_t | _working_buffers_size = 0 |
static std::vector < boost::shared_array< Sample > > | _mixdown_buffers |
static std::vector < boost::shared_array< gain_t > > | _gain_buffers |
static Glib::Threads::Mutex | _level_buffer_lock |
Definition at line 31 of file coreaudiosource.h.
CoreAudioSource::CoreAudioSource | ( | ARDOUR::Session & | s, |
const XMLNode & | node | ||
) |
Create a new CoreAudioSource using session state, which implies that the file must already exist.
Definition at line 44 of file coreaudiosource.cc.
CoreAudioSource::CoreAudioSource | ( | ARDOUR::Session & | s, |
const string & | path, | ||
int | chn, | ||
Flag | flags | ||
) |
Create a new CoreAudioSource from an existing file. Sources created with this method are never writable or removable.
Definition at line 57 of file coreaudiosource.cc.
CoreAudioSource::~CoreAudioSource | ( | ) |
Definition at line 103 of file coreaudiosource.cc.
|
inlinevirtual |
Implements ARDOUR::AudioSource.
Definition at line 44 of file coreaudiosource.h.
|
protectedvirtual |
Implements ARDOUR::FileSource.
Definition at line 108 of file coreaudiosource.cc.
|
inlinevirtual |
Implements ARDOUR::AudioFileSource.
Definition at line 46 of file coreaudiosource.h.
|
inlinevirtual |
Implements ARDOUR::AudioFileSource.
Definition at line 42 of file coreaudiosource.h.
|
static |
Definition at line 242 of file coreaudiosource.cc.
|
private |
Definition at line 70 of file coreaudiosource.cc.
|
protectedvirtual |
Implements ARDOUR::AudioSource.
Definition at line 160 of file coreaudiosource.cc.
|
private |
Definition at line 114 of file coreaudiosource.cc.
|
virtual |
Implements ARDOUR::AudioSource.
Definition at line 221 of file coreaudiosource.cc.
|
inlinevirtual |
Implements ARDOUR::AudioFileSource.
Definition at line 43 of file coreaudiosource.h.
|
virtual |
Reimplemented from ARDOUR::FileSource.
Definition at line 388 of file coreaudiosource.cc.
|
virtual |
Implements ARDOUR::AudioFileSource.
Definition at line 236 of file coreaudiosource.cc.
|
inlineprotectedvirtual |
Implements ARDOUR::AudioSource.
Definition at line 53 of file coreaudiosource.h.
|
mutableprivate |
Definition at line 56 of file coreaudiosource.h.
|
private |
Definition at line 57 of file coreaudiosource.h.