Commit graph

7656 commits

Author SHA1 Message Date
GZharun
21d5416218 [Summary] Fixed issue: switch StereoOut->MultiOut used to take longer then vice versa. 2015-02-12 14:11:01 +02:00
VKamyshniy
4eaac75259 [Summary] Bug fix, Improving icon button the way now it can include text. 2015-02-12 13:22:04 +02:00
GZharun
cb9f19baca [Summary] Backend Improvements
[Details] Fixed error handling
Fixed switching to None device when something goes wrong with the current device
Backend now takes care when device ID changes - Sound Grid does this when the amount of channel changes and it's not going to change in the neared future.
Fixed sample rate changes notification from device to DAW - Some devices can respond with such updates, we must correctly process them.
2015-02-12 11:39:25 +02:00
GZharun
8da1ad9fcf [Summary] Fixed issue when Audio Callback thread is changed
[Reviewed by] PDavis, VKamyshniy
2015-02-12 11:39:25 +02:00
VKamyshniy
d29b3786f1 [Summary] Grigoriy has no time to push it: he should review it in
the afterwards.
2015-02-11 18:18:40 +02:00
Greg Zharun
f1171b79ce [Summary] Improved Port Audio event processing: Now redundant events will be filtered untill they are useful again 2015-02-10 23:43:50 +02:00
Greg Zharun
88810bc7be [Summary] Changed buffer sizes retrieving
[Details] There is no need to Initialize/Deinitialize PA and each time take buffers from the device. Buffer size will be assigned on device activation and application will be notified about buffer changes when it's required. This appears to be the correct workflow with buffer size on ASIO devices.
2015-02-10 23:43:48 +02:00
Greg Zharun
37c03b4e9f [Summary] Increased per-thread pool for the thread which serves backend reset 2015-02-10 23:43:47 +02:00
Greg Zharun
ebaccc0e4a [Summary] Added possibility to print out stacktrace directly from code on Windows
[Reviewed by] Paul Davis
2015-02-10 23:43:46 +02:00
VKamyshniy
cada6ed65a [Summary] Removing annoying warning as we can do nothing with the reason for which this warning occurs . 2015-02-10 12:52:21 +02:00
YPozdnyakov
5c2dbd4d78 [Summary]: provide support of method gtk_application_hide () on windows (just for compilation) 2015-02-09 10:25:30 +02:00
YPozdnyakov
47b6d07958 [Summary]: method gtk_application_hide () is not supported by windows. 2015-02-08 20:56:57 +02:00
GZharun
aea1d84ed8 [Summary] Per Valeriy's request made code which not used in Tracks disabled using Profile->get_trx() 2015-02-08 20:16:01 +02:00
GZharun
701f98d53e [Summary] Disabled Destructive mode for AudiTrack, DiskStream and Source which is not used in Tracks Live and causes problems. Change has been made per Igor's request. 2015-02-08 17:54:36 +02:00
YPozdnyakov
6b564c4e06 [Summary]: add keybindings Cmd-h (hide application) for mac 2015-02-08 17:18:39 +02:00
GZharun
eded0c06cd [Summary] Fixed bug with sample rate dropping to previous value when new session is created 2015-02-07 21:39:43 +02:00
GZharun
126333bc6b [Summary] Blocked redundant skip marker (during skip ranges consolidation) updates which used to lead to unnecessary overhead and redundant session events 2015-02-07 21:36:47 +02:00
Paul Davis
ae63fea359 add another DEBUG_TRACE line for session event management 2015-02-06 17:40:59 -05:00
Paul Davis
562a6eb508 ensure that working buffers (for gain + mixing) are large enough.
See comment in code for explanation. Also comment some unused lines (for now)
2015-02-06 11:33:54 -05:00
Paul Davis
1be2866c4d two tweaks required to fix up previous commit 2015-02-06 10:50:02 -05:00
Paul Davis
ae0ad6f695 fix (and comment) on subtle bug with audio file data width function 2015-02-06 10:45:05 -05:00
Nikolay
b26b27a4c1 [Summary] Fixed bug #46117. "176.4 sample rate is absent in export sub menu"
[Feature reviewed] MKosharnyy
[Reviewed] YPozdnyakov
2015-02-06 10:43:14 +02:00
Paul Davis
a0482157a7 do not attempt to call an empty/null boost functor in clear_events() 2015-02-05 18:02:57 -05:00
Paul Davis
b19a9df790 make two obvously const methods actually be const 2015-02-05 16:31:01 -05:00
Paul Davis
be2edfae29 modify behaviour of session when updating skips to use new SessionEvent API 2015-02-05 16:21:08 -05:00
Paul Davis
72f6f9bcba add SessionEvent::Action to libs/ardour enums registration 2015-02-05 16:21:08 -05:00
Paul Davis
15c6a0eb0e expand SessionEvent API to allow ::clear_events() to work correctly.
clear_events() must run in realtime context, which is likely to be asynchronous
with respect to the thread that calls it. So allow caller to pass in a functor
that will be executed (also in realtime context) after the clear is done.

Additionally, allow for a cross-thread callback to the event loop/thread which
initiated/allocated the clear event request so that it can flush its own pending
loop. This part probably isn't necessary but doesn't hurt and is a useful model.
The event would be placed back in the free list at the next event allocation
by the calling thread anyway.
2015-02-05 16:21:08 -05:00
Paul Davis
58713b667f expand PBD::Pool API and add additional DEBUG_TRACE output.
Expanded API splits apart some CrossThreadPool functionality, and provides
access to current pool status information (available(), total(), used(), pending_size())
2015-02-05 16:21:08 -05:00
Paul Davis
09c6e8dd47 set name of GUI event loop thread 2015-02-05 16:21:08 -05:00
GZharun
90f219bf85 [Summary] Implemented menu items for playhead modes, related actions, set priorities and default values
[Reviewed by QA] MKosharniy
2015-02-04 17:44:01 +02:00
Valeriy Kamyshniy
393682ce75 [Summary] make the added behavior TRACKS specific:
Gain for a newly created route depends on
 the current output_auto_connect mode:

    -18 for Stereo Out mode
    -0 Multi Out mode

As well removed unnecessary setting gain with 0 dB.
2015-02-03 21:39:41 +02:00
Valeriy Kamyshniy
955995f3a2 [Summar] Bux FIX:
Fader of newly created track(s) has wrong position (values)
Default fader position should be different according to PRD

In Stereo mode fader should have position -18dB
In Multiout mode fader should have position 0dB
2015-02-03 20:58:32 +02:00
VKamyshniy
2283681322 [Summary] Per Igor's request: if auto play loop is set on, the main timespan should be the range loop location. 2015-02-03 19:14:27 +02:00
YPozdnyakov
50b9a8c785 [Summary]: change method ARDOUR::find_session. Files '*.ardour.bak' aren't correct session files. Absence of this check could lead to crash. 2015-02-03 18:11:41 +02:00
Greg Zharun
314236e1c6 [Summary] Fixed bug with per thread pool error on Windows, when opening device control panel 2015-02-03 12:32:56 +02:00
YPozdnyakov
0b908a8b92 [Summary]: add possibility of starting Tracks from application api (as a result of dbl click / drag-n-drop on session file). Correct opening session file from application api when SessionDialog is running. Rework class SessionDialog. Rework method load_from_application_api (). 2015-02-02 18:50:50 +02:00
Valeriy Kamyshniy
3b888537bc [Summary] Defalut for super-rapid-clock-update was switched from FALSE to TRUE 2015-02-02 12:14:55 +02:00
VKamyshniy
d2a0ecd417 [Summary] Occasionally added missing comma. 2015-01-31 21:43:26 +02:00
Paul Davis
6aa29f3b09 make sure we allocate large enough buffers when doing a non-butler context disk buffer refill.
The size of the buffer now needs to reflect that we calculate read
refills in bytes, and if we are not using 32 bit float sample format
on disk, that can translate into > 1M samples.
2015-01-30 12:57:58 -05:00
Paul Davis
4aad37ebcb remove some debugging output related to varifill 2015-01-29 19:01:59 -05:00
Paul Davis
d6e38070ce more tweaks for varifill model, and avoid filling playback buffers during session loading 2015-01-29 19:01:59 -05:00
Paul Davis
d697bf5388 stop transport when process_routes fails, even when using the parallel graph execution model 2015-01-29 19:01:59 -05:00
Paul Davis
104a74f93a fix incorrect return value from sndfile_data_width() 2015-01-29 19:01:59 -05:00
Paul Davis
22c6dcd975 add function to get data width for ARDOUR::SampleFormat 2015-01-29 11:55:35 -05:00
Paul Davis
a846c8fc0e add initial support for vari-fill
When refilling playback buffer, try to fill it completely, or at least
using the next-lowest power-of-2 as the amount to read. When locating,
where we use do_refill_with_alloc(), only partially fill the buffer.

Work not yet finished, but possibly promising.

Conflicts:
	libs/ardour/ardour/midi_diskstream.h
	libs/ardour/diskstream.cc
2015-01-29 11:55:35 -05:00
Greg Zharun
0ffc6cef5d [Summary] Implemented restriction logic usecases for Record
[Details] Please, note, that insensitive (during record) topbar buttons will have incorrect look so far. Will be fixed by VKamyshniy
[Reviewed by QA] MKosharniy
2015-01-29 17:59:21 +02:00
Paul Davis
ed915cb540 playhead priority: if rolling and range selection vanishes while we are paying attention, ignore the change 2015-01-28 21:52:54 -05:00
GZharun
9ff171d2b8 [Summary] Fixed bug : 45119. Split makes 2 operations when using Select + Split key command
[Deatils] Fixed up region partitioning when slicing a range inside a region. Defect description is completely wrong. Region partitioning was not correct but NOT "split makes 2 operations".
[Reviewed by QA] MKosharniy
2015-01-28 18:19:10 +02:00
GZharun
331a918633 [Summary] Moved session buffers adjustment during butler thread set up to the place we are ready to handle them. 2015-01-28 16:43:08 +02:00
GZharun
ff8b4693bf [Summary] HOT FIX: Fixed crash which happens on an attempt to load a session with audio after preferences removal, when buffer preset is set to Medium.
[Details] It happened because ARDOUR::Butler::thread_work() was called before Buttler::map_parameters() method was called, which sets up the correct buffering parameters (set_buffering_parameters () call) according to chosen preset.
I've added this calls into Butler::start_thread () to make sure everything is set up and ready for use for Butler.

This is a hot fix, because it requires the review from Paul Davis, and probably more gentle solution. But it's possible this commit may become the main solution itself.
2015-01-28 12:44:49 +02:00