Commit Graph

188 Commits

Author SHA1 Message Date
Paul Davis cce695d33a changes required by fixing ambiguities in timepos_t/timecnt_t API (GUI edition) 2021-08-13 12:51:31 -06:00
Paul Davis a41a1ffa04 use a better initializer for region creation during import 2021-08-13 12:51:30 -06:00
Paul Davis 18d64f0402 change all Region::nt_*() methods to names without the nt_ prefix (GUI version) 2021-08-13 12:51:30 -06:00
Paul Davis ae01dafcce use Temporal::set_thread_sample_rate() rather than explicit assignment 2021-08-13 12:51:30 -06:00
Paul Davis e1620a22cf temporal thread init for import thread 2021-08-13 12:51:30 -06:00
Paul Davis 60d1c5f722 remove tempo map from Session 2021-08-13 12:51:30 -06:00
Paul Davis c434289973 remove lock, _dirty and _generation nonsense from TempoMap (pre-RCU management) 2021-08-13 12:51:30 -06:00
Paul Davis 7ef11dc698 continued work on using new tempo map API (before switch to RCU) 2021-08-13 12:51:30 -06:00
Paul Davis f67029bd02 random commit to facilitate trivial move of work from laptop back to main system 2021-08-13 12:51:29 -06:00
Paul Davis 2a08e4bdaa continued work on timeline types conversion. in theory, just editor_ops.cc remains 2021-08-13 12:51:29 -06:00
Paul Davis 7433bc27e0 intermediate, unfinished snapshot of ongoing timeline types work on GTK GUI 2021-08-13 12:51:29 -06:00
Paul Davis f4490f54c5 change Timecode::BBT_Time to use Temporal namespace, plus a couple of other minor changes to enable compilation
This still uses the tempo map object in libs/ardour, not the new one in libs/temporal, and isn't likely to be functional
(though it could be)
2021-08-13 12:51:28 -06:00
Paul Davis 636f1331e8 stop using ripple callback API, add Editor::should_ripple() and Editor::do_ripple() to manage rippling 2021-08-13 12:51:27 -06:00
Paul Davis 0e2bd5383c GUI changes to follow new Playlist::ripple() API
Current ripple callback does nothing at all
2021-08-13 12:51:27 -06:00
Robin Gareus 2b066293fb
Set playlist ID when importing to new tracks
This amends 730a0954 and b27bb586.
This also restores the original API for do_import()
and do_embed() as used by Lua scripts.

Note that this uses distinct IDs when importing both audio
and MIDI in the same DnD request.
2021-07-08 05:28:10 +02:00
Robin Gareus b27bb586d0
Fix import, partially revert 730a0954d7 for now 2021-07-07 19:16:53 +02:00
Ben Loftis 730a0954d7
Playlist UI Tweaks: assign a pgroup_id on Import (gtk part) 2021-07-03 19:06:04 +02:00
Robin Gareus 445f9a51bf
Fix ripple undo/redo
Ripple edit undo/redo needs a "recursive diff" of all regions
in the playlist. To work properly owned changes have to be
cleared first, previously unrelated edits were be collected too.

This includes a more consistent version of
7a89d56009 using rdiff() instead of explicitly
saving region diffs.
2021-05-23 17:42:33 +02:00
Paul Davis 600e959db5 set a boolean flag as needed to break out of MIDI tempo map import 2021-05-08 18:38:39 -06:00
Paul Davis 78d56daf0a fix position of imported MIDI markers
Note: this fix may imply that the same change needed when importing a tempo map
2021-05-08 18:38:19 -06:00
Paul Davis 3e47057609 import process now allows optional import of MIDI markers/cues 2021-05-07 14:58:16 -06:00
Robin Gareus 5b1a8f79bc
Block periodic saves while importing
Resampling or copying files during import can take a long time.
If a save, or pending save is called while importing,
it is postponed until after import has completed.
2020-05-19 18:31:55 +02:00
Robin Gareus 7476e92403
Remove explicit save for every imported file 2020-05-19 18:10:05 +02:00
Paul Davis fea7834e78 do not reset import status to cancel for every path imported before starting; fixes failure of cancel to stop import 2020-04-17 12:40:28 -06:00
Paul Davis f8b16e9e83 remove a few cerr outputs and change a couple to use cout, since they are not errors 2020-03-25 11:39:32 -06:00
Paul Davis a4d7b45fe0 remove destructive/tape mode tracks 2020-03-17 16:31:49 -06:00
Robin Gareus 3a9a9f247f
Clear import-status shared-ptr<> after use
Previously "Sequence files" set import_status.track and never
reset() the shared pointer. This resulted in various follow up
issues.
2020-02-25 02:37:52 +01:00
Todd Naugle 22e5374389 Always set the natural position timestamp when importing audio files.
If the file has a timestamp, it should be set in the region during import.
This keeps the BWF timestamp from being lost and allows the region context
menu item "Move to original Position" to work.

It does not affect where the region will be positioned during import. That
still follows the import dialog menu selection (playhead, session start,
etc). It just maintains data that the user can decided to use if needed.

This change also allows files to be imported to the source list and then
later placed on the timeline in the correct timestamped position.
2020-02-24 13:16:32 -06:00
Robin Gareus 2b55d6dce3
First batch of MessageDialog replacements 2019-12-14 23:44:01 +01:00
Robin Gareus c5e46ffd30
UI limitations for mp3 import 2019-12-06 18:19:01 +01:00
Robin Gareus 4050ca5633
Update GPL boilerplate and (C)
Copyright-holder and year information is extracted from git log.

git history begins in 2005. So (C) from 1998..2005 is lost. Also some
(C) assignment of commits where the committer didn't use --author.
2019-08-03 15:53:15 +02:00
Robin Gareus 50303d90bd
NO-OP: whitespace, indent 2019-04-08 20:58:18 +02:00
Robin Gareus c5c4cd0246 Fix importing tempo-maps for non-integer pulsed time-signatures 2017-10-30 22:24:21 +01:00
Paul Davis 30b087ab3d globally change all use of "frame" to refer to audio into "sample".
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-09-18 12:39:17 -04:00
nick_m 1399ef391d Remove redundant beat arg from TempoMap::add_meter
BBT time should be enough to determine the beat.
2017-07-22 02:15:20 +10:00
Robin Gareus f9e5e4360e Move more Gtkmm2ext widgets into libwidget 2017-07-17 21:06:04 +02:00
Thomas Brand 63ea7b6516 NO-OP whitespace (updated GH PR #357) 2017-07-01 19:28:26 +02:00
nick_m d5fad959e6 probable fix for importing tempo maps that use non-quarter note pulse.
- actually i'm not certain that this is correct,
	  but it works ok Beethoven's fifth.
2017-02-27 20:16:10 +01:00
nick_m 97c4c2a28c complete changes to tempo type.
- this implements in the intention behind the previous commit.
	  a tempo mark is constant until its end has been changed by a
	  shift-drag on the next marker.
2017-02-27 20:16:10 +01:00
Paul Davis f4cb567fdb use centralized SMF tempo method in both places where we show it 2017-02-08 19:07:28 +01:00
Robin Gareus 7960e1ddbf GUI follow up for new-MIDI-track API change 2017-01-20 21:47:09 +01:00
nick_m 3060a458eb allow importing tempo maps at selected position. 2017-01-06 02:14:17 +11:00
nick_m b95ab61ce9 allow import of Beethoven's fifth.
- more popular tunes to follow.
2017-01-05 03:49:59 +11:00
nick_m 31ef417cfe fix import of multiple time signatures. 2017-01-05 00:13:43 +11:00
nick_m 27b95300e2 add frame parameter for Meter ctor and TempoMap::replace_meter(). allow for various failures. 2016-12-19 04:02:01 +11:00
Paul Davis cd64f17a9c initial attempt at importing SMF tempo maps during MIDI import.
Still with debug output
2016-12-16 16:49:52 +00:00
Paul Davis ebc7eabea2 add arguments (unusued) to control whether or not SMF tempo map is used during import 2016-12-16 14:57:14 +00:00
Paul Davis 9e4b972286 GUI changes to allow user to specify how/if to use SMF track/instrument names during import 2016-12-14 12:31:16 +00:00
Paul Davis 42d5573e78 temporary default value for ImportStatus.midi_track_name_source 2016-12-14 11:46:26 +00:00
Robin Gareus 2a27cc4758 GUI support for type-0/1 SMF import (display channel/track count)
This needs further work:

Type-1 SMF are always
   "One [Ardour] track per [MIDI] track"

Only type-0 SMF have the option
   "One [Ardour] track per [MIDI] channel"
and
   "One [Ardour] track per [MIDI] file"


This is ambiguous with multi-channel audio or multiple selection,
mixed audio+midi and worse with mixed type0/1 .mid selection.

This calls for a dedicated dropdown to select MIDI Import Disposition
for type-0 SMF.
2016-10-05 21:01:21 +02:00