summaryrefslogtreecommitdiff
path: root/libs/ardour/audiosource.cc
AgeCommit message (Collapse)Author
2015-07-25Use g_open instead of ::open in AudioSource for portabilityTim Mayberry
This is only really for Windows as g_open and ::open are the same thing on other platforms
2015-07-25Use GStatBuf in AudioSource::initialize_peakfile for portabilityTim Mayberry
This was initially part of f89a976f that got reverted
2015-07-25Revert "When peakfiles get opened using a non-glib function (in a ↵Tim Mayberry
non-English locale) make sure that we pass locale-specific paths" This reverts commit f89a976f1a0477fba30bd7117310e6d04b370d68.
2015-07-23When peakfiles get opened using a non-glib function (in a non-English ↵John Emmas
locale) make sure that we pass locale-specific paths
2015-07-17do not carry out a size check on peakfiles for files still being recorded.Paul Davis
The size check (and possible rebuild) causes a crash with MSVC. It would be nice to know more about why.
2015-06-29ensure that working buffers (for gain + mixing) are large enough.Paul Davis
Remove AudioDiskstream and AudioSource _working_buffers_size members, since they are no longer used
2015-06-11comment tweakPaul Davis
2015-06-03check size of peak file before attempting to use it. Rebuild from scratch if ↵Paul Davis
necessary.
2015-06-03when AudioSource::read_peaks() provides start+cnt too close to the end, be ↵Paul Davis
sure to reset expected_peaks and scale to match the corrected values
2015-04-15fix for memory overrun during read_peaks(), from sebastian reicheltPaul Davis
2015-03-21Don't open peakfiles O_NONBLOCK or O_NOATIME.nick_m
O_NOATIME removed due to what appears to be a bug in fuse where open fails. O_NONBLOCK was basically unjustifiable.
2015-03-11Fix windows compilation for merged waveview branch.nick_m
2015-03-11Fix compilation for osx.nick_m
2015-03-11Manual merge of the backend (peakfile reading) part of waveview branch.nick_m
Summary: * use mmap() for the whole peakfile instead of lots of small seek/reads * cache the computed peaks * where possible, open files with O_NOATIME.
2014-12-17Fix various MIDI locking issues.David Robillard
Attempt to make mistakes much less likely in the future by statically requiring caller to pass scoped locks where necessary.
2014-12-14move ScopedFileDescriptor into libpbd and use itPaul Davis
2014-12-14Only attempt to close our peakfile '_fd' if we have a valid handleJohn Emmas
(yesterday's fix was needed in a 2nd place)
2014-12-13Only attempt to close '_peakfile_fd' if we have a valid handleJohn Emmas
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-09-15fix compiler warningPaul Davis
2014-04-04fix typo in commentPaul Davis
2013-09-21Merge remote-tracking branch 'remotes/origin/cairocanvas' into windowsJohn Emmas
Conflicts (hopefully resolved): gtk2_ardour/marker.cc gtk2_ardour/midi_region_view.h gtk2_ardour/region_gain_line.h gtk2_ardour/utils.cc gtk2_ardour/video_image_frame.cc gtk2_ardour/wscript libs/backends/jack/wscript
2013-08-08Cast param for std::time to a pointer of time_tMichael Fisher
- bleeding clang (trunk 186535 v3.4) fails here
2013-08-08Revert "Remove non-portable and unnused header includes"Paul Davis
This reverts commit 7ef79d3f4b02e3d2e71d6888fbedd9b3f9c325c7.
2013-08-08Remove non-portable and unnused header includesPaul Davis
2013-08-04'libs/ardour' - Compiler specific includes and includesJohn Emmas
2013-08-04'libs/ardour' - Main body of changes required for building with MSVCJohn Emmas
2013-07-31fix merge conflict from masterPaul Davis
2013-07-29Cast param for std::time to a pointer of time_tMichael Fisher
- bleeding clang (trunk 186535 v3.4) fails here
2013-07-15use g_unlink() rather than unlink() universally, requires <glib/gstdio.h> in ↵Paul Davis
several files
2013-07-15Use g_stat in AudioSource::initialize_peakfile for portabilityPaul Davis
2013-07-15Use g_rename in AudioSource::rename_peakfile for portabilityPaul Davis
2013-07-15Use g_utime for portability in AudioSource::touch_peakfilePaul Davis
2013-07-15Use g_stat in AudioSource::touch_peakfile for portabilityPaul Davis
2013-07-15Use ::write instead of pwrite in AudioSource::compute_and_write_peaks for ↵Paul Davis
portability This destroys the atomicity of pwrite() and thus suggests that we should do something else to ensure that multithread access to peakfiles (if it does in fact exist) is safe. OTOH, there may be no such thing, since they are designed for the GUI, which is single threaded (for now)
2013-07-15Use ::read instead of pread in AudioSource::read_peaks for portabilityPaul Davis
This destroys the atomicity of pread() and thus suggests that we should do something else to ensure that multithread access to peakfiles (if it does in fact exist) is safe. OTOH, there may be no such thing, since they are designed for the GUI, which is single threaded (for now)
2013-07-13Use boost::scoped_array in AudioSource::compute_and_write_peaksPaul Davis
2013-07-13Use boost::scoped_array in AudioSource::build_peaks_from_scratchPaul Davis
2013-07-13Remove use of goto in AudioSource::read_peaksPaul Davis
2013-07-13Use boost::scoped_array for controlling scope of peak data in ↵Paul Davis
AudioSource::read_peaks
2013-07-13Use boost::scoped_array in AudioSource::read_peaksPaul Davis
2013-07-13 Use boost::scoped_ptr to control scope of peakfile descriptorPaul Davis
2013-07-13Replace conditional peak debugging with DEBUG_TRACE macro usagePaul Davis
Also add some extra debugging info
2013-07-11 Disable peakfile reading and writing on windows for nowPaul Davis
There is no point trying to implement this until it can be tested
2013-07-11Remove non-portable and unnused header includesPaul Davis
2013-07-11Revert "Remove non-portable and unnused header includes"Paul Davis
This reverts commit 7ef79d3f4b02e3d2e71d6888fbedd9b3f9c325c7.
2013-07-11Remove non-portable and unnused header includesPaul Davis
2013-06-20(working) start of an experiment with pyramix-style waveform drawingPaul Davis
2013-06-20new image cache design for waveviews, with various fixes.Paul Davis
Rather than maintain a set of images in a cache, when we no longer have the required waveform data, create a new image that is appropriately centered and extends to roughly twice the screen width (or the limits of the region's source file(s), as necessary)
2013-03-31more work on the suprisingly ongoing filename/path/origin issuePaul Davis