summaryrefslogtreecommitdiff
path: root/libs/ardour/sndfilesource.cc
AgeCommit message (Collapse)Author
2017-10-03Fix session-archive edge-cases, prepare uncompressed archivesRobin Gareus
* don't fork/clone midi regions (default snapshot) * properly handle encoding embedded/external multi-channel files * use dedicated file-extension (prepare for uncompressed archive)
2017-10-03Prepare support for compression levels (archive + flac)Robin Gareus
2017-09-18globally change all use of "frame" to refer to audio into "sample".Paul Davis
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode and video in order to keep the legible
2017-08-18Remove old destructive API (non layered is a dynamic mode) 2/2Robin Gareus
2016-12-27Normalize audio when archiving to fixed-point format.Robin Gareus
2016-12-27Allow gain factor for audio sources.Robin Gareus
In preparation for archiving files as .flac (fixed point), normalized with gain factor.
2016-12-17Hide/remove per-track record-mode in favor of global setting.Robin Gareus
2016-09-25fix detecting .flac formatRobin Gareus
2016-09-21add a SndFileSource c'tor to create .flac encoded file for archivingRobin Gareus
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2015-12-08touch peakfile after closing a SndFileSourcePaul Davis
libsndfile (can|may) update the headers at close, which can lead to the file being marked newer than the peakfile, thus causing a rebuild of the peakfile at session (re)load. Originally detected by Grygorii
2015-11-24update configure time tests and code to use libsndfile 1.0.26's version of ↵Paul Davis
the R64 auto-downgrade-to-WAV code
2015-10-05use quotes for in-tree pbd/glib wrapper includeRobin Gareus
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2015-09-20fix sndfilesource::open return value typo.Robin Gareus
2015-09-17use pbd's gstdio compatibility wrapperRobin Gareus
2015-09-08RF64, RF64 (WAV) and MBWF native file header formatsPaul Davis
2015-09-04Fix invalid error message when selecting directories/folders in Import dialogTim Mayberry
On linux SndFileSource::get_soundfile_info was being called with an empty path value when clicking on a folder in the left side part of the file browser which resulted in an unnecessary error message. On Windows every time a directory was selected in the Import dialog, SndFileSource::get_soundfile_info would fail to open the directory in read only mode and produce an error, but as we don't want to query/open soundfile info for directories anyway just test and return if the path is a directory.
2015-07-27fixes/updates for move to ::open()Robin Gareus
2015-07-25Use g_open and sf_open_fd in SndFileSource for portabilityTim Mayberry
2015-07-17reworked variant of john’s soundfile locale fixRobin Gareus
see 87b89a6 IMPORTANT NOTE: In theory, the correct glibmm function should have been Glib::filename_from_utf8() but I couldn't make that work on Windows and ended up using Glib::locale_from_utf8() instead. sfdb import will therefore need to get re-tested on the other platforms (especially in a non-English locale). If this fix doesn't work we should probably revert to the previous strategy but using the global specifier "::g_open()" explicitly… … and only on PLATFORM_WINDOWS (POSIX #define g_open open) fails regardless.
2015-07-16Revert "Possible fix for http://tracker.ardour.org/view.php?id=6332"Robin Gareus
This reverts commit 1a619472ca0d7514831476bb9be9980ffbd91f46. On Unix systems "#define g_open open" interferes with class member function IMHO this is the wrong approach, the filename should be converted using glib::filename_from_utf8().
2015-07-16Possible fix for http://tracker.ardour.org/view.php?id=6332John Emmas
For sfdb stuff, use glib file functions in preference to ANSI or libsndfile handling. On Windows, we need functions which understand UTF-8 (so that we'll be able to import sound files, even in a non-English locale).
2015-04-20add a pure virtual FileSource::close() method so that FileSource::set_path() ↵Paul Davis
can ensure we no longer have a handle open
2015-03-11remove duplicate codeRobin Gareus
set_header_timeline_position() does exactly that. Also doing it twice may have lead to a NULL-pointer dereference.
2015-02-22fix two other potential issues with leftover 32 bit integers when reading ↵Paul Davis
from sndfilesource. It is less likely that these would cause issues because the variables involved define the size of the data read, which is almost certainly less than the 32 bit limit (i.e. they are not positional). But to keep things clean and to keep questions at bay, make them 64 bit values.
2015-02-22fix incorrect use of int32_t for current position in file while writing to ↵Paul Davis
non-destructive sndfilesources
2015-01-12force complete peak compute.Robin Gareus
Do not skip peaks when creating peak files while recording. Fixes missing peaks in #6127 (TODO: after double-check and sign-off, remove ‘force’ parameter from ::compute_and_write_peaks API)
2014-12-10remove file manager LRU cache from code.Paul Davis
This was a very clever attempt to fix a non-problem. If the platform doesn't have enough file descriptors available then the platform is broken and we're not going to hack around trying to fix it.
2014-11-18Fix incredibly unlikely NULL pointer dereference.David Robillard
2014-11-14add abort() to non-reached codeRobin Gareus
This cleans up a lot of false-positives in static analysis and also helps compilers to optimize code paths in general. (tagging the fatal stingstream operator as ‘noreturn’ is far less trivial)
2014-07-08initial implementation of "bring all media into session folder". Incomplete ↵Paul Davis
but basically functional for audio files
2014-06-10fix crash recovery: add new constructors to SndFileSource, AudioFileSource, ↵Paul Davis
add a new SourceFactory method and finally tweak AudioDiskstream::use_pending_capture_data() to create both the required whole-file and the in-playlist regions
2014-04-14more work on linking file existence and removabilityPaul Davis
2014-04-04clarify comments for SndFileSource constructorsPaul Davis
2013-08-09'libs/ardour' - If the platform is Windows, prevent lengthy caching by ↵John Emmas
flushing imported files on completion of the import
2013-08-04'libs/ardour' - Platform specific changes and includesJohn Emmas
2013-08-04'libs/ardour' - Use 'std::vector' instead of dynamically sized arrays ↵John Emmas
(required to be buildable with MSVC)
2013-07-11Remove non-portable and unnused header includesPaul Davis
2013-01-09minor translation fixes/typos from edogawaPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13812 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-23fix "import at file position" when copying or channel-splitting files on import.Robin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13711 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-10add -Wpointer-arith -Wcast-qual -Wcast-align and others to compile flags, ↵Paul Davis
and fix const cast warnings generated by new flags git-svn-id: svn://localhost/ardour2/branches/3.0@13124 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24Remove over 500 unnecessary includes (including 54 of session.h).David Robillard
It's slightly possible that this causes trivial build failures on different configurations, but otherwise shouldn't cause any problems (i.e. no actual changes other than include/naming/namespace stuff). I deliberately avoided removing libardour-config.h since this can mysteriously break things, though a few of those do seem to be unnecessary. This commit only targets includes of ardour/*.h. There is also a very large number of unnecessary includes of stuff in gtk2_ardour; tackling that should also give a big improvement in build time when things are modified. git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-22remove debuggingPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@12380 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-21more 64bit VM debugging nonsense (svn in the fastest route between my system ↵Paul Davis
and the VM :) git-svn-id: svn://localhost/ardour2/branches/3.0@12368 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-21ugly debugging code to try to track down what is going on the 64 bit build VMPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@12366 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-21a bit more debug on info when we fail to read from a SndFileSourcePaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@12357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11Simplify slightly odd update_length() signature.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@11900 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-01Add comment.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@11778 d708f5d6-7413-0410-9779-e7cbd77b26cf