13
0
Commit Graph

17873 Commits

Author SHA1 Message Date
463bd470e8 Don't hide Audio Setup dialog when clicking 'OK' if engine fails to start
This has to be handled in two places, in ARDOUR_UI::do_audio_midi_setup and in
the dialogs response handler and in as the window can also be triggered via the
window action manager.
2015-10-01 09:10:19 +10:00
2768ce9b05 Use AudioSetupDialog as parent of the error message popup when failing to start engine
Without a session loaded this makes the message dialog appear in front of the
AudioSetup dialog instead of randomly up in the top left somewhere. This does
mean though that if the AudioSetup dialog is not visible the error message
popup will appear randomly up in the top left(at least on windows, it seems
fine on linux) but I will fix that shortly.
2015-10-01 09:10:19 +10:00
dcf327f86a Return meaningful error codes when ALSA backend fails to start
Unfortunately it seems that in zita-alsa-pcmi doesn't set state() correctly in
some cases. Setting an invalid SR doesn't display the correct error message,
first guess would be that set_hwpar is failing and state() is not
representative of the actual error.
2015-10-01 09:10:19 +10:00
aa713fcd83 Return meaningful error codes when PortaudioBackend fails to start
So they can be used to give a contextual error message in the GUI
2015-10-01 09:10:19 +10:00
f178152114 Use portaudio error codes in the PortaudioIO class.
Having error codes defined in PortaudioIO means it is not dependent on the
ErrorCodes in AudioBackend but it doesn't really make sense to have another
set, so just use the PA ones until they become insufficient.
2015-10-01 09:10:19 +10:00
d19605aeaa Use AudioEngine::get_last_backend_error in message dialog when failing to start engine
If a backend is not returning AudioBackend::ErrorCode values to indicate the
type of error then the default string will be returned which is the same as
what was previously displayed.
2015-10-01 09:10:19 +10:00
d85ab8af89 Reinterpret the return value of AudioBackend::start as AudioBackend::ErrorCode
This will allow backends to return a more meaningful error message. Eventually
an error code could be returned by AudioEngine::start and the GUI can then use
AudioBackend::get_error_string to convert the error into a translated error
message directly, or it may be desirable to define its own error messages.

The reasons for not doing that right now is that this is a workable solution
with the least change required.
2015-10-01 09:10:19 +10:00
9a7f96f15a Add a couple of error codes to AudioBackend::ErrorCode
Also use the error message from ARDOUR_UI::reconnect_to_engine as the default
error string
2015-10-01 09:10:19 +10:00
André Nusser
c6f9a65081 Gray out "strip silence" and "rhtyhm ferret" for midi regions.
The former even triggered a segfault.
2015-09-30 23:20:27 +02:00
edee09bce0 Merge branch 'chaot4-fix_track_list_context_menu' 2015-09-30 14:43:13 -04:00
André Nusser
71f6f982e3 Fixed spelling. 2015-09-30 14:43:02 -04:00
André Nusser
6fdd3f47ac Make all the context menu entries of the track list work. 2015-09-30 14:43:02 -04:00
71343e835a change the logic for a capture buffer flush to disk when a locate is occuring
We can't check for Session::actively_recording() because punch out may have disabled that. Rather
than add logic to check if a flush is needed (which is not much different than the code that runs
as part of the flush to disk), just do a flush anyway.
2015-09-30 13:02:58 -04:00
7ff47ab80e tweak some debug output 2015-09-30 13:02:58 -04:00
343bc5160b remove apparently bogus adjustment to capture_captured in AudioDiskstream::transport_looped 2015-09-30 13:02:58 -04:00
2cf779fd0c split Butler::flush_tracks_to_disk() into two distinct versions with clear names and make one of them private 2015-09-30 13:02:58 -04:00
48b904fcee is there a better way to make gcc+enumwriter happy? 2015-09-29 16:09:01 +02:00
3f8857b129 Fix midi tracer to show MSB too. (fixes #6566) 2015-09-29 06:06:40 -07:00
08446f79e1 set waveform height depending on Layer mode
Fixes background peakfile/waveform creation. Waves need to be
created directly with the proper attributes as set by StreamView.
2015-09-29 13:47:21 +02:00
239da0efb5 Fix Mackie control metering (fixes #6608). 2015-09-28 20:13:15 -07:00
7f86418340 Revert "change the way the audio clock cursor is drawn (somewhat of an experiment but it has some benefits"
This reverts commit 601770837e.

This work continued in the "clockwork" branch where it was done correctly.
2015-09-28 20:28:40 -04:00
b8ccf8accc BWF USID according to EBU-R99 2015-09-29 01:20:30 +02:00
deabc0f41b change clearlooks style file so that small_entry and related styles use text color for text even when selected 2015-09-28 18:20:54 -04:00
2c1350077a Merge branch 'chaot4-fix_lock_solo_ctrl_shift' 2015-09-28 17:59:10 -04:00
André Nusser
42647c9920 Introduce Ctrl+Shift+Click on lock solo in the mixer. 2015-09-28 17:58:40 -04:00
1536228d00 fix initialization of reserved I/O names vector 2015-09-28 17:52:27 -04:00
d84a794b30 fix const-ness 2015-09-28 17:52:13 -04:00
621fd845e6 Revert "add new action and loop marker menu item for setting up loop record"
This reverts commit ebb43508f1.
2015-09-28 17:44:04 -04:00
34f088576c get loop recording working when using seam-ed looping 2015-09-28 17:42:11 -04:00
0613ddd1f9 better more reliable checks on renamed, newly created and imported track/bus names 2015-09-28 17:42:11 -04:00
9f8fe4b0bc change semantics of 4th argument to Session::locate to mean "this locate is connected with play-loop just being enabled" 2015-09-28 17:42:11 -04:00
601770837e change the way the audio clock cursor is drawn (somewhat of an experiment but it has some benefits 2015-09-28 17:42:11 -04:00
3e0d801509 when editing an audio clock, swallow illegal keys rather than allowing them to reach the rest of the GUI 2015-09-28 17:42:11 -04:00
9cf56aab84 fix the logic of the GUI "toggle roll" action as it pertains to loop recording 2015-09-28 17:42:11 -04:00
b9611a3168 a few new DEBUG_TRACE calls related to session transport state 2015-09-28 17:42:11 -04:00
9202bc162a minor fix for possible off-by-one logic when at/near the end of the loop range 2015-09-28 17:42:11 -04:00
f24fef669a fix a long-standing bug arising from a change to some logic which reversed an "is-rolling" test 2015-09-28 17:42:11 -04:00
c9b991ba50 move code location where loop playback is cancelled when stopping 2015-09-28 17:42:11 -04:00
f2aa681974 loop record is a feature whether or not loop-is-mode is true or not 2015-09-28 17:42:11 -04:00
3e23b5903e Session::disable_record() should work whether we are in loop mode or not 2015-09-28 17:42:11 -04:00
ebb43508f1 add new action and loop marker menu item for setting up loop record 2015-09-28 17:42:11 -04:00
25011161e0 fix long options of gcc-glibmm-abi-check. 2015-09-28 17:02:15 +02:00
c799ef723d remove outdated limiation 2015-09-28 15:40:26 +02:00
dd89363292 remove cruft. 2015-09-28 00:36:44 +02:00
9f2aba1451 mixer-strip name context-menu cleanup
patch thanks to chaot4
2015-09-27 21:45:40 +02:00
2e6b455b19 add deva to authors. 2015-09-27 16:13:37 +02:00
e65903a49a Sort ports in state-save.
This results in identical XML if the session did not change, allowing
to keep track of state-changes easily (e.g. session file in git).

Thanks to deva (again).
2015-09-27 16:10:10 +02:00
ed2ce36735 LV2 state cleanup, patch from deva. closes #6607
set _impl->state on session load in order to detect state changes
properly (no not save duplicate states).

+ some small mem-leaks (free state)
2015-09-27 14:07:57 +02:00
e1c421c67b Close export directory browser dialog when clicking on 'Cancel' button, Fixes #6594 2015-09-27 21:55:20 +10:00
e344d379d2 update semantics of PBD::remove_directory()
Remove the directory recursively including itself. The function
is used in two places only:

* LV2Plugin::add_state() -- no change, remove tmp. state
* Session::save_as()  -- on error, remove target

In both cases removing the folder itself is correct.
2015-09-27 12:44:54 +02:00