Commit graph

687 commits

Author SHA1 Message Date
Robin Gareus
c6a3d6bc48 small round of compiler warning fixes 2014-10-23 03:43:04 +02:00
Robin Gareus
f7211ff8f7 fix jack/mingw compilation 2014-10-22 23:57:55 +02:00
Paul Davis
68458cde69 fix all 4 backends' failure to include the main "backend" thread when computing ::in_process_thread() 2014-10-22 17:07:11 -04:00
Paul Davis
76edbdf5dc make backend selection by product name more explicit 2014-10-14 16:58:11 -04:00
Robin Gareus
8525a0b258 add a Dummy Backend Loopback mode: 2014-10-11 14:47:35 +02:00
Robin Gareus
b4cf5e279b fix dup free in waves/midi:
The PortMidi queue just holds a pointer to the midi events.
The same Midi events are free()d during WavesMidiBuffer::clear()
which is called at cycle start for every buffer and in the dtor
of the WavesMidiBuffer.
2014-10-09 09:48:54 +02:00
Robin Gareus
4af4938c25 fix wavesbackend midi timing 2014-10-09 09:43:53 +02:00
John Emmas
2d04ac9796 Add a newly introduced header file to our MSVC project (dummy_audiobackend) 2014-10-08 15:11:25 +01:00
Paul Davis
000609901b add correct copyright statements to all files in Waves backend except those derived from portaudio/portmidi
This follows the letter sent from Waves Audio Ltd. to Paul Davis dated February 20th 2014 agreeing to release this code
under the GNU Public License, version 2, with copyright owned by Waves Audio Ltd
2014-10-07 16:17:34 -04:00
Robin Gareus
0af091edf3 fix ming32 build&install for asio backend 2014-10-03 00:46:34 +02:00
Robin Gareus
aeda6cbea9 add --with-wavesbackend config option (disabled by default) 2014-10-01 18:28:47 +02:00
Paul Davis
3d12a4da82 fix deep obscure problem with loading multiple backends on OS X
all backends export a symbol declared as "extern "C" ARDOURBACKEND_API ARDOUR::AudioBackendInfo* descriptor ()".
dlopen'ing the backend apparently pushes the symbol "descriptor" into the single flat global namespace that we use
to be like other unix-like systems. this means that if a backend calls its OWN function named "descriptor", it
is indeterminate which one it will be, since the symbol will refer to the function first loaded by the runtime
linker. If the backend is not the first one discovered, this call to its own "descriptor" function will invoke
the function defined by another backend, even though these are supposed to have local scope only according
to our arguments to dlopen().

This fix doesn't try to fix the linker or namespace - it just makes sure that the WavesAudio backend doesn't
invoke its own descriptor() function, which it never really needed to do anyway.
2014-09-30 22:57:05 -04:00
Robin Gareus
cd60fd9dfe untested fix for compiling waves audiobackend on case-sensitive FS with mingw. 2014-10-01 04:02:30 +02:00
Robin Gareus
32e05fa640 update backends for API change in 8d59afb048 2014-10-01 03:24:54 +02:00
John Emmas
a927b79c26 Implement the new pthread macros (for the Waves audio backend) 2014-09-30 21:00:35 -04:00
John Emmas
3033c1cc54 Re-introduce our pthread macros (after fixing an earlier typo)
these are so we can differentiate between 'libpthread' and 'libpthread-win32' (whose implementation is subtlely - though annoyingly! - different)
2014-09-30 21:00:35 -04:00
Paul Davis
8d59afb048 copy over current Waves version of their backend, along with minor changes in libs/ardour and libs/backend/jack to fit with API changes 2014-09-30 21:00:34 -04:00
Paul Davis
38e975d6b1 tweak backends wscript for cross-compiling with mingw 2014-09-30 21:00:34 -04:00
Paul Davis
8e01b411b2 copy over current Waves version of their backend, along with minor changes in libs/ardour and libs/backend/jack to fit with API changes-a 2014-09-30 20:23:45 -04:00
Robin Gareus
186493687b DummyBackend: symmetric freq sweep: up/down 2014-09-24 18:46:54 +02:00
Robin Gareus
6dfb8c5c8a DummyBackend: add sine-sweep generators 2014-09-24 17:24:25 +02:00
Robin Gareus
86672a5c5c fix some double promotion 2014-09-24 17:18:20 +02:00
Robin Gareus
3f9e916fe2 DummyBackend: two more audio-signal generators (useful for waveform check) 2014-09-24 01:26:51 +02:00
Robin Gareus
b355f01aa5 DummyBackend: MIDI Event Generators 2014-09-24 01:26:51 +02:00
Robin Gareus
99a484f193 ALSA backend: initial device selection 2014-09-24 01:26:51 +02:00
Robin Gareus
076bb0b488 change dummy backend to default to _("Silence"). 2014-09-13 22:51:42 +02:00
John Emmas
16b25a3028 Implement the new pthread macros (for the Waves audio backend) 2014-09-09 12:05:14 +01:00
John Emmas
61e0705a94 Re-introduce our pthread macros (after fixing an earlier typo)
these are so we can differentiate between 'libpthread' and 'libpthread-win32' (whose implementation is subtlely - though annoyingly! - different)
2014-09-09 12:03:52 +01:00
John Emmas
83b6825bd0 Revert "Add a couple of pthread helper macros"
This reverts commit 8d0ec2403f.
2014-09-09 08:26:26 +01:00
Robin Gareus
b1da9af8de ALSA|Dummy: ignore port unregistration when engine is stopped
When changing Engine parameters, ardour first stops
the engine and only later when re-etablishing ports
unregisters/re-registers them.

ALSA: silently ignore port unregs and silently accept registrations
Dummy: print a PBD::info message,
2014-09-08 01:25:56 +02:00
Robin Gareus
dc318e6e74 ALSA|Dummy Backend: do as jack does:
when the backend is closed, unregister all ports.
2014-09-07 22:50:57 +02:00
Paul Davis
6408d90258 fix waf thinko in backends wscript 2014-09-03 18:44:34 -04:00
John Emmas
65715dd298 Make sure all our VC projects agree that the product is called 'Mixbus3' (as opposed to just 'Mixbus')
It'd be nice if we could use 'ARDOUR::config_dir_name' for this purpose (or perhaps 'PROGRAM_VERSION'). However, neither is implemented widely enough at present to make this practical. Keep an eye on them though, as possible future strategies.
2014-08-28 07:57:20 +01:00
Paul Davis
126d6d3aae fix new backends wscript to work correctly in the Ardour case 2014-08-08 11:00:30 -04:00
Paul Davis
16e37d975f use some structured code to decide which backends to build (should have cherry picked from waves' code but ...) 2014-08-08 10:57:20 -04:00
John Emmas
45afed5e9a Modify our VC project files to work with msvc32-fixup.pl 2014-08-04 09:02:17 +01:00
David Robillard
928881b24a Update vcproj files for changed LILV config define. 2014-07-15 15:50:12 -04:00
Robin Gareus
4af088c251 DummyBackend: add Uniform White Noise Generator. 2014-07-11 18:05:59 +02:00
Robin Gareus
2d63489196 Dummy Backend: optimize random-number implementation 2014-07-08 18:40:51 +02:00
Robin Gareus
941701574e fix and optimize DummyBackend generators
* use Wavetable for sine
* lock generator (concurrency issue)
* always initialize variables
2014-07-08 18:40:51 +02:00
Robin Gareus
185f06e7f7 add signal generator modules to Dummy Backend. 2014-07-07 16:31:58 +02:00
Tim Mayberry
cd12698b9c Rename PBD::find_file_in_search_path to just PBD::find_file
saves a bit of typing and not necessary if you look at how it is used.
2014-06-25 12:40:10 -04:00
Tim Mayberry
8d0cba3384 Use PBD::find_files_matching_pattern instead of other variations 2014-06-25 12:40:10 -04:00
Paul Davis
3f776ce7d9 fix incorrect cut-n-paste across synergy 2014-06-25 12:30:57 -04:00
Paul Davis
9b7b5fc9bc wscript fix for wavesaudio backend - use correct name for CoreM[iI][dD][iI] framework on Lion and other versions 2014-06-25 08:29:23 -04:00
Robin Gareus
07fafac36e don't let enumerated device list strings go out of scope. 2014-06-23 12:16:35 +02:00
Robin Gareus
fb51bdb892 statically allocate midi-options
fixes possible segfault when the data in the vector
goes out of scope due to RVO.
2014-06-23 11:56:58 +02:00
Robin Gareus
16ffff10cd ALSA-backend: dedicated Midi-Buffer n-periods (only use for HW output) 2014-06-22 18:28:24 +02:00
John Emmas
88caf84b81 Rename all 3 backends for the MSVC sln file 2014-06-22 13:29:17 +01:00
John Emmas
436302fd16 Rename dummy backend to match Tim's name 2014-06-22 13:11:59 +01:00