diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2007-07-16 22:06:35 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2007-07-16 22:06:35 +0000 |
commit | 37c74810d22f6ef392366e40a9f03dd8da16da18 (patch) | |
tree | 5e6b6cd8cc5cac56214890f36f0ac283f6d1a9a8 /libs/ardour | |
parent | 323438965ea54d361794287a7d9842d5dac1c6bb (diff) |
support for 16 bit native files, part II
git-svn-id: svn://localhost/ardour2/trunk@2134 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour')
-rw-r--r-- | libs/ardour/ardour/automation_event.h | 4 | ||||
-rw-r--r-- | libs/ardour/ardour/types.h | 3 | ||||
-rw-r--r-- | libs/ardour/automation_event.cc | 2 | ||||
-rw-r--r-- | libs/ardour/enums.cc | 1 | ||||
-rw-r--r-- | libs/ardour/session.cc | 4 | ||||
-rw-r--r-- | libs/ardour/sndfilesource.cc | 4 |
6 files changed, 14 insertions, 4 deletions
diff --git a/libs/ardour/ardour/automation_event.h b/libs/ardour/ardour/automation_event.h index 6d04d4319a..ffce2bdb9c 100644 --- a/libs/ardour/ardour/automation_event.h +++ b/libs/ardour/ardour/automation_event.h @@ -50,9 +50,9 @@ struct ControlEvent { coeff[0] = coeff[1] = coeff[2] = coeff[3] = 0.0; } - double when; + double when; double value; - double coeff[4]; ///< Used by Curve + double coeff[4]; ///< Used by Curve }; diff --git a/libs/ardour/ardour/types.h b/libs/ardour/ardour/types.h index 4b270f1a7d..9edeffb120 100644 --- a/libs/ardour/ardour/types.h +++ b/libs/ardour/ardour/types.h @@ -325,7 +325,8 @@ namespace ARDOUR { enum SampleFormat { FormatFloat = 0, - FormatInt24 + FormatInt24, + FormatInt16 }; diff --git a/libs/ardour/automation_event.cc b/libs/ardour/automation_event.cc index d5b122cb53..a682526457 100644 --- a/libs/ardour/automation_event.cc +++ b/libs/ardour/automation_event.cc @@ -379,7 +379,7 @@ AutomationList::rt_add (double when, double value) } } } - + if (!done) { _rt_insertion_point = _events.insert (where, new ControlEvent (when, value)); } diff --git a/libs/ardour/enums.cc b/libs/ardour/enums.cc index faa74860f9..91fbda89c5 100644 --- a/libs/ardour/enums.cc +++ b/libs/ardour/enums.cc @@ -204,6 +204,7 @@ setup_enum_writer () REGISTER_ENUM (FormatFloat); REGISTER_ENUM (FormatInt24); + REGISTER_ENUM (FormatInt16); REGISTER (_SampleFormat); REGISTER_ENUM (BWF); diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index e1997df980..0d81384637 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -3599,6 +3599,10 @@ Session::available_capture_duration () sample_bytes_on_disk = 3.0; break; + case FormatInt16: + sample_bytes_on_disk = 2.0; + break; + default: /* impossible, but keep some gcc versions happy */ fatal << string_compose (_("programming error: %1"), diff --git a/libs/ardour/sndfilesource.cc b/libs/ardour/sndfilesource.cc index 8f795db111..6977eef6bd 100644 --- a/libs/ardour/sndfilesource.cc +++ b/libs/ardour/sndfilesource.cc @@ -122,6 +122,10 @@ SndFileSource::SndFileSource (Session& s, ustring path, SampleFormat sfmt, Heade case FormatInt24: fmt |= SF_FORMAT_PCM_24; break; + + case FormatInt16: + fmt |= SF_FORMAT_PCM_16; + break; } _info.channels = 1; |