summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-07-10Simplify Editor::mouse_add_new_meter_event() a bit.nick_m
2016-07-10Tempo map updates.nick_m
- cleanup audio-locked meter removal code - recompute and warn if map is left unsolved due to adding a metric - handle corner case wrt overlapping audio-locked musical sections.
2016-07-10Fix long-standing spelling bug.nick_m
- should be a no-op.
2016-07-10Fix missing tempi recompute, improve adding meter/tempo failure.nick_m
2016-07-10Stop passing references to things that may disappear when a metric section ↵nick_m
is replaced.
2016-07-10Fail properly when adding a new audio locked meter's tempo.nick_m
2016-07-10Check meter/tempo section exists in copy drag.nick_m
2016-07-10Indicate meter frame even when adding a music-locked meter from the gui.nick_m
2016-07-10Fix broken meter manipulation in exact_beat.nick_m
2016-07-10Back to using exact beats for midi region start_beats calculation when trimming.nick_m
- seems to work quite well, but not tested on live recording.
2016-07-10Fix bad comment.nick_m
2016-07-10Use frame-based (non-exact) beat calculation to set new start in midi region ↵nick_m
trim.
2016-07-10Experimental patch to ensure playback buffer bounds use minimal beat->frame ↵nick_m
rounding.
2016-07-10AudioPlaylist doesn't double-notify that contents have changed if bounds ↵nick_m
have changed.
2016-07-10AudioRegionView - don't do coverage frames unless we're in stacked mode.nick_m
2016-07-10Editor region list only updates columns that have changed,nick_m
2016-07-10Remove extra ContentsChanged signal on tempo map change.nick_m
2016-07-10Make bbt ruler visible in default session.nick_m
2016-07-10Fix note trimming over tempo changes, correct note length properly when ↵nick_m
resizing midi region.
2016-07-10Restore earlier midi region trim display.nick_m
2016-07-10Exact beat for added regions.nick_m
2016-07-10Only update midi regions having a playlist after tempo map change, fix 0 ↵nick_m
length regions from drawing tool.
2016-07-10Avoid the use of dynamic_cast in TempoMap for performance improvement.nick_m
- review / comment would be appreciated here.
2016-07-10Use Note::set (Rect) for speed improvement when rendering notes.nick_m
2016-07-10Add Note::set (Rect) for optimisation purposes (minimise begin/end changes)nick_m
2016-07-10Temporary work-around for note colour.nick_m
2016-07-10Make TempoMap::bbt_at_frame() more efficient.nick_m
- should be a no-op
2016-07-10Show correct bbt representation of region length in region list.nick_m
- fixes single-tempo assumption.
2016-07-10Improve performance of automation range moves.nick_m
2016-07-10Quick fix to get trim working again (bahaving oddly during trim right now)nick_m
2016-07-10Fix ordering thinko in note selected colour.nick_m
2016-07-10Complete the task of Playlist::flush_notifications ()nick_m
2016-07-10Performance - don't redisplay model immediately in ↵nick_m
MidiRegionView::enable_display (). - allows MidiRegionView::reset_width_dependent_items () to do it as intended (i think).
2016-07-10Performance tweak - NoteBase doesn't recalculate colour as often.nick_m
- not sure if we can store this atm.
2016-07-10Improve midi model redraw performance by caching colours.nick_m
2016-07-10Improve the performance of TempoMap::frame_at_beat ().nick_m
- should be a no-op
2016-07-10Use mostly beat-based calculation for displayed midi note position.nick_m
2016-07-10Remove frame conversion for MidiRegionView::note_in_region_range(), speed up ↵nick_m
tempo dilation
2016-07-10Paste uses exact beats. rework _start_beats calculation in copy-with-offset ↵nick_m
ctor.
2016-07-10Exact beat - provide audio->music mapping for region split.nick_m
- for those not in the know, this series provides a way to remove the temporal distortion introduced when using an audio frame-based gui for music-locked objects. In short, the gui uses an audio frame representation to move objects. It displays the object using frame_at_beat(), quantizing the time value to audio frames. This is fine until the user selects that frame but expects it to be interpreted as a beat. Thus beat_at_frame() would not produce the user-expected beat (temporal quantization error of up to 0.5 audio samples). This is one method of mapping audio time to music time accurately.
2016-07-10Make some musical operations on music-locked regions operate in beats.nick_m
- use exact beats to determine frame position. - see comments in tempo.cc for more. - this hasn't been done for split yet, but dragging and trimming are supported.
2016-07-09move latency-recompute into dedicated thread.Robin Gareus
this fixes an issue with jack1 and jack_latency_recompute() since must not send a server request from inside the server callback.
2016-07-09handle internal-sends from audio to midi bussesRobin Gareus
2016-07-09commence testingRobin Gareus
2016-07-09move LatencyChanged detection from Plugin to Processor (plugin-insert)Robin Gareus
* support all Plugin APIs (not implementation specific) * also check for latency changes when plugins are hard en/disabled
2016-07-09Make MIDI busses possible targets of internal sendsJulien "_FrnchFrgg_" RIVAUD
The session only added an internal return to new audio busses, and so only those were proposed in the "New Aux Send" list. Also add the return to new midi busses, now that internal sends know how to deal with midi.
2016-07-09Make internal sends aware of non-audio dataJulien "_FrnchFrgg_" RIVAUD
When most internal sends are created, they are given a panner shell which is then responsible for audio dispatch. Other data types were left there without handling them at all. Ensure that all available data is sent provided the internal send has enough outgoing buffers.
2016-07-09Make Delivery::run more Datatype-agnosticJulien "_FrnchFrgg_" RIVAUD
Note that checking the number of output ports is not needed because IO::copy_to_outputs() will stop if there are less ports of the right type than buffers (or even none).
2016-07-09Assert that nobody calls IO::copy_to_output with empty bufsJulien "_FrnchFrgg_" RIVAUD
IO::copy_to_output() crashed if there was no channel to copy from. Since all callers seem to check before calling, just assert() that it is not the case.
2016-07-08fix port-sort order for good.Robin Gareus
TODO find out how to make std::set::find() work with custom sort order, as std::find may only be O(N) and not O(log (N)).