Commit graph

194 commits

Author SHA1 Message Date
Paul Davis
8436f392b6 tweak presentation of SMF tempo option 2016-12-16 14:14:08 +00:00
Paul Davis
7bf10eda75 show tempo information for MIDI files in preview pane; start to offer choice about using tempo map when importing 2016-12-16 13:46:13 +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
9a7823f139 change ordering of options for multichannel import 2016-12-14 11:46:26 +00:00
Paul Davis
eb58c4108f improving logic/flow for SMF type 1 files part 1:
check num tracks for type1 and offer multichannel option if appropriate
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
Paul Davis
cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
Robin Gareus
7745a37394 NO-OP whitespace 2016-07-10 15:59:50 +02:00
Robin Gareus
8ff46aa9c6 re-layout import dialog (better fit for narrow screens)
The instrument dropdown can be very wide (depending on available synths)
and combined with other dropdowns and the copy-checkbox in a single row,
the min. width was well above 1400px.
2016-07-10 14:08:24 +02:00
Robin Gareus
f42fc3e45d hide Freesound tab (until it gets fixed) 2016-05-24 22:45:47 +02:00
Robin Gareus
fd56c33f20 import audio/midi at "session start by default
Too many users report they import their first tracks and can't find them.

Previous default was "at file timestamp". If a file has no timestamp,
the import dialog shows "00:00:00:00" but in absence of a timestamp,
Editor::add_sources() first checks target tracks and adds add it after
the last region, then falls back to use preferred edit position as
insert point.

In the rare case where a file has timestamps it may show up a few hours
in the future.

conclusion: import-at-timestamp is not a good default.
2016-05-22 22:13:03 +02:00
Paul Davis
56770ff0af change GTKOSX macro constant to use __APPLE__ instead 2016-02-22 15:31:25 -05:00
Paul Davis
dd32c05cda GainMeter(Base) now has an explicit gain control given to it 2016-01-25 11:47:44 -05:00
Robin Gareus
f50a87e408 a shot in the dark to work-around windows file-import limit.
When importing to new tracks, newly created tracks are selected

Editor::track_selection_changed()
-> SoundFileOmega::reset()
-> SoundFileOmega::reset_options()
-> check_info() fails ->  Glib::signal_idle() error message.

it is unclear why check_info would fail in this case since it
worked in the first place..  best guess: a concurrency issue
opening the file.
2015-12-08 00:29:19 +01:00
Robin Gareus
23b975e172 use API to add system-specific volumes - #6643 2015-10-16 19:07:25 +02:00
Robin Gareus
696b89b71a rework 8b80fe0, use std::string, not char* 2015-10-15 11:24:15 +02:00
Robin Gareus
8b80fe04ad Avoid calls to Glib::ustring << operator at all cost.
Glib::operator<<(std::ostream&, Glib::ustring const&) involves
loadlocale which is not thread-safe on OSX.

This fixes various seemingly random crashes on OSX.
2015-10-14 22:46:15 +02:00
André Nusser
1df97b4174 Fix wrong 'Import to Region List' default on first call. -fixes #6631 2015-10-09 02:05:41 +02:00
Robin Gareus
2397429e99 use quotes for in-tree pbd/glib wrapper include 2015-10-05 22:15:18 +02:00
Robin Gareus
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
Paul Davis
4dc63966f0 globally remove all trailing whitespace from ardour code base.
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
Robin Gareus
cff0852df9 fix initial state of Import Dialog 2015-09-20 20:02:40 +02:00
Robin Gareus
f27800ea41 use pbd's gstdio compatibility wrapper (GUI) 2015-09-17 14:38:09 +02:00
Tim Mayberry
6b019a4953 Move UIConfiguration Singleton into UIConfiguration header
This removes the direct dependence on ardour_ui.h from 39 files
2015-09-16 16:55:17 -04:00
Robin Gareus
53cdc8046f catch duplicate shortcut folders. 2015-09-06 18:15:48 +02:00
Tim Mayberry
b3b5646a30 Remove Apply button in Import dialog/Window and change OK to "Import"
Don't close the window when clicking on Import. Changing "OK" to "Import" makes
it clear what action is being taken by the button. I quite frequently imported
several files from different directories using "Apply" and then would click on
OK to finish using the dialog only to have the last import occur again
unintentionally.

Another option would of been to change "Apply" to "Import" and "OK" to "Import
and Close" and not have a Close button.
2015-09-04 09:45:09 +10:00
Tim Mayberry
303b27a69b Change Cancel button in Import Dialog to Close button
This button closes the window, it doesn't actually cancel any importing that
has taken place and cancelling the import in progress is done by the Cancel
button in popup progress dialog
2015-09-03 22:32:53 +10:00
Robin Gareus
9da934ff29 reworked variant of john’s soundfile locale fix
see 87b89a6

IMPORTANT NOTE: In theory, the correct glibmm function should have been Glib::filename_from_utf8() but I couldn't make that work on Windows and 
ended up using Glib::locale_from_utf8() instead. sfdb import will therefore
need to get re-tested on the other platforms (especially in a non-English locale).


If this fix doesn't work we should probably revert to the previous strategy
but using the global specifier "::g_open()" explicitly…
… and only on PLATFORM_WINDOWS  (POSIX #define g_open open) fails regardless.
2015-07-17 16:03:24 +02:00
Robin Gareus
87b89a605f Revert "Possible fix for http://tracker.ardour.org/view.php?id=6332"
This reverts commit 1a619472ca.

On Unix systems "#define g_open open" interferes with class member function
IMHO this is the wrong approach, the filename should be converted using
glib::filename_from_utf8().
2015-07-16 19:29:45 +02:00
John Emmas
1a619472ca Possible fix for http://tracker.ardour.org/view.php?id=6332
For sfdb stuff, use glib file functions in preference to ANSI or libsndfile handling. On Windows, we need functions which understand UTF-8 (so that we'll be able to import sound files, even in a non-English locale).
2015-07-16 18:27:52 +02:00
Robin Gareus
4d6ac2a835 auditioning [external] files does not need peaks.
fix inspired by #6227
2015-04-02 18:53:05 +02:00
Tim Mayberry
b5c9a92a58 Move Timers/Timeouts from ARDOUR_UI into functions in timers.h and use PBD::Timers 2015-01-01 19:04:14 +07:00
David Robillard
4facff3b8e Gracefully handle MIDI parse failure. 2014-12-30 23:10:11 -05:00
David Robillard
1de39b8971 Add instrument selector to import dialog.
Idea here is for importing large multi-track MIDI files to be immediately
listenable upon play without tediously adding a ton of instrument plugins
manually.
2014-12-24 20:07:10 -05:00
Paul Davis
64fa63212f move all (G)UI related configuration parameters into UIConfiguration, not RCConfiguration 2014-12-22 13:39:46 -05:00
David Robillard
2588b1cac9 Trim the include tree. 2014-11-30 23:56:19 -05:00
Robin Gareus
6b3a8915f3 add abort() to non-reached code
This cleans up a lot of false-positives in static analysis
and also helps compilers to optimize code paths in general.
(tagging the fatal stingstream operator as ‘noreturn’ is
far less trivial)
2014-11-14 11:30:08 +01:00
Robin Gareus
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
Paul Davis
8c9749e42f merge with master and fix 4 conflicts by hand 2014-06-02 11:32:13 -04:00
Damien Zammit
2f6065b32c Fixed problem where importing invalid midi files caused crash. 2014-04-29 06:48:29 +10:00
John Emmas
f5602071ce Add internationalization support for my newly committed 'bundle_env_msvc.cc'
(also, move a #included file to keep MSVC happy)
2014-03-27 10:16:28 +00:00
Robin Gareus
1374501727 tempo match midi auditioning - #5881 2014-03-10 00:48:48 +01:00
Paul Davis
2ba58dfe65 Merge branch 'master' into cairocanvas 2014-01-29 16:08:52 -05:00
Paul Davis
b8d31a370a comment unused function argument 2014-01-27 14:20:19 -05:00
Paul Davis
7000afdc66 fix merge conflict with master 2014-01-23 13:41:20 -05:00
Robin Gareus
acaf46c27d prepare GUI for auditioning midi files 2014-01-22 15:30:27 +01:00
Robin Gareus
02533dd0a4 sfdb's clock-states are not part of the session-state, use transient clock
fixes issue with 'show import dialog' marking session as modified.
2014-01-21 22:20:44 +01:00
Paul Davis
6acdfc69b7 visibility macros and flush() added to SrcFileSource; merge with master 2014-01-19 17:54:47 -05:00
Robin Gareus
8b71e40fbd audition: resampler use same quality as import 2014-01-19 00:45:08 +01:00
Robin Gareus
73c6122591 towards a SRC source + resampling during audition 2014-01-18 13:51:05 +01:00