Commit graph

1377 commits

Author SHA1 Message Date
Volker Fischer
3348056253 move ConsoleWriterFactory implementation in util.cpp 2019-04-12 18:24:35 +02:00
Volker Fischer
feaea570f2 use the application pointer directly without the need of the define 2019-04-12 18:12:22 +02:00
Volker Fischer
05a0ac60a6 fixed warnings 2019-04-12 18:04:28 +02:00
Volker Fischer
8367ecc64f remove -T command line argument since it was only intended for debugging (see pull request from pljones). 2019-04-12 18:02:26 +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
Volker Fischer
0dbef268a3 added GPL headers 2019-04-10 20:00:54 +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
3609332754 use the given MIDI channel number of filtering input MIDI messages (channel number 0 means that we listen to all channels) 2019-01-22 16:11:41 +00:00
Volker Fischer
2a73d6878e fix for Behringer X-Touch 2019-01-21 15:59:25 +00:00
Volker Fischer
4e1b39236d implement MIDI controller parsing (first version, not yet tested) 2019-01-19 08:19:31 +00:00
Volker Fischer
9434a208ce first MIDI controller implementation: TD-20 Hi-Hat control can set fader level of first audio channel 2019-01-12 15:29:45 +00:00
Volker Fischer
d36cd17815 preparation for MIDI controller audio fader level support 2019-01-12 14:32:41 +00:00
Volker Fischer
91642b0c2e use integer for the fader level message 2019-01-12 12:59:16 +00:00
Volker Fischer
ea24503fdc preparation for MIDI controller audio fader level support 2019-01-12 12:45:08 +00:00
Volker Fischer
29332269c9 support native Jack support under Windows using the CONFIG switch "jackonwindows" 2018-03-22 20:50:05 +00:00
Volker Fischer
5c3bc50764 fixed a compiler warning 2018-03-22 20:47:08 +00:00
Volker Fischer
aaa766a659 make sure we do not get a too long horizontal scroll bar 2018-03-20 17:10:25 +00:00
Volker Fischer
8bfdc7347a 2017 -> 2018 2018-03-09 21:13:02 +00:00
Volker Fischer
a75670944a possible fix for a crash on MacOS High Sierra (reported in the Jamulus forum) 2018-03-08 20:03:07 +00:00
Volker Fischer
6c8362ea3a fix compiplation error on MacOS 2018-02-25 08:50:58 +00:00
Volker Fischer
b0d37c86e7 2016 -> 2017 2017-08-11 21:08:54 +00:00
Volker Fischer
492ae88fb2 new Qt URL 2017-05-25 20:06:59 +00:00
Volker Fischer
9c1ddbba64 added support for jackonmac 2016-07-31 08:02:32 +00:00
Volker Fischer
fd69efb060 bug fix with the history graph plotting (an invalid point was added to the graph) 2016-03-06 10:39:59 +00:00
Volker Fischer
403bf81f2a removed some unnecessary code 2016-03-06 10:09:41 +00:00
Volker Fischer
600d5f6832 fixed bug: #25 No client list in connection dialog for server which is full 2016-03-05 13:38:31 +00:00
Volker Fischer
5096e3208a added some more help text 2016-02-20 19:16:51 +00:00
Volker Fischer
1b29d8034c show server name in the server list in bold font if it is a permanent server 2016-02-15 17:35:49 +00:00
Volker Fischer
4e497d3f99 remove old CELT library 2016-02-14 16:19:14 +00:00
Volker Fischer
be63533c82 automatic server setting for permanent server flag in the protocol 2016-02-09 16:09:59 +00:00
Volker Fischer
9ab7164d05 the Musicians value in the server list shows a warning if the server is full 2016-02-09 15:05:06 +00:00
Volker Fischer
8e33e34350 fixed the issue #19 Issues with the ping time measurement 2016-02-07 14:02:30 +00:00
Volker Fischer
4dd24a9173 avoid buffer length of one for the auto jitter buffer detection 2016-01-30 18:22:19 +00:00
Volker Fischer
f66db79b8b store more fader levels in the ini file 2016-01-06 09:16:32 +00:00
Volker Fischer
bf89e072eb update the copyright text 2015-12-31 13:22:18 +00:00
Volker Fischer
ca73117279 update the copyright 2015-12-31 13:14:09 +00:00
Volker Fischer
60a3f82912 show the number of connected clients in the MacOS task bar 2015-12-18 20:17:31 +00:00
Volker Fischer
2866e40a03 show an icon and some more text for the clients in the server list 2015-12-10 15:52:29 +00:00
Volker Fischer
2ad6eb1600 finished: show the names of the connected clients in the server list 2015-12-09 17:11:16 +00:00
Volker Fischer
932e802eb6 fixes 2015-12-09 16:34:21 +00:00
Volker Fischer
33c6e77c68 on request show the names of the connected clients in the server list 2015-12-09 15:50:30 +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
89c22f685b small fixes in the comments 2015-12-06 15:20:40 +00:00
Volker Fischer
826866fe3e increase the maximum number of sound card channels supported by Jamulus 2015-11-25 15:55:05 +00:00
Volker Fischer
7ace26f23e added a new client fader level setting 2015-11-25 15:52:00 +00:00
Volker Fischer
1aa990b262 update in the comments 2015-11-22 17:56:42 +00:00
Volker Fischer
62af55929f more debug output 2015-11-20 12:09:16 +00:00
Volker Fischer
3d647400db add support for channel selection for MacOS 2015-11-19 19:36:47 +00:00
Volker Fischer
e674b21c0c nogui option is also supported for the client 2015-10-24 14:34:05 +00:00
Volker Fischer
b63a625ffa changed the default central server URL 2015-10-18 19:07:43 +00:00
Volker Fischer
b5bae73ab3 added support for server disconnection 2015-10-17 15:37:58 +00:00
Volker Fischer
c17413afe3 revert back to original URL 2015-10-10 09:41:58 +00:00
Volker Fischer
e3675e1b40 changed central server URL to jamulus.no-ip.org 2015-10-10 06:45:30 +00:00
Volker Fischer
12889fbea5 fixed a buffer overrun problem in the Mac audio interface if the sound card has a lot of input and output channels 2015-07-05 12:00:54 +00:00
Volker Fischer
a46ea26cd8 support client operation without using a GUI frontend 2015-03-25 20:29:52 +00:00
Volker Fischer
79c83a4c13 another improvement of auto jitter buffer detection in very bad network conditions 2015-03-21 11:48:27 +00:00
Volker Fischer
0691ed7910 lowered green and yellow LED threshold for the overall delay 2015-03-21 11:46:25 +00:00
Volker Fischer
bb4402ed98 allow that the automatic jitter buffer size detection can use a size of 1 2015-03-20 16:21:33 +00:00
Volker Fischer
c9b92728fa support older QT versions 2015-03-16 16:17:31 +00:00
Volker Fischer
4b43210eb8 If the actual ASIO buffer delay is not one of the 128, 256 or 512 samples, you do not see the number in the GUI. Add a info text on what buffer size is actually used. 2015-03-15 06:59:30 +00:00
Volker Fischer
16f170c030 improvement of auto jitter buffer detection in bad network conditions 2015-03-14 16:54:36 +00:00
Volker Fischer
af4e972bfd update in comments 2015-03-14 07:08:15 +00:00
Volker Fischer
8321fc1e25 adjust the weighting factor for overall delay calculation of the jitter buffers 2015-03-13 21:36:12 +00:00
Volker Fischer
8f3637d4a4 adjust the limit for the green LED 2015-03-13 21:29:14 +00:00
Volker Fischer
d924380262 fix overall delay calculation 2015-03-13 21:18:09 +00:00
Volker Fischer
115d9cefe0 added a TODO comment 2015-03-13 21:14:41 +00:00
Volker Fischer
04634e4195 added debug code for measuring the timer jitter 2015-03-13 17:15:48 +00:00
Volker Fischer
403d3820bf added class CTimingMeas 2015-03-13 17:10:30 +00:00
Volker Fischer
583a61081b added test code for debugging the soundcard timing jitter 2015-03-13 17:09:49 +00:00
Volker Fischer
4de2d7ac44 fixed a compiler warning 2015-02-15 08:44:49 +00:00
Volker Fischer
33e5a07cf7 change all 2014 to 2015 2015-02-04 18:17:23 +00:00
Volker Fischer
a26fc768bf fixed alignment problems in the dialog 2015-02-04 18:12:50 +00:00
Volker Fischer
f4820f6c0f changed the color of the skill level beginner 2015-02-04 18:11:58 +00:00
Volker Fischer
8c3773442e added colors for the skill level 2015-02-04 16:08:13 +00:00
Volker Fischer
ff901be7fa define the GUI RGB colors for each skill level 2015-02-04 16:07:21 +00:00
Volker Fischer
941d9132d0 added new instrument picture for "Guitar+Vocal" 2015-02-04 07:06:56 +00:00
Volker Fischer
01d087e416 added new instrument category 2015-02-04 07:02:40 +00:00
Volker Fischer
5a04e91835 fix for Qt4 2015-02-04 06:59:28 +00:00
Volker Fischer
31766ceab2 rename button of profile dialog from OK to Close and remove Default property 2015-01-31 10:04:59 +00:00
Volker Fischer
c9c1f78c3f removed fader tag edit, country and instrument buttons (since this is done in the profile dialog now) 2015-01-31 10:04:15 +00:00
Volker Fischer
e02947ba97 set fader tag background color depending on the skill level 2015-01-31 08:58:19 +00:00
Volker Fischer
09cbb9d2ab profile window management 2015-01-31 08:18:17 +00:00
Volker Fischer
928cf8196e profile window scales better 2015-01-31 08:16:30 +00:00
Volker Fischer
bae2672ff2 added variables for storing the window position of the profile window 2015-01-31 08:15:56 +00:00
Volker Fischer
1ed74b44e2 store some profile settings and also the window position of the profile window 2015-01-31 08:14:52 +00:00
Volker Fischer
88eed0d627 implementation of a musician profile dialog 2015-01-30 20:58:49 +00:00
Volker Fischer
a62ca5d064 added a tool tip of the complete musician profile on the fader tag label 2015-01-30 20:53:43 +00:00
Volker Fischer
71856d5488 the two optional pictures should be above each other, the text is next to the pictures 2015-01-25 09:57:13 +00:00
Volker Fischer
cad2da0d2a - a minimum size for the fader label text must be given, otherwise it could be too small which is not desired
- decrease the spacing between the icon buttons since the horizontal space is limited
2015-01-25 09:54:20 +00:00
Volker Fischer
183d651801 removed some very small countries from the country flag list to make the popup menu smaller 2015-01-24 18:54:39 +00:00
Volker Fischer
5a3693f6ae the compatible code to old Qt versions did not work, therefore we now use a table which definitely works for all Qt versions 2015-01-24 18:11:28 +00:00
Volker Fischer
b4f81ffaf1 added support for older QT versions 2015-01-24 17:05:21 +00:00
Volker Fischer
290f121e3c support for a country flag icon on the fader tag 2015-01-24 15:47:32 +00:00
Volker Fischer
5c909dc176 support for a country flag icon on the fader tag 2015-01-24 15:38:39 +00:00
Volker Fischer
1d21bb84b1 added support for country flag icon 2015-01-23 21:38:24 +00:00
Volker Fischer
bc17803f15 added acknowledgement for the country flags 2015-01-23 21:35:49 +00:00
Volker Fischer
837749cc6c fixed path to flags 2015-01-23 21:34:55 +00:00
Volker Fischer
9c7aab4fd3 added country flags 2015-01-23 20:14:13 +00:00
Volker Fischer
5df4991542 added country flag pictures 2015-01-23 20:06:39 +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
a6cd448ca9 update of the help text 2015-01-23 19:34:10 +00:00
Volker Fischer
815098a41d added new PROTMESSID_LICENCE_REQUIRED message 2015-01-18 21:23:47 +00:00
Volker Fischer
f56d59fdeb added server licence type enum 2015-01-18 21:20:41 +00:00
Volker Fischer
ecfc92207f added licence dialog 2015-01-17 16:53:54 +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
7f96942b62 bug fix 2014-07-26 10:31:27 +00:00
Volker Fischer
7615e2a996 This file was provided by Christopher Meng, thanks! 2014-07-26 06:29:30 +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
afa2f0e812 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 05:58:01 +00:00
Volker Fischer
9438ff535b fixed a typo 2014-07-15 19:22:08 +00:00
Volker Fischer
e9c431cda9 fixed a compiler warning on the newest Mac XCode compiler: The init function of the buffer class was set to virtual but the derived function had a different number of funciton parameters. So the intention was actually NOT to be virtual. Therefore I removed the virtual from the functions and the warning is gone now. 2014-06-15 19:33:27 +00:00
Volker Fischer
6b1541b622 bug fix: on Mac with newest Qt version the ping time was always 0 2014-06-12 19:28:39 +00:00
Volker Fischer
461650d4e2 increase the default used number channels for server 2014-03-11 19:39:44 +00:00
Volker Fischer
f92b363df9 fix tab order 2014-02-25 21:10:40 +00:00
Volker Fischer
3b94fb9382 since we only have one settings dialog, it is nonsense to write "General Settings" but we should write just "Settings" 2014-02-25 15:50:09 +00:00
Volker Fischer
598017e47f Remove the connection LED because it is not actually required. If the connection is successful, the mixer fader appears and shows the connection. If the connection fails, no fader is visible or the fader disappears after a while. In both cases it is clearly seen that the connection is lost and therefore the connection LED is not required. 2014-02-25 15:38:11 +00:00
Volker Fischer
e85b0f93ed remove "--disableleds" command line argument since disabling LEDs is not required anymore because we now have a separate socket thread and therefore a stable audio connection even in case the LEDs are used 2014-02-25 14:58:54 +00:00
Volker Fischer
5b2d256bc2 removed the "open chat on new message" mechanism since nobody actually uses this, now simply the window automatically opens on a new message if it is not already open, otherwise do nothing 2014-02-25 14:38:12 +00:00
Volker Fischer
121a0b4d69 small fix: put combo boxes in another layout so that it looks nicer 2014-02-24 20:23:19 +00:00
Volker Fischer
292cf13a21 finished #43 Hybrid Mono/Stereo mode 2014-02-24 19:51:57 +00:00
Volker Fischer
c8f0a376ab added support for the mon-in/stereo-out mode in the signal processing class (client.cpp) 2014-02-23 20:55:42 +00:00
Volker Fischer
5811b1f9d4 preparations for "mono in/stereo out" mode 2014-02-23 20:01:17 +00:00
Volker Fischer
4dca2d1c93 fix for #17 Default central server flag seems not to work in server GUI 2014-02-23 18:17:46 +00:00
Volker Fischer
17b5bb6dd9 introduce macro ENABLE_CLIENT_VERSION_AND_OS_DEBUGGING for enabling the version and OS query in the client (for debugging reasons) 2014-02-23 09:46:25 +00:00
Volker Fischer
5cfdf988d4 fix a compiler warning 2014-02-21 21:33:25 +00:00
Volker Fischer
de667b66a6 fix compilation error on Linux 2014-02-21 21:29:33 +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
d080c568a3 bug fix 2014-02-21 21:16:45 +00:00
Volker Fischer
4fbe460041 fix shutdown issue on Mac OS 2014-02-18 19:36:09 +00:00
Volker Fischer
3f61c348f7 small fix for Windows 2014-02-17 18:34:39 +00:00
Volker Fischer
14c8df9ee4 fix for shutdown on Linux (an error message was shown on shutdown) 2014-02-17 18:24:32 +00:00
Volker Fischer
e004ed6964 small improvement for the mutexes 2014-02-16 20:04:22 +00:00
Volker Fischer
9e4dbd861a bug fix 2014-02-16 09:28:34 +00:00
Volker Fischer
d214f9976d bug fix for the shutdown of the server 2014-02-16 09:01:08 +00:00
Volker Fischer
b8930b5232 removed unused function 2014-02-16 08:27:26 +00:00
Volker Fischer
887f5cd5b9 ParseConnectionLessMessageWithFrame 2014-02-16 08:21:40 +00:00
Volker Fischer
2ac7a92eaf finished implementation of a separate socket high priority thread 2014-02-16 08:20:07 +00:00
Volker Fischer
2e5f7781ce finished implementation of a separate socket high priority thread 2014-02-16 08:12:07 +00:00
Volker Fischer
bde026b06b make IsConnectionLessMessageID static 2014-02-16 07:17:48 +00:00
Volker Fischer
85fef28e24 added a missing include 2014-02-16 07:16:48 +00:00
Volker Fischer
d078730aeb make some functions static 2014-02-14 22:00:42 +00:00
Volker Fischer
42d0cdca59 small fix and added a comment 2014-02-14 22:00:31 +00:00
Volker Fischer
51db9e742a take care of NewConnection message in the socket context 2014-02-13 21:03:33 +00:00
Volker Fischer
033e3adca4 - take care of NewConnection message in the socket context
- some changes in the Mutexs
2014-02-13 21:03:08 +00:00
Volker Fischer
4837dc88d4 increase the probability of valid instrument picture 2014-02-13 21:01:15 +00:00
Volker Fischer
bab6152f8c some cleanup and implemented a nice socket thread exit on shutdown (fixed Qt warnings on shutdown of the software) 2014-02-13 18:38:25 +00:00
Volker Fischer
7c37d6d018 fixes issues for Linux compilation 2014-02-11 20:39:07 +00:00
Volker Fischer
a9c0e243dd fix compilation errors under Linux 2014-02-11 20:21:32 +00:00
Volker Fischer
1c1e07bd24 fix a compiler warning 2014-02-11 17:47:48 +00:00
Volker Fischer
9ca6df618f separate socket thread works now fine under Windows (only for Windows right now) 2014-02-11 17:35:39 +00:00
Volker Fischer
2ad0890bf2 Do a test where we use waitforreadyread instead of event driven -> this seems to solve the thread priority issue with the GUI but we get a crash in the Socket (mutex/thread-save issue). 2014-02-01 15:14:47 +00:00
Volker Fischer
76d8de72b6 lowering the GUI thread priority should not be necessary if the high priority socket thread is correctly implemented 2014-01-31 16:51:06 +00:00
Volker Fischer
2c515ae6c1 column sizes for Android must be larger 2014-01-30 08:54:58 +00:00
Volker Fischer
e5aedf6998 fix for high prio socket 2014-01-29 16:06:52 +00:00
Volker Fischer
4b83fa6fe0 avoid allocating memory in time critical routines 2014-01-23 20:33:55 +00:00
Volker Fischer
403f3a52f2 bug fix: the ping time LED was not reset if the connection was stopped 2014-01-21 21:19:51 +00:00
Volker Fischer
d7a41b5076 some fixes for Android 2014-01-21 17:25:46 +00:00
Volker Fischer
e76ce47cd6 added some android code 2014-01-20 20:42:58 +00:00
Volker Fischer
90467df03c go back to original version since it did not compile under Linux and MacOS 2014-01-19 15:03:11 +00:00
Volker Fischer
7320b0a4cc CVector<bool> does not work -> implement a workaround with int type 2014-01-19 15:02:25 +00:00
Volker Fischer
180837f70b store fader solo state 2014-01-19 10:51:31 +00:00
Volker Fischer
27c5f29b1a #16 If solo is enabled, the fader does not work anymore 2014-01-18 07:49:47 +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
7ee9fc2a67 fixed a compiler warning 2014-01-12 09:44:41 +00:00
Volker Fischer
02e88840e9 added a TODO comment 2014-01-12 07:42:43 +00:00
Volker Fischer
80883715e3 fix for optional "CHighPrioSocket" -> still does not compile... 2014-01-10 20:00:45 +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
d98ac1b2af fixed a warning 2014-01-06 16:49:19 +00:00
Volker Fischer
efdd10fc13 const correctness 2014-01-06 16:06:04 +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
91b4823d37 code style 2014-01-06 15:33:53 +00:00
Volker Fischer
81b4416a6f only fire message for starting the server if the server is not running at the moment 2014-01-06 13:04:26 +00:00
Volker Fischer
215be703a7 increase the thread priority of the real time timer 2014-01-06 12:53:54 +00:00
Volker Fischer
27f0e540b6 make the "ParseMessageBody" signal/slot mechanism the default since in the future we will need to use different threads at some point 2014-01-06 12:52:53 +00:00
Volker Fischer
7c81775232 small change in example code (in the comment) 2014-01-06 12:51:06 +00:00
Volker Fischer
90cbb22993 added a "const" 2014-01-05 20:47:35 +00:00
Volker Fischer
4baf2c5ef5 replaced global "MUL_COL_LED_*" definitions by actual enum definitions in the multicolor LED class 2014-01-05 18:26:38 +00:00
Volker Fischer
c0a67a9884 update to 2014 2014-01-05 16:52:38 +00:00
Volker Fischer
f26301ae75 next try to fix corrupt file 2014-01-05 16:13:00 +00:00
Volker Fischer
3f7d434144 the file in the CVS seems to be corrupt 2014-01-05 15:45:53 +00:00
Volker Fischer
06ca70ef10 added a TODO comment 2014-01-05 15:33:08 +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
e9a5962ef1 some cleanup: remove unnecessary GUI messages (they are not used because we only have callback based sound interfaces right now) 2014-01-02 20:11:56 +00:00
Volker Fischer
2980c195a4 update to a new version of STK reverb (inserting comb filters for more realistic reverberation effect) 2014-01-02 10:47:11 +00:00
Volker Fischer
ac10994d5c Support for a true stereo reverberation effect 2014-01-01 21:31:22 +00:00
Volker Fischer
715041effe in the most recent Ubuntu distribution the QTime did not work for the ping times anymore (the ping time was always 0 ms) 2013-12-27 16:04:46 +00:00
Volker Fischer
d3fce3fe62 code style 2013-12-27 16:01:35 +00:00
Volker Fischer
5fdaea0e55 fix compilation errors on Linux and MacOS 2013-12-24 10:20:24 +00:00
Volker Fischer
ada419c5bb simplify the vector class (remove unnecessary derived member variables) 2013-12-24 10:06:03 +00:00
Volker Fischer
ac83592f08 some small speed optimizations 2013-12-24 10:00:45 +00:00
Volker Fischer
bc3098ab79 use std copy function instead of a while loop 2013-12-24 09:59:27 +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
d089e7d308 use std max function for signal level meter update instead of if condition 2013-12-16 21:15:42 +00:00
Volker Fischer
4f91d59a96 fix compile error on MacOS 2013-12-16 20:41:09 +00:00
Volker Fischer
cbaefb32da speed optimization 2013-12-16 20:36:48 +00:00
Volker Fischer
379a3e9f9d speed optimzation: avoid some unnecessary conversions from short to double 2013-12-15 12:46:09 +00:00
Volker Fischer
9a2efd25fe bug fix: support for correct utf-8 storage of names in the ini-file 2013-12-15 10:54:17 +00:00
Volker Fischer
d4be4bc038 code style and changed reverb decay to 1.1 seconds 2013-12-14 22:11:24 +00:00
Volker Fischer
1f3c716163 code style 2013-12-14 22:10:38 +00:00
Volker Fischer
6034dab1b3 introduce functions for ToBase64 and FromBase64 for cleaner code 2013-12-14 22:09:59 +00:00
Volker Fischer
b66e22379a the solo state of a mixer fader is not exclusive any more and the solo state is preserved if the number of mixer faders changes 2013-09-10 16:24:55 +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
762a6283c6 code style 2013-09-07 20:29:29 +00:00
Volker Fischer
8ae66fd1a5 store window positions and visability state 2013-08-26 19:59:18 +00:00
Volker Fischer
584db6def8 code style 2013-08-26 19:58:59 +00:00
Volker Fischer
3012f20fce added instrument picture "Streamer", update for "Listener" picture 2013-08-25 18:13:13 +00:00
Volker Fischer
5224f90f5d added instrument picture "Listener" and fixed file name of "Recorder" picture 2013-08-25 17:49:21 +00:00
Volker Fischer
f87e8ef790 added instrument picture "Recorder" 2013-08-25 16:53:27 +00:00
Volker Fischer
3feb43054f added some more comments 2013-08-23 15:36:37 +00:00
Volker Fischer
395dd25c07 small fix in comment 2013-08-23 14:34:36 +00:00
Volker Fischer
89a1ab3de9 speed optimzation which leads to less audio drop outs if the connection dialog is opened during a connection 2013-08-18 20:53:31 +00:00
Volker Fischer
e8b65b6c0d disable the "socket in separate thread" code again since it does not perform the way it was intended to 2013-08-18 18:08:08 +00:00
Volker Fischer
f85115d548 added missing protocol messages 2013-08-18 18:05:28 +00:00
Volker Fischer
0d93612214 bug fix for the server (fixed a dead lock) 2013-08-18 15:22:18 +00:00
Volker Fischer
dcc4f0596f code cleanup 2013-08-18 07:42:32 +00:00
Volker Fischer
9d05436964 enable the experimental "threaded socket" code since one outstanding issue is now fixed :"fix for the "Multiple socket notifiers for same socket" error if threaded socket is used" 2013-08-18 07:41:30 +00:00
Volker Fischer
84c93bbbe5 fix for the "Multiple socket notifiers for same socket" error if threaded socket is used 2013-08-18 07:40:34 +00:00
Volker Fischer
c22c264123 Support for three audio quality settings (a new high quality rate is introduced) 2013-08-15 19:15:01 +00:00
Volker Fischer
2856626523 added formula 2013-06-09 06:42:33 +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
b8e9fcc4a3 cleanup (removed unnecessary variable) 2013-05-10 19:46:59 +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
8e95b548cb clean up the socket so that we do not have direct calls to e.g. protocol messages 2013-05-10 19:34:55 +00:00
Volker Fischer
21707b0e17 added some more comment 2013-05-10 07:57:21 +00:00
Volker Fischer
386ade7cae code style 2013-05-08 07:35:15 +00:00
Volker Fischer
424532a162 disable new feature for connection setup shown during an active connection for now since it does not work reliably... 2013-05-04 19:24:36 +00:00
Volker Fischer
c942a2757c code style 2013-05-04 19:14:02 +00:00
Volker Fischer
dc22883150 the connection setup dialog can now be opened during a connection 2013-05-03 19:11:01 +00:00
Volker Fischer
f157bd0d2a jamulus.dyndns.org is now active 2013-03-24 15:46:07 +00:00
Volker Fischer
ddbc1d3d8d get rid of "Llcon" 2013-03-24 15:42:23 +00:00
Volker Fischer
28defb82cb get rid of "Llcon" 2013-03-24 11:38:00 +00:00
Volker Fischer
0841ec12a4 file renaming 2013-03-24 11:24:43 +00:00
Volker Fischer
196f0ff477 get rid of the name "llcon" 2013-03-24 10:49:25 +00:00
Volker Fischer
4ed34f5509 removed llcon from file names 2013-03-24 10:34:39 +00:00
Volker Fischer
06b485b231 exchanged llcon by Jamulus in almost all places except the Sourceforge download path and the llcon.dyndns.org server 2013-03-24 09:20:19 +00:00
Volker Fischer
a130b1425c add the version number in the qt project file rather than in the global.h 2013-03-24 08:54:11 +00:00
Volker Fischer
70ebf16ceb code style 2013-03-22 18:50:05 +00:00
Volker Fischer
cbb18ebc03 a more realistic calculation of the network stream rate 2013-03-10 17:32:33 +00:00
Volker Fischer
ccadb45f11 fixed loud noise on initialial connection (caused by weird OPUS PLC effect) 2013-03-10 09:27:25 +00:00
Volker Fischer
961ae0f396 fix for loud noise at the beginning of a connection when a new server (supporting OPUS) is connected -> Still some noise left because of weird PLC effects of the OPUS codec 2013-03-10 08:19:41 +00:00
Volker Fischer
cf0c9d192d - removed OPUS_EXPECTED_PACKET_LOSS_PERC because it seems not to be used in the CELT decoder (just for SILK)
- fix for loud noise at the beginning of a connection when a new server (supporting OPUS) is connected -> Still some noise left because of weird PLC effects of the OPUS codec
2013-03-10 08:17: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
2f0eb9a7f0 removed iNumInvalidElements method since this does not work fine with OPUS PLC 2013-03-06 16:48:11 +00:00
Volker Fischer
1a67c9a66d enable OPUS codec 2013-03-06 16:46:15 +00:00
Volker Fischer
2b6e97bb83 change packet loss expected amount for OPUS decoder (to be optimized) 2013-03-06 16:45:35 +00:00
Volker Fischer
089c60c9cd fix a compile warning 2013-03-04 16:23:05 +00:00
Volker Fischer
a023af7961 small fixes like window icon, title 2013-03-04 16:20:32 +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
48708ba00c fix 2013-03-03 21:42:13 +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
478fd285be added command line argument --showanalyzerconsole to enable the analyzer console 2013-03-02 19:52:13 +00:00
Volker Fischer
f9b13ec2f6 bug fix: IP address was not shown on empty name tag 2013-03-01 17:15:29 +00:00
Volker Fischer
797a991417 support for storing fader tags/levels in settings file 2013-02-28 20:54:47 +00:00
Volker Fischer
b8759620ef fixed the outstanding bug 2013-02-28 20:50:09 +00:00
Volker Fischer
471fb0c6ae support for storing fader levels on a reconnect -> not yet finished, there is a known bug which has to be fixed! 2013-02-27 21:28:38 +00:00
Volker Fischer
9a9ca7c1c4 return the old value (removed entry) of the list 2013-02-27 21:20:14 +00:00
Volker Fischer
f79d8e410c new version number 2013-02-24 09:59:51 +00:00
Volker Fischer
ee358b3680 prepare for release 2013-02-24 09:05:47 +00:00
Volker Fischer
bffbe17abf started work on "storing fader gains" request 2013-02-24 09:03:57 +00:00
Volker Fischer
4727a0b45b added some test code (not enabled) 2013-02-24 09:03:33 +00:00
Volker Fischer
b83f14a2eb iMaxElements is not required for function AddStringFiFoWithCompare 2013-02-23 21:09:14 +00:00
Volker Fischer
4bffd4edcd added analyzerconsole 2013-02-23 20:15:48 +00:00
Volker Fischer
509ce2c32f added function OnGainValueChanged 2013-02-23 20:15:22 +00:00
Volker Fischer
096d3a39d2 added AddStringFiFoWithCompare function 2013-02-23 20:13:43 +00:00
Volker Fischer
7dcd612879 code cleanup 2013-02-23 20:12:09 +00:00
Volker Fischer
92bb9c253a code style 2013-02-23 17:51:34 +00:00
Volker Fischer
e58976901d added analyzerconsole 2013-02-23 17:49:44 +00:00
Volker Fischer
88a38a41a2 added analyzerconsole 2013-02-23 17:36:49 +00:00
Volker Fischer
44f4da79b9 small fix in comment 2013-02-20 18:31:25 +00:00
Volker Fischer
badf158653 there are still loud artifacts in the audio when dropouts occur, disable OPUS again 2013-02-20 18:29:33 +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
75c121b866 fix in About text 2013-02-19 21:27:07 +00:00
Volker Fischer
5562410594 changed name from llcon to Jamulus 2013-02-19 21:20:15 +00:00
Volker Fischer
744a9a70e7 removed llcon 2013-02-18 18:21:57 +00:00
Volker Fischer
066f08b88e set window title for server 2013-02-18 18:20:37 +00:00
Volker Fischer
57fe038978 replaced llcon by APP_NAME 2013-02-18 18:20:02 +00:00
Volker Fischer
ee8524aa11 set correct window title 2013-02-17 21:26:29 +00:00
Volker Fischer
d4f00da713 use APP_NAME define instead of writing llcon directly in the code 2013-02-17 21:14:19 +00:00
Volker Fischer
b4069f93f9 some code cleanup 2013-02-17 10:33:01 +00:00
Volker Fischer
c106f8f9c7 disable OPUS for now, the PLC seems not to be correct... 2013-02-16 21:08:02 +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
dcbfba2fd9 added enum for OPUS codec 2013-02-16 18:17:12 +00:00
Volker Fischer
eb277e3a96 support for OPUS codec 2013-02-16 18:16:12 +00:00
Volker Fischer
0c4f22eaa2 support for OPUS codec 2013-02-16 18:06:18 +00:00
Volker Fischer
7bed33dab4 added a "OPUS supported" message 2013-02-16 18:01:51 +00:00
Volker Fischer
26ef64e1c8 update for new OPUS codec 2013-02-16 18:00:08 +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
25321dec2a fix for compiler warning 2013-02-13 18:25:56 +00:00
Volker Fischer
ebd0882d52 file renaming 2013-02-13 16:41:24 +00:00
Volker Fischer
37f79f4e72 added comment 2013-02-12 15:34:53 +00:00
Volker Fischer
0bc4bae2a6 reset network transport properties on disconnect of the channel (so that network transport properties must be received for successful decoding) 2013-02-12 15:34:26 +00:00
Volker Fischer
8921fed34c added ResetNetworkTransportProperties() function 2013-02-12 15:33:28 +00:00
Volker Fischer
1c2bbbb009 use CELT_MINIMUM_NUM_BYTES to check protocol for network transport message 2013-02-12 15:32:43 +00:00