Commit graph

7015 commits

Author SHA1 Message Date
Paul Davis
6f38ff5c3c remove global canvas scroll offset, to provide no-scroll-parent == no-scroll behaviour 2014-08-17 14:58:10 -04:00
Robin Gareus
102c0766c0 some misc tweaks to the ALSA Backend 2014-08-17 14:58:04 -04:00
Robin Gareus
ba5357e226 reset accumulated capture offset on file roll-over.
(previously it was not reset as long as rec-arm and rec-enable
remained enabled)
2014-08-17 14:58:00 -04:00
Paul Davis
f07af61132 fix borked logic controlling whether/when to draw clip/outline pixels/lines in waveviews 2014-08-17 14:56:44 -04:00
nick_m
017a4a8a87 Use global clip level from prefs. Restore clip colour, \ 2014-08-17 14:56:27 -04:00
Paul Davis
f188ecb954 when delivering enter/leave events to canvas items, ensure that the event coordinates are in canvas space, not window space
This fixes a variety of borkage in the canvas at present
2014-08-17 14:56:14 -04:00
Paul Davis
fc9447f2b5 add Item::canvas_origin() for convenience 2014-08-17 14:56:09 -04:00
Robin Gareus
57e56346ed ALSA Backend: align midi output buffer with n_periods (currently 2) 2014-08-17 14:55:50 -04:00
Robin Gareus
3744dd652b prepare MIDI latency measurement (backend) 2014-08-17 14:55:37 -04:00
Robin Gareus
a9239f5f06 implement midi capture alignment:
For audio: not writing frames to the capture ringbuffer offsets
the recording.
For midi: we need to keep track of the record range
and subtract the accumulated difference from the event time.
2014-08-17 14:55:32 -04:00
Robin Gareus
bdbc4a4f6e remove some 1920 tick constants and leave notes for some others. 2014-08-17 14:55:27 -04:00
nick_m
aebd5863f0 Use a dumb cache for waveview ImageSurfaces. This halves the size of the
previous one, but usually ends up using three of them at the current
CACHE_HIGH_WATER setting.
Should result in a smaller memory footprint for sessions with
multiple copies of nearby audio segments (electronic style).
The downside is the larger memory footprint for linear recording
sessions if CACHE_HIGH_WATER > 1 (1 giving a max of two
half - sized cache entries per audio stream).
2014-08-17 14:55:20 -04:00
Robin Gareus
c987ad5281 limit automation event density - fixes #5928
Constrain control points to one per tick (1/1920 beats).

Prior to this it was possible to set two values to the
same time (interpolation and iteration failed).
2014-08-17 14:55:13 -04:00
Robin Gareus
d472999ef0 ALSA backend: separate systemic audio+midi latency 2014-08-17 14:55:07 -04:00
Robin Gareus
99642bede1 ALSA rt-thread priority fixes 2014-08-17 14:54:51 -04:00
Robin Gareus
f85282aeec ALSA backend: prevent possible crash destruction of a-r-d 2014-08-17 14:54:46 -04:00
Robin Gareus
58a1f32130 ALSA & Dummy: implement port [un]registration_callback 2014-08-17 14:54:40 -04:00
Paul Davis
7caad67f7f install libardouralsautil into the normal libdir, not a subdir 2014-08-17 14:54:34 -04:00
Tim Mayberry
cd5c1b7b74 Revert windows backend search expression to "*backend.dll" 2014-08-17 14:54:22 -04:00
Tim Mayberry
3a4ae0a296 Don't use module versioning with dummy backend when building with mingw 2014-08-17 14:54:16 -04:00
Tim Mayberry
d3cf4e3986 Don't use module versioning with jack backend in the mingw build 2014-08-17 14:54:09 -04:00
Tim Mayberry
9e5f082dea Include stdint.h for int64_t type 2014-08-17 14:53:47 -04:00
Tim Mayberry
c46e55060a Fix timecode target so it is just libtimecode.so and not liblibtimecode.so 2014-08-17 14:53:42 -04:00
Paul Davis
07cfa9e163 When rendering a Canvas::Rectangle take its _position into account, even though in general this is always (0,0) within its parent 2014-08-17 14:50:37 -04:00
Robin Gareus
96c06b3fc0 alsa + dummy backend, proper [re]initialization 2014-08-17 14:50:31 -04:00
Robin Gareus
46f0e7dead properly setup port system latency for Dummy & ALSA backend 2014-08-17 14:50:20 -04:00
Paul Davis
874ac355e7 clip rendering of ScrollGroup to just the part of the canvas covered by the scroll group.
This stops tracks from appearing to scroll up under the rulers, among other things.
2014-08-17 14:50:12 -04:00
Paul Davis
bbf037c4a3 fix problems with expose/redraws from canvas where requested area goes way outside the integer range allowed by GTK/GDK 2014-08-17 14:49:34 -04:00
Robin Gareus
54ab147ac2 pass ardour's pid to the device reservation script.
terminate a-r-d when ardour crashes or exits unexpectedly.
2014-08-17 14:46:28 -04:00
Paul Davis
df24b1ab8d remove debugging output 2014-08-17 14:44:31 -04:00
Paul Davis
c926ca2b6b basic, initial structure for canvas widget item 2014-08-17 14:44:25 -04:00
Paul Davis
0497c64da3 allow public access to CairoWidget::render() 2014-08-17 14:44:20 -04:00
Paul Davis
269567532e fix up various waves widgets after the CairoWidget::render() API change 2014-08-17 14:40:16 -04:00
Robin Gareus
6da331394b change the meters into CairoWidget, add expose_area to CairoWidget::render()
Conflicts:
	libs/gtkmm2ext/cairo_widget.cc
	libs/gtkmm2ext/fastmeter.cc
	libs/gtkmm2ext/gtkmm2ext/cairo_widget.h
	libs/gtkmm2ext/gtkmm2ext/fastmeter.h
2014-08-17 14:28:10 -04:00
Robin Gareus
6b34125de4 make alsa/ardour dbus-device request tool generally useful. 2014-08-17 13:48:01 -04:00
Robin Gareus
edcd5c52bc ALSA backend: require both in+output. 2014-08-17 13:47:58 -04:00
Robin Gareus
bc6c4285f2 mark dbus reservation tool optional 2014-08-17 13:47:46 -04:00
Robin Gareus
0913f33183 DBus ALSA device reservation 2014-08-17 13:47:30 -04:00
Robin Gareus
313f597478 proper dbus device reservation 2014-08-17 13:47:24 -04:00
Robin Gareus
feb1a9e269 break out ALSA related functions into libardouralsautil 2014-08-17 13:47:14 -04:00
Robin Gareus
ed7c8de1a9 ALSA: tentative hack to request audio-device. 2014-08-17 13:47:09 -04:00
Robin Gareus
3ec8621f1e ALSA backend: engine.halted_callback if the process thread dies 2014-08-17 13:47:02 -04:00
Robin Gareus
1300bcb210 if the user chooses to stop the jack-backend, mark it as stopped. Don't display the "..was shutdown .. was not fast enough.." message. 2014-08-17 13:46:54 -04:00
Robin Gareus
663fc9092d fixes to change engines while Ardour is running.
When a new backend is selected, it is loaded to query
available devices etc. This effectively drops the current backend.

Conflicts:
	libs/ardour/audioengine.cc
2014-08-17 13:46:47 -04:00
John Emmas
83d0b6cd7a Add newly introduced sources to MSVC project
(scroll_group stuff)
2014-08-17 13:46:21 -04:00
Robin Gareus
59309d2bb1 Revert "add API to query a processor's frozen state."
Theoretically one could alter the plugins after a delivery even on a
frozen track. ..or even change settings, the ordering and add/remove
plugins after the frozen part of a track.

We won't go there. Frozen is frozen. this API is not needed after all.

This reverts commit a771dea203.
2014-08-17 13:46:16 -04:00
Robin Gareus
87ca02d7ad Revert "Revert "ALSA backend: separate flags for is-running and should-be-running""
sorry, c/p error
This reverts commit 9658b77327.
2014-08-17 13:46:09 -04:00
Robin Gareus
a79273f681 Revert "ALSA backend: separate flags for is-running and should-be-running"
Theoretically one could alter the plugins after a delivery even on a
frozen track. ..or even change settings, the ordering and add/remove
plugins after the frozen part of a track.

We won't go there. Frozen is frozen. this API is not needed after all.

This reverts commit 6d89488d64.
2014-08-17 13:46:02 -04:00
Robin Gareus
870d17399e ALSA backend: separate flags for is-running and should-be-running 2014-08-17 13:45:56 -04:00
Robin Gareus
630565aad6 add API to query a processor's frozen state. 2014-08-17 13:45:52 -04:00