Volker Fischer
50ccb63163
merge fixes
2020-06-01 09:55:31 +02:00
Peter L Jones
d33612721e
#228 Enable/Disable recording from command line
2020-05-30 18:04:55 +01:00
Volker Fischer
45bd6ca52b
bug fix: server gain calculations were incorrect
2020-05-26 20:48:08 +02:00
Volker Fischer
f6e5120095
New Client Level now also applies if you enter a server
2020-05-26 17:28:44 +02:00
Volker Fischer
726cc6facf
clean up -> COMPATIBILITY ISSUE can be safely removed, ResetTimeOutCounter is not necessary since it is already done in the channel
2020-05-26 15:43:00 +02:00
Peter L Jones
7977413bb6
Review comment changes
2020-05-25 21:56:40 +01:00
Peter L Jones
0f8d15f343
Initial Recording GUI
...
Issue #228 .
Display the recorder state and latest recording directory and
allow a new recording to be requested.
2020-05-25 21:56:40 +01:00
Volker Fischer
b959730d08
small merge fixes, fix a compiler warning
2020-05-21 21:35:35 +02:00
Volker Fischer
be04c665ff
bug fix: "added an indicator that another client has muted me" does not work as expected
2020-05-21 21:01:01 +02:00
Volker Fischer
4b8c7de166
WIP: backup checkin of new feature "show mute state of others"
2020-05-21 11:47:39 +02:00
Volker Fischer
5705b798f8
change the pan signal processing: avoid that pan=center attenuates any of the stereo channels; if no gain/pan change, do not multiply with the gains
2020-05-19 20:38:14 +02:00
Volker Fischer
5b7ccfcdc2
receive version info message from new server (function to use the information is still missing)
2020-05-18 21:28:49 +02:00
Volker Fischer
7dbd2c89d1
fix code style issues introduced by contributed source code
2020-05-18 20:46:46 +02:00
Volker Fischer
78413826a5
Merge branch 'master' into feature_panning
...
# Conflicts:
# src/protocol.h
2020-05-18 19:03:40 +02:00
Volker Fischer
d21acb0a7f
server sends version info on initial connection
2020-05-18 19:00:56 +02:00
Tarmo Johannes
2f200f5b12
Merge remote-tracking branch 'upstream/master' into panning
2020-05-16 20:39:16 +03:00
Volker Fischer
ab31fc476f
small merge changes
2020-05-16 09:24:46 +02:00
Peter L Jones
4bf5176e6a
Request new recording on SIGUSR1
2020-05-15 21:52:33 +01:00
Peter L Jones
d5c754b580
Expanded signal handling
2020-05-15 20:05:04 +01:00
Volker Fischer
53d16462c4
remove compatibility to Qt4
2020-05-14 21:12:06 +02:00
Tarmo Johannes
49245e6118
Merge branch 'master' into panning
2020-05-13 15:28:23 +03:00
Volker Fischer
599306156d
new command line option -d to disconnect all clients on shutdown of the server (Ticket #161 )
2020-05-12 22:40:59 +02:00
Peter L Jones
db357ae2bc
Review comment fixes
2020-05-11 20:12:16 +01:00
Peter L Jones
b60c3cab7b
Handle server application closure more cleanly
2020-05-10 18:20:57 +01:00
Peter L Jones
dd3b3a6278
Prevent unused warnings for iUnused
2020-05-08 13:31:16 +01:00
Volker Fischer
9f7fc16ac3
fixed compiler warnings
2020-04-26 16:20:21 +02:00
Tarmo Johannes
764ed82ccb
Implemented panning for channels.
2020-04-26 01:55:28 +03:00
Volker Fischer
009f30b4df
bug fix: if small network buffers are used we get much better audio quality when drop outs occur
2020-04-23 19:36:00 +02:00
Volker Fischer
471d1df835
add support for level meter bars for normal skin (fancy skin still uses LEDs)
2020-04-22 21:19:55 +02:00
Daniel Masato
77fdfcaa0c
Refactor signal to slot connections using recursive templates
...
This change allows the maximum number of supported clients to be adjusted in a single place rather than in multiple places.
Note that this change requires Qt5's new signal/slot syntax (https://wiki.qt.io/New_Signal_Slot_Syntax ), but is still backwards compatible with Qt4.
Code bloat will be eventually reduced by removing support for Qt4.
2020-04-18 12:17:43 +01:00
Peter L Jones
e031cc409f
Allow central server to confirm registration
...
Also display this state in the server UI.
2020-04-17 17:16:43 +01:00
Volker Fischer
b335321950
rename SYSTEM_FRAME_SIZE_SAMPLES_SMALL to SYSTEM_FRAME_SIZE_SAMPLES
2020-04-15 15:29:43 +02:00
Peter L Jones
a80b437858
Pass frame size to recorder
2020-04-10 18:36:13 +01:00
Volker Fischer
631c473acc
CreateLevelsForAllConChannels shall call CStereoSignalLevelMeter::CalcLogResult
2020-04-10 16:56:45 +02:00
Peter L Jones
bc04ff2fb2
Use server internal address in server list
2020-04-10 12:26:07 +01:00
Volker Fischer
dca678c83c
support 128 frame size if server operates in 64 frame size
2020-04-10 12:07:23 +02:00
Volker Fischer
a0934ee8b8
some more work for 64 samples support in the server
2020-04-08 18:51:51 +02:00
Volker Fischer
c7dcfe855e
bug fix for server 64 samples support
2020-04-07 22:09:29 +02:00
Volker Fischer
0eedcd8061
fixed Mac compilation error
2020-04-07 19:45:28 +02:00
Volker Fischer
0011f6686a
minor cleanup
2020-04-06 22:03:35 +02:00
Peter L Jones
a97ac9aa4e
Server processing for channel levels
2020-04-06 18:58:50 +01:00
Volker Fischer
fc9970f837
fixed Linux compilation error
2020-04-05 18:57:28 +02:00
Volker Fischer
bd111c3abc
some code cleanup
2020-04-05 17:35:40 +02:00
Volker Fischer
a761f9bf9e
some code cleanup and small fix for audio compression (should not access the info outside the mutex because it might have changed by another thread)
2020-04-05 09:34:00 +02:00
Volker Fischer
c310aa16cd
WIP 64 samples frame size support in the server, not yet working
2020-04-05 08:13:53 +02:00
Volker Fischer
57f203502c
WIP on support of 64/128 samples frame size in the server
2020-04-04 19:03:19 +02:00
Volker Fischer
5a05bf6a2f
only use low complexity OPUS processing for 128 samples frame size, see https://sourceforge.net/p/llcon/discussion/533517/thread/bdb3fe2195
2020-04-04 12:40:13 +02:00
Volker Fischer
40dd2e8980
changed the maximum number of clients from 40 to 50
2020-03-29 21:35:09 +02:00
Volker Fischer
4cfd54b21b
audio fade-in at the server if new client connects
2020-03-29 18:03:24 +02:00
Volker Fischer
3eaec8363a
changed the maximum number of clients from 20 to 40
2020-03-29 16:14:29 +02:00
Volker Fischer
53f50070a7
some more work for 64 samples frame size support
2020-03-28 16:27:45 +01:00
Peter L Jones
eca8eff4c9
Revert --histitems argument
2020-03-22 17:45:00 +00:00
Peter L Jones
32e56ff0c6
Pass number of items and days
2020-03-21 22:20:18 +00:00
Volker Fischer
791d600634
2019->2020
2020-01-01 15:41:43 +01:00
Volker Fischer
fa0f122638
fixed warnings shown in QtCreator
2019-05-17 22:55:46 +02:00
Volker Fischer
6466a4aaf7
cleanup some 'COMPATIBILITY OLD VERSION, TO BE REMOVED'
2019-05-17 22:06:48 +02:00
Volker Fischer
30b5833d3d
- remove unnecessary command line argument (if directory is given, the recording is enabled automatically
...
- jamrecorder is not a pointer in the class but an object now
- only call jamrecorder functions if it is enabled
2019-04-11 22:25:36 +02:00
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
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
4e497d3f99
remove old CELT library
2016-02-14 16:19:14 +00:00
Volker Fischer
ca73117279
update the copyright
2015-12-31 13:14:09 +00:00
Volker Fischer
932e802eb6
fixes
2015-12-09 16:34:21 +00:00
Volker Fischer
5d693d8ea4
on request show the names of the connected clients in the server list
2015-12-06 17:51:06 +00:00
Volker Fischer
b5bae73ab3
added support for server disconnection
2015-10-17 15:37:58 +00:00
Volker Fischer
04634e4195
added debug code for measuring the timer jitter
2015-03-13 17:15:48 +00:00
Volker Fischer
33e5a07cf7
change all 2014 to 2015
2015-02-04 18:17:23 +00:00
Volker Fischer
72c5f4cc63
a licence agreement dialog can be requested by the server
2015-01-23 19:43:18 +00:00
Volker Fischer
26ccd51546
make sure the OPUS encoder/decoder function is only called if the audio compression type is actually set to OPUS codec
2014-07-28 17:46:54 +00:00
Volker Fischer
7918416054
added configurations "CONFIG+=opus_shared_lib" for using OPUS as a shared lib and "CONFIG+=nocelt" to disable legacy support for the old CELT library
2014-07-26 06:07:50 +00:00
Volker Fischer
388664e48e
support for querying the server version and OS type for debugging purpose (not in the regular version available)
2014-02-21 21:25:26 +00:00
Volker Fischer
2ac7a92eaf
finished implementation of a separate socket high priority thread
2014-02-16 08:20:07 +00:00
Volker Fischer
2c443c7aef
avoid allocating memory in the server real-time processing routine
2014-01-12 09:48:49 +00:00
Volker Fischer
33afb04f3f
- speed optimizations (removed some memory allocations in the processing routine)
...
- removed duplicate function
- clean up some code
2014-01-08 21:24:37 +00:00
Volker Fischer
f016e9e022
avoid allocating memory in time critical client thread -> improve socket send function in the channel
2014-01-06 15:57:40 +00:00
Volker Fischer
215be703a7
increase the thread priority of the real time timer
2014-01-06 12:53:54 +00:00
Volker Fischer
c0a67a9884
update to 2014
2014-01-05 16:52:38 +00:00
Volker Fischer
72f7c25d98
code style
2014-01-03 09:00:24 +00:00
Volker Fischer
6e49e4e92c
change the mechanism of how the LEDs are updated -> no window event posts anymore to avoid blocking in the critical audio thread
2014-01-03 08:54:49 +00:00
Volker Fischer
ae874ae0b4
changed MAX_NUM_CHANNELS to 20
2013-09-08 20:15:21 +00:00
Volker Fischer
ef76866d6f
remove legacy ping time message (now very old versions of llcon do not get ping measurements from the server anymore)
2013-09-07 20:30:08 +00:00
Volker Fischer
6bdb82c65f
Added support for putting the receive socket in a separate thread. Unfortunately the current code does not work as expected. Some Qt warnings appear and after a while the receive socket does not receive any more network packets. Therefore a global macro is introduced to enable/disable the new code. Default is: disabled.
2013-06-03 16:07:17 +00:00
Volker Fischer
72b24fedf3
clean up "new connection" mechanism for the server (which messages are fired, etc.)
2013-05-10 19:37:57 +00:00
Volker Fischer
ddbc1d3d8d
get rid of "Llcon"
2013-03-24 15:42:23 +00:00
Volker Fischer
196f0ff477
get rid of the name "llcon"
2013-03-24 10:49:25 +00:00
Volker Fischer
b69e8a3028
removed OPUS_EXPECTED_PACKET_LOSS_PERC because it seems not to be used in the CELT decoder (just for SILK)
2013-03-10 08:15:15 +00:00
Volker Fischer
3c790d28df
bug fix
2013-03-04 16:11:37 +00:00
Volker Fischer
f2d4cb3e17
next try...
2013-03-03 21:56:25 +00:00
Volker Fischer
f892dc6312
bug fix
2013-03-03 21:38:23 +00:00
Volker Fischer
91548aacf6
use better high precision timer for Linux
2013-03-03 21:32:42 +00:00
Volker Fischer
05a71cd572
fixes by Michael Gorbovitski (mickg100) for OPUS performance improvement -> Thank you!
2013-02-20 17:22:04 +00:00
Volker Fischer
b4069f93f9
some code cleanup
2013-02-17 10:33:01 +00:00
Volker Fischer
694ee2fae2
bug fix: use OPUS custom interface instead of the normal one
2013-02-16 19:11:30 +00:00
Volker Fischer
eb277e3a96
support for OPUS codec
2013-02-16 18:16:12 +00:00
Volker Fischer
f0d46f4fc0
started OPUS integration by just creating the OPUS objects and do nothing with them right now
2013-02-16 10:54:40 +00:00
Volker Fischer
b518f0cd96
added a "cc6_" prior to all file names, functions and global variables
2013-02-15 20:09:10 +00:00
Volker Fischer
a04438fdc5
support for server welcome message on connect (enabled via a command line argument)
2013-02-11 20:24:38 +00:00
Volker Fischer
cc3547676b
Added Support for instrument picture on fader tag
2013-02-11 15:36:47 +00:00