Commit graph

7023 commits

Author SHA1 Message Date
Robin Gareus
dacf51c299 prepare midi buffer API for midi-delaylines 2014-08-17 15:04:47 -04:00
Robin Gareus
d048c8e4a6 fix midi buffer erase() 2014-08-17 15:04:40 -04:00
Paul Davis
aefe0a4953 fix crash recovery: add new constructors to SndFileSource, AudioFileSource, add a new SourceFactory method and finally tweak
AudioDiskstream::use_pending_capture_data() to create both the required whole-file and the in-playlist regions
2014-08-17 15:03:01 -04:00
Robin Gareus
28306d0b06 wrap MIDI timecode at 24h 2014-08-17 15:00:48 -04:00
Robin Gareus
8875cd5a5a really fix sending MIDI timecode. 2014-08-17 15:00:43 -04:00
Robin Gareus
463981c4cd fix crash when trying to send MMC of timecode > 255 hours 2014-08-17 15:00:38 -04:00
Robin Gareus
d7a8c58aaa close dir opened with opendir() - fixes accumulated fd for plugin state saves 2014-08-17 15:00:34 -04:00
Paul Davis
592146822a fix Canvas::LineSet implementation to support horizontal and vertical linesets 2014-08-17 15:00:23 -04:00
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