summaryrefslogtreecommitdiff
path: root/libs
AgeCommit message (Collapse)Author
2016-09-15Use g_rename() instead of ::rename() in Session::cleanup_sourcesTim Mayberry
The paths are in UTF-8 encoding and ::rename expects paths in the system codepage encoding so ::rename will fail for any paths that contain characters that aren't in the system codepage. This fixes Flush Wastebasket on Windows where paths contain characters that aren't in the system codepage(usually most non-ascii characters).
2016-09-15Use g_strerror instead of strerror in ARDOUR::FileSourceTim Mayberry
For consistency when calling glib functions and to get UTF-8 strings for display.
2016-09-15Use ::g_rename instead of ::rename in ARDOUR::FileSource classTim Mayberry
The path is in UTF-8 encoding so use Glib functions to properly support paths containing characters that aren't in the system codepage. This fixes Clean-up Unused Sources on Windows where paths contain characters that aren't in the system codepage(usually most non-ascii characters).
2016-09-14implement file-[un]archive progress reportRobin Gareus
2016-09-14Add analyse and soundcloud-upload properties of ExportFormatSpecification to ↵Tim Mayberry
xml state
2016-09-14Check a return value from 'g_stat()'John Emmas
Some Mixbus users (on Windows) have reported seeing ludicrously high figures for the amount of disk space that'll be recovered if they choose to clean up unused sources. I can't see anything obviously wrong in Ardour's code - except for one situation where we don't check a return value after calling 'g_stat()'. On Windows, the relevant path should be (hopefully!) in UTF8 format and the first thing that g_stat() does is to convert it to UTF16. If that conversion fails for some reason, g_stat() will return an error status and statbuf will be uninitialized - but at the moment, we're not checking this. As an experiment, let's check the returned value and find out if these user reports go away. Unfortunately, if it does fix the problem then we've got an even bigger problem - because somehow, a Windows user can create source files with invalid names which can't be later deleted!!
2016-09-13Fixes 7004 - Ardour crash on Just Quit when AudioEngine is stopped. ↵Nathan Stewart
AudioEngine::stop() if running() is not true and _backend->stop() is true, mutex was being unlocked without being locked.
2016-09-13change all MIDI read-from-source to map all events into the loop-range for ↵Paul Davis
seamless looping (if using)
2016-09-13debug output formattingPaul Davis
2016-09-13do not call MidiRingBuffer::skip_to() when getting a MidiDiskstream's ↵Paul Davis
playback buffer, and do not use port offset to shift data in time either (it should be correct)
2016-09-13make MidiBuffer::read_from() use "dst_offset" correctly to alter the time of ↵Paul Davis
events read from the MidiBuffer
2016-09-13extend Evoral::Range<T> to offer ::length() and ::squish()Paul Davis
The latter maps a T into a range, using loop semantics
2016-09-13add back event offsetting into MidiRingBuffer::read() (even if we never ↵Paul Davis
really use it)
2016-09-13NOOP: spacing and indentationPaul Davis
2016-09-13show "this" in MidiRingBuffer::dump()Paul Davis
2016-09-13slight DEBUG_TRACE enhancement for MidiPort::flush_buffers() outputPaul Davis
2016-09-13NO-OP: indentationPaul Davis
2016-09-13Delivery::run() now offsets data delivered to MIDI ports by the global port ↵Paul Davis
offset if the output is then re-used, MIDI data is readjusted to not use the global port offset
2016-09-13use class-static method rather than pretend there is a per-member value for ↵Paul Davis
Port::port_offset()
2016-09-13provide Session::declick_out_pending()Paul Davis
2016-09-13second part of: change offset arguments to various <T>Buffer::read/merge ↵Paul Davis
methods from framecnt_t to frameoffset_t
2016-09-13change offset arguments to various <T>Buffer::read/merge methods from ↵Paul Davis
framecnt_t to frameoffset_t
2016-09-13add a new DEBUG enum for MidiRingBufferPaul Davis
2016-09-13add option to skip unzipping bundled demo sessionsRobin Gareus
2016-09-13Add support for built-in file/url unzip/untarRobin Gareus
This introduces new build-dependency: libarchive (http://www.libarchive.org/)
2016-09-13Remove duplicate header include from libardour source fileTim Mayberry
2016-09-13Add missing header include guards in canvas libraryTim Mayberry
2016-09-13Put ARDOUR::SystemExec implementation inside ARDOUR namespace in source fileTim Mayberry
2016-09-13Add missing include guards in libardour header filesTim Mayberry
2016-09-12Expose Location::name() to LuaJohannes Mueller
2016-09-12Add a Lua wrapper to Glib::build_filename()Robin Gareus
2016-09-12Expose `Locations::remove()` to LuaJohannes Mueller
Clearing location markers is a frequent task and should be automizable. For example it is handy to clear all the markers when restarting the recording from scratch after a failed recording.
2016-09-12add request_play_loop() & get_play_loop() to luabindingsThomas Brand
2016-09-11Fix #6774, Moving start/end markers doesn't set Session as modified/dirtyTim Mayberry
If a Session is saved and then the start or end session markers are moved, closing the Session will not result in "Unsaved Session" dialog being presented even though the Session has been modified. This change sets the Session as modified when either the Session start or end markers are modified.
2016-09-07for files imported without copy, _origin is a full path. We should use this ↵Paul Davis
when looking for the file at session load
2016-09-07correct comment for FileSource::find()Paul Davis
2016-09-06Expose record enable/disable to Lua bindingsJohannes Mueller
2016-09-07Fix incorrect estimate of future revision.nick_m
2016-09-07Load midi region length and start correctly in sessions modified by v5.0 -> ↵nick_m
5.3-41
2016-09-06remove duplicate enum -- copy/paste typoRobin Gareus
2016-09-06expose PeakMeter Lua bindingsRobin Gareus
2016-09-06Set start_pulse and length_pulse from state, neither need to be a PBD::Property.nick_m
2016-09-05Fix the tempo note-type hallucination.nick_m
- after reports that a tempo with non-4.0 note type would produce a ramp in the preceding section, an incorrect assumption was made leading to a bogus 'fix' that redefined Tempo's pulses_per_minute(). the real fix was simple: the ramp's function constant was calculated using the note type of the proceding tempo rather than the current one. - this patch reverts e82482e8e9c and a4d67279e0086258 and maintains the old definition of Tempo::pulses_per_minute()
2016-09-04Sanity check for TempoMap::get_grid ()nick_m
2016-09-04Revert part of d50df8279966.nick_m
2016-09-03Fix various paste errors in tempo.cc. Should fix recent regressions.nick_m
2016-09-02Use the stored beat to recalculate pulse when setting position as sub_num is ↵nick_m
irrelevent.
2016-09-02Consolidate the meaning of beat divisions.nick_m
- bar and beat snapping is BBT beat based while other music divisions are quarter note based. Reflect this in the way exact_beat/qn is calculated.
2016-08-31OSC: don't restore User preset before writing new oneLen Ovens
2016-09-01Attempt to clarify tempo map comments.nick_m