Peter L Jones
005a506b0d
Merge branch 'master' into feature/pljones-audio-stream-saving
2019-04-03 18:14:49 +01:00
Peter L Jones
8c1deffda7
Add recording support with Reaper Project generation
...
Includes the following changes
* Initial .gitignore
Administrative
* Fix up warning message
* Not all Windows file systems are case insensitive
Bugfixes
* (Qt5) Use QCoreApplication for headless
Possible solution to get the application to run as a headless server but it loses the nice history graph, so not ideal.
* Avoid ESC closing chat
Because ESC shouldn't close the chat window. Or the main app window.
* Add console logging support for Windows
Whilst looking for the headless support, I found this idea for Windows logging. New improved version. This makes far fewer changes.
----
* Add recording support with Reaper Project generation
The main feature!
* New -r option to enable recording of PCM files and conversion to Reaper RPP with WAV files
* New -R option to set the directory in which to create recording sessions
You need to specify the -R option, there's no default... so I guess -r and -R could be combined.
* New -T option to convert a session directory with PCM files into a Reaper RPP with WAV files
You can use -T on "failed" sessions, if the -r option captures the PCMs but the RPP converter doesn't run for some reaon. (It was useful during development, maybe less so once things seem stable.)
The recorder is implemented as a new thread with queuing from the main "real time" server thread.
When a new client connects or if its audio format changes (e.g. mono to stereo), a new RIFF WAVE file is started. Each frame of decompressed audio for each client written out as LPCM to the file. When the client disconnects, the RIFF WAVE headers are updated to reflect the file length.
Once all clients disconnect, the session is considered ended and a Reaper RPP file is written.
2019-04-03 18:12:45 +01:00
Volker Fischer
e8096e48f0
2018 -> 2019
2019-03-24 09:30:30 +01:00
Volker Fischer
ea24503fdc
preparation for MIDI controller audio fader level support
2019-01-12 12:45:08 +00:00
Volker Fischer
a7454095d3
for ASIO and 4 channel input, support mixing channels 1&2 with 3&4
2018-03-26 15:56:34 +00:00
Volker Fischer
7f41f186d4
prepare for special summing channels
2018-03-25 11:21:58 +00:00
Volker Fischer
8bfdc7347a
2017 -> 2018
2018-03-09 21:13:02 +00:00
Volker Fischer
b0d37c86e7
2016 -> 2017
2017-08-11 21:08:54 +00:00
Volker Fischer
4cbee9d1d5
fixes for new Qt version and new Visual Studio compiler (VS 2015)
2016-05-11 15:44:16 +00:00
Volker Fischer
ca73117279
update the copyright
2015-12-31 13:14:09 +00:00
Volker Fischer
33e5a07cf7
change all 2014 to 2015
2015-02-04 18:17:23 +00:00
Volker Fischer
c0a67a9884
update to 2014
2014-01-05 16:52:38 +00:00
Volker Fischer
9459a73ab5
do the same calculation as in client.cpp (first multiplication, then division)
2013-12-17 20:55:35 +00:00
Volker Fischer
3fc6ccc8aa
introduce GetInOutLatencyMs to query the actual latency from the sound interface
2013-12-17 20:52:38 +00:00
Volker Fischer
a0c318eeec
some speed optimizations
2013-12-14 22:16:20 +00:00
Volker Fischer
a7895f88ea
update year to 2013
2013-01-23 10:41:13 +00:00
Volker Fischer
3f75913dca
better handling of sound card reinits
2012-01-28 11:51:14 +00:00
Volker Fischer
b5e47ed9b5
small fix
2012-01-22 13:46:15 +00:00
Volker Fischer
73f408e401
make sure that sound working thread is actually killed on stopping the audio interface
2011-12-27 16:50:38 +00:00
Volker Fischer
8bbc9adaa3
moved a check from the sound class in the sound base class
2011-12-07 20:18:56 +00:00
Volker Fischer
914e41fac3
move function call in other function
2011-12-06 19:30:52 +00:00
Volker Fischer
d4a6ea617f
added a debugging command line argument so that the complete server list of registered servers can be seen
2011-11-19 21:24:03 +00:00
Volker Fischer
8720c40db6
some more work for moving functions from the Windows sound interface to the sound base class
2011-10-18 20:04:56 +00:00
Volker Fischer
a8795c1bf3
put some functions from Windows sound in sound base class
2011-10-12 19:06:39 +00:00
Volker Fischer
30656eca99
fixed some warnings
2011-04-23 15:58:29 +00:00
Volker Fischer
d470a0bb68
use units in constants (e.g. HZ, MS), some more work on server list
2011-03-31 07:10:43 +00:00
Volker Fischer
f0a3e97b96
update of copyright
2011-02-22 18:56:52 +00:00
Volker Fischer
7540ca9d63
added some VST preparations
2010-03-31 20:11:01 +00:00
Volker Fischer
c1cd911c56
added settings save/load for sound card channel mapping settings
2010-03-20 18:36:59 +00:00
Volker Fischer
cc6b8a85f8
some more work on sound card channel mapping support for Windows
2010-03-20 08:55:42 +00:00
Volker Fischer
9828ceec81
put ASIO member variables in class, prepared for ASIO input/output channel selection
2010-03-19 20:23:31 +00:00
Volker Fischer
6869f026bc
bug fix
2010-03-03 18:59:22 +00:00
Volker Fischer
e1b949e318
fix for m-audio ASIO driver
2010-03-02 18:22:55 +00:00
Volker Fischer
9f3d07ca67
added some more ASIO sample conversions
2010-02-04 20:25:57 +00:00
Volker Fischer
75b1994257
added some more ASIO sample formats (not yet all implemented!), support for sound card conversion buffer to support sound card frame sizes which are different from the predefined ones
2010-02-03 19:27:48 +00:00
Volker Fischer
769f02e5e7
updated copyright
2010-01-03 13:40:46 +00:00
Volker Fischer
e05667268d
better error message text
2009-12-05 09:41:05 +00:00
Volker Fischer
70e53c4383
fixes for error messages, removed std::string -> replaced by QString
2009-12-01 20:08:21 +00:00
Volker Fischer
e9820ddcb0
added more information on error message
2009-12-01 08:52:06 +00:00
Volker Fischer
278a252822
fix for bug that software crashed in case the driver properties of current selected driver have incompatibly changed
2009-11-30 21:16:40 +00:00
Volker Fischer
c549ae90f0
bug fix in case max and min values for supported ASIO driver frame sizes are the same (software freezes in this case)
2009-08-16 00:26:48 +00:00
Volker Fischer
034530474c
start work for supporting CELT codec, code does not compile at the moment (backup checkin)
2009-07-24 14:31:25 +00:00
Volker Fischer
d27fab9999
some more work on sound interface
2009-03-12 11:56:15 +00:00
Volker Fischer
caad05ddaa
preparation for buffer size change callback for audio interfaces, small fix in server GUI
2009-03-10 17:33:12 +00:00
Volker Fischer
2fcb37d0e9
some more JACK code, this should be a first working version -> not yet tested
2009-03-08 21:38:38 +00:00
Volker Fischer
1697b8f9cd
bug fix with sound card device selection, show red text if actual sound card buffer size differs from preffered value
2009-03-08 17:14:37 +00:00
Volker Fischer
81d119ba4a
bug fix
2009-03-08 11:22:55 +00:00
Volker Fischer
3bf3ab832d
some preparations for new JACK audio interface
2009-03-07 22:56:46 +00:00
Volker Fischer
0308768ecb
preparation for sound card buffer change notification action
2009-03-07 21:13:52 +00:00
Volker Fischer
f38aa17ca6
fix for setting sound card device
2009-03-07 20:45:00 +00:00