summaryrefslogtreecommitdiff
path: root/libs/ardour/region.cc
AgeCommit message (Collapse)Author
2018-09-20switch transport masters to use properties and notify via PropertyChangedPaul Davis
2018-09-13Implement new Enclosed region equivalence modeColin Fletcher
2018-08-18NO-OP: whitespaceRobin Gareus
2018-08-18Initialize uninitialized variableRobin Gareus
2018-02-11SoloSelection: libardour part.Ben Loftis
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-06-22Remove LocaleGuard from ARDOUR::Region classTim Mayberry
Property conversions <=> string use PBD::to_string/string_to so float conversions don't need to be protected by a LocaleGuard
2017-04-19Use XMLNode::get/set_property API in ARDOUR::RegionTim Mayberry
2017-04-19Use PBD string conversion functions in PBD::Property classTim Mayberry
2017-04-19Use ID::to_s() in libardour instead of ID::print()Tim Mayberry
2017-02-15unconditionally set region quarter note in set_position().nick_m
- this fixes incorrect timing of new regions recorded before the music origin.
2017-02-04ensure region _quarter_note is set (factory).nick_m
2017-02-04ensure region _quarter_note is set in offset ctor..nick_m
2017-02-04rework snapnick_m
snap now fills in a struct (MusicFrame) which contins a snapped frame along with a music divisor. this gives useful information wrt magnetic snap which may or may not have rounded to an exact musical position. region position may now be set musically (using quarter notes for now). this patch fixes several problems in the current code: - dragging a list of music-locked regions now maintains correct musical offsets within the list. - splitting regions using magnetic snap works correctly (#7192) - cut drag should now work correctly with magnetic snap. - musical length of split midi regions is no longer frame based.
2016-11-16a better fix for 6ed8c113a25 (scope)nick_m
2016-11-16Region:;set_state() should always set quarter_note.nick_m
- fix for 4.x sessions showing notes stacked at session start.
2016-11-11remove debugging outputnick_m
2016-11-11rename Region pos_beats -> quarter_notenick_m
2016-11-11remove commented code.nick_m
2016-11-11rename Region pulse to pos_beats. use new beat distance api where required.nick_m
- add more debugging output detecting regions whose beat and frame position do not align on a playlist. this is required as a check as we have never used frame rounding on constant tempi before 8884a5723dc
2016-11-11Refactor tempo api, include quarter-note distance in frames method.nick_m
- moves frame rounding up to TempoMap, which is needed in order to calculate pulse distance without frame rounding. - the time unit for tempo is still minute, but this now also applies to meter sections. (new audio locked meter sections no longer require a frame position). - there is no longer a discontinuity in the pulse for audio-locked meter/tempi. - temporarily add debugging output in Region::set_position() to test for region beat not matching region frame.
2016-10-25Don't recalculate region beat position on session load, fix AudioTime thinko.nick_m
2016-10-18Music locked regions stay positive after tempo map change.nick_m
2016-10-16Minor cleanup (don't set pulse twice in Region::set_position()).nick_m
2016-10-09Ensure we have a region _beat for legacy sessions, set _pulse ↵nick_m
unconditionally when loading from xml.
2016-10-01Region pulse is no longer a property.nick_m
2016-09-02Use the stored beat to recalculate pulse when setting position as sub_num is ↵nick_m
irrelevent.
2016-08-31Keep region beat and pulse separated, ensure pulse is updated when setting ↵nick_m
position.
2016-08-31Add a pulse property to region.nick_m
- separates ardour beat (meter-based) and note (pulse-based) musical position.
2016-08-14Audio-locked midi region fixes.nick_m
- don't alter region frame length on tempo change or position change. - set region _start correctly (see comments) on tempo map change. - ensure audio-locked region's beat is set on tempo map change
2016-07-23Make Region's _beat a PBD::Property.nick_m
- fixes incorrect beat setting on undo for various region operations.
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2016-07-10remove reference "const int32_t&" -> const int32_t"Robin Gareus
this simplifies lua-bindings and also let's the compiler worry about constant primitive types.
2016-07-10Always set the musical position in Region::recompute_position_from_lock_style().nick_m
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-06-28remove debug output and add a few suggestive commentsPaul Davis
2016-06-28changes in logic used by source cleanup to avoid endless recursion in ↵Paul Davis
sessions with deeply nested/recursive compound regions. This also fixes some potentially dangerous cleanup logic related to two sources with the same name (but different paths)
2016-06-11Fix many offset errors when drawing notes in midi regions that have been edited.nick_m
- hopefully this can close bugs such as 6270 & 6793
2016-06-07Region ctor inherits position, start and beat.nick_m
2016-06-07Fix initialization of Region::_beat.nick_m
2016-06-07Region always sets position before length.nick_m
2016-06-06Consolidate notifications when MidiRegion changes length due to position change.nick_m
2016-05-27Rwbi ramps - midi regions resize when tempo map changed.nick_m
2016-05-27Tempo ramps - rename for consistency, remove some testing code, add meter ↵nick_m
based bbt->pulse conversions.
2016-05-27Tempo ramps - fix save/restore of region position_lock_style.nick_m
2016-05-27Tempo ramps - update midi regions and locations when dragging tempo.nick_m
- also make locations and regions use a double beat rather than bbt for musical position.
2016-05-07fix LocaleGuard contstructor (3dc77280)Robin Gareus
2016-05-05we always only use the "C" locale when saving.Robin Gareus
2016-05-04OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one)Paul Davis