Commit Graph

251 Commits

Author SHA1 Message Date
Ryan C. Gordon d4ee08b985 VoIP: attempt at changing voipPower calc and using it for VAD.
The Speex VAD sort of sucks, honestly, or I'm not using it right. Now
 trying this algorithm, after denoising:

    http://lists.xiph.org/pipermail/speex-dev/2006-March/004269.html

And I'll play around to find the threshold for considering a set of frames
 to be "voice" from there.

Also worth noting: we consider the power of the set of frames as a whole, so
 you need to sustain power for 0.25 seconds at a time, or it's not "voice."
2008-06-08 07:09:10 +00:00
Ryan C. Gordon fdfaff64f8 VoIP: changed debug output filenames. 2008-06-07 14:41:21 +00:00
Ryan C. Gordon fec2cc2f05 VoIP: initial shot at voice activation. 2008-06-07 14:40:59 +00:00
Ryan C. Gordon 8028fc042c VoIP: Only update from cl_voipSendTarget if sending data. 2008-06-07 14:40:30 +00:00
Ryan C. Gordon c50799fcf7 VoIP: Initial work on adding Speex preprocessor. 2008-06-07 14:39:49 +00:00
Ryan C. Gordon 26c706df15 VoIP: Don't hardcode Speex sample rate. 2008-06-07 14:38:46 +00:00
Ryan C. Gordon bab9a00838 VoIP: Fixed per-user gain output. 2008-06-05 15:14:07 +00:00
Ryan C. Gordon 020704d2ff VoIP: functionality to adjust incoming audio gain, per-user. 2008-06-04 21:50:00 +00:00
Ryan C. Gordon cc18323a99 VoIP: client can now specify targets for voice transmission. 2008-06-04 21:49:15 +00:00
Ryan C. Gordon 45c18e29b8 VoIP: voip cvar should be 1 by default. 2008-06-03 06:06:17 +00:00
Ryan C. Gordon 8ab3f7af8d Changed the protocol for VoIP packets to support legacy clients.
Previously, a legacy client wouldn't get a VoIP packet, but if they did,
 they'd panic and disconnect. Now they ignore them and continue on. This also
 gives us the framework to add other features legacy clients can ignore.

Oh, this also has the benefit of allowing us to store incoming VoIP for
 playback in recorded demos. They'll play the chatter on VoIP clients, and
 be ignored on legacy ones. Huge win.
2008-06-03 02:32:52 +00:00
Ryan C. Gordon e0ebde0b27 Don't allow client to capture audio if playing back a demo. 2008-06-03 02:28:03 +00:00
Ryan C. Gordon 0403ca2260 More VoIP work: treat voip/sv_voip cvars as protocol version numbers. 2008-06-02 19:52:13 +00:00
Ludwig Nussel 5bdce1d547 fix openal dlopen 2008-06-02 15:54:36 +00:00
Ryan C. Gordon b5eaa94d03 Changed a few VoIP cvars to be latched.
It either doesn't make sense to change these mid-game, or doing so won't work.
2008-06-01 18:10:33 +00:00
Ryan C. Gordon 9b1984647a Forbid setting voip cvar if network data rate is too low.
This prevents "Connection Interrupted" packets as VoIP data is incoming.
2008-06-01 18:08:03 +00:00
Ryan C. Gordon a948f7cf69 Client shouldn't try to capture audio data if voip cvar is disabled. 2008-06-01 17:43:58 +00:00
Ryan C. Gordon 12326a9eac Initial patch for in-game VoIP support! 2008-06-01 07:51:23 +00:00
Ludwig Nussel 0ee3960225 mumble link support
The coordinate calculation was adopted from Warsow's mumble patch.
2008-05-30 17:19:31 +00:00
Tim Angus a857487f9b * Fix a bunch of compile warnings
* Only call pkg-config if it exists
* Remove cl_consoleHistory from README
2008-05-10 18:51:02 +00:00
Thilo Schulz 10ed996784 - replace a few constant values with GL macros in tr_cmds.c
- tidy up top of tr_types.h a bit, change flags to hex representation
- make ROM cvar enforcing really work
- remove cg_stereoSeparation from cgame as it is obsolete.
- Add CG_DrawCrosshair3D so people see crosshair correctly when stereoseparation is enabled
2008-05-01 14:56:57 +00:00
Thilo Schulz 425c351d1b - Implement stereo rendering with anaglyph images.
- Add r_greyscale for black&white rendering
2008-04-27 17:32:14 +00:00
Thilo Schulz cebdb640f3 remove commented code 2008-04-12 20:05:33 +00:00
Thilo Schulz c281b6aca0 Another change to server parsing as a server reporting in from 69.79.84.0/24 with the master server could screw up the server list in ioquake3 clients. 2008-04-12 19:53:16 +00:00
Tim Angus 845de6a960 * Fix some recently introduced warnings
* Fix referenced pk3 list including excessive number of spaces
2008-04-12 18:58:06 +00:00
Thilo Schulz f8d8a1c2f7 - fix a potential file descriptor leak in server side of pak downloading
- add new functions for banning clients from server, in engine part. This will also make it possible to ban ipv6 addresses in old mods.
2008-04-12 17:00:18 +00:00
Thilo Schulz 9a8cc99a93 - Revamp in-game server browser: you can now scan for games on multiple master servers, while retaining compatibility with old QVMs.
- Make Master server reporting/server queries ipv6 capable.
2008-04-11 18:39:03 +00:00
Thilo Schulz 78a82bcba2 Add com_standalone cvar for at-runtime handling of mods that do not require the original quake3 game data. 2008-04-10 15:37:25 +00:00
Thilo Schulz b3822d03e2 Include #ifdef to make it easier to create a stand-alone binary. 2008-04-09 23:43:30 +00:00
Thilo Schulz eb3b59308b Add Multicast capabilities for LAN server scanning. 2008-04-09 14:37:42 +00:00
Ludwig Nussel 8d1a5f8b32 catch EXEC_NOW on quit to prevent deleting a running vm 2008-04-06 12:59:26 +00:00
Thilo Schulz 5d63a38ad9 Basic IPv6 support. Some inspiration from the patches by Lubos Dolezel and JF Tremblay at https://bugzilla.icculus.org/show_bug.cgi?id=2355. 2008-04-04 23:22:22 +00:00
Thilo Schulz 1d072dfdb5 These checks are now redundant. 2008-03-27 03:21:32 +00:00
Thilo Schulz fe1e02e457 A more clean solution to this bug. Stop the renderer when the UI VM is not running, as no commands get issued in that case anyways. 2008-03-27 03:18:32 +00:00
Thilo Schulz d79a5487bc Fix flashing connect screen, see https://bugzilla.icculus.org/show_bug.cgi?id=3425. 2008-03-27 03:00:49 +00:00
Thilo Schulz 9412316883 Make sure fullscreen does not work for in_nograb when manually Alt-Entering, too. 2008-03-26 16:20:21 +00:00
Thilo Schulz 11d9608fca Remove obsolete code for obfuscation. 2008-03-25 21:59:31 +00:00
Ludwig Nussel 6c5211c0d3 catch Cbuf_ExecuteText(EXEC_NOW,...) from the ui as that would crash the vm 2008-03-24 21:20:49 +00:00
Tim Angus 6a213889dc * (bug 3567) Fix to error handling in Ogg decoder (Joerg Dietrich) 2008-03-11 21:43:25 +00:00
Tim Angus b5a220359b * Ogg codec fix regarding ogg files in pk3s (Tr3b) 2008-03-02 15:28:39 +00:00
Thilo Schulz dc3d2457e0 Angst and zinx cajoled me into removing trying to load libcurl.so again. 2008-02-17 13:46:34 +00:00
Thilo Schulz a99634c2d3 Fall back to libcurl.so.4 or libcurl.so.4 if the default symlink does not exist. 2008-02-16 22:57:45 +00:00
Thilo Schulz 1f86aba342 Remove .3 part in default curl library. With it www download is broken on most recent distributions, as there is no libcurl.so.3 2008-02-16 22:23:47 +00:00
Tim Angus cb06e3e93a * Fixes to some muppetry in snd_dma.c (arQon) 2008-02-10 21:01:06 +00:00
Tim Angus 59c231c6c6 * (bug 3412) %s expansion security patch (DevHC) 2008-01-22 23:44:10 +00:00
Tim Angus 9cc4e0c976 * Fix to bug in S_FileExtension (Tr3B) 2008-01-19 19:06:25 +00:00
Thilo Schulz 08ee31604a Remove small redundancy 2007-12-27 11:45:20 +00:00
Thilo Schulz 99c8676383 Revert changes in ioquake3 AL code, fix OpenAL headers. 2007-12-13 23:27:41 +00:00
Thilo Schulz a9a8022d53 Modification to stop crash on Linux for dlopened() OpenAL, will break MacOSX build again. 2007-12-13 13:46:30 +00:00
Thilo Schulz d075f172df Fix multiple symbol errors for compilation on MacOSX. Remove unnecessary definitions. 2007-12-13 10:58:43 +00:00
Tim Angus 5bd3ef4190 * Fix poppy captured audio when recording videos 2007-12-01 19:39:03 +00:00
Tim Angus b62950ca6e * Fix bug where an extraneous render command can cause a crash when
recording video
* Make S_CodecUtilClose NULL the snd_stream_t pointer
* Fix indentation in runtime SDL check code
2007-11-18 01:06:46 +00:00
Ludwig Nussel f0215128af make master server used by client configurable (cl_master)
patch by Erik Kloppenburg
2007-11-14 19:04:12 +00:00
Tim Angus 25ac1317b1 * Remove work around for a 2 year old OpenAL bug that now actually causes a
crash on snd_restart
2007-11-11 22:15:25 +00:00
Tim Angus aa5e852056 * Unconditionally place a '\' at the start of the command buffer when
autocompleting -- you're still all WRONG :p
* Fix bugette where the completee didn't get its case copied from
  the completed token
* Add functionality to autocomplete key names
* Don't build client command completion on the dedicated server
2007-10-12 22:34:45 +00:00
Tim Angus 5692e30fa9 * Fix bug that prevented key up events getting to cgame/ui when not in game
* Use Key_[GS]etCatcher everywhere to set keycatcher
* Clear all key states when the catcher changes
2007-10-02 14:14:45 +00:00
Tim Angus 7562caa310 * Move the conditional compilation of bg_lib.c from the Makefile to cpp in
order to force dependency generation on bg_lib.*
* Make testing USE_ defines more consistent
2007-09-22 20:32:11 +00:00
Tim Angus da29118ae0 * Don't apply colour escape chars on input fields 2007-09-21 10:35:24 +00:00
Tim Angus 672cfbf16f * Merge unified-sdl to trunk
* Bump Q3_VERSION to 1.35
2007-09-05 18:17:46 +00:00
Tim Angus 0b3a077e15 * Merge win_net.c and unix_net.c
+ Move win32/win_net.c to qcommon/net_ip.c and make it portable
  + Remove unix_net.c, but incorporate its revision history into win_net.c
  + Remove all IPX support -- this remains compatible with existing mods
  + This change also inadvertently gets us SOCKS support on non-Windows
    platforms
2007-08-28 16:42:13 +00:00
Tim Angus 8b5a40e2ed * Nuts. 2007-08-23 15:23:43 +00:00
Tim Angus 2ea6b8b512 * (bug 3324) Incorrect use of sizeof (beast <info@dbwatersports.com>)
* (bug 2946) Console scrolling broken (identified by misantropia)
  + Field_VariableSizeDraw contained a hack to ensure the cursor was always
    visible. Unfortunately this interfered with scrolling long lines. Move the
    hack to a different place
  + Removed commented code in the same function
  + Reworked Field_KeyDownEvent to use a switch( ... ) and set edit->scroll in
    every case, thereby avoiding scrolling issues when "Home" or "End" are
    pressed
2007-08-23 15:22:35 +00:00
Tony J. White = 16a200d262 * (bug 3077) allow cURL to follow HTTP redirects (up to 5) 2007-05-22 02:24:10 +00:00
Tony J. White = b5bf1280c1 * (bug 3018) Should not reset CVAR_CHEAT cvars when loading cgame/ui if they
are being loaded to play a demo.  This restores the normal
             "timedemo" cvar behaviour.
* (bug 3054) The "demo" command works properly now when connected to
             the local server
2007-04-05 15:26:15 +00:00
Tim Angus de364863be * Silly tab filter breaking things 2007-04-01 13:42:03 +00:00
Tim Angus fb58d8f123 * Move storage of console history from a cvar to a file in order to alleviate
security concerns
2007-04-01 13:38:17 +00:00
Tony J. White = f9bb47d9af * (bug 2741) replace K_LAST_KEY with MAX_KEYS. K_LAST_KEY is now defined
at 256 for mod compatability reasons.  ioq3-only mods may
             chose to use MAX_KEYS for checking binds in order to get full
             key support, but at the cost of breaking compatability with
             older clients.

* (bug 2741) remove some lingering 256-key hardcoding

* properly check bounds of keynum in Key_IsDown(), Key_SetBinding(),
  and Key_GetBinding()
2007-03-22 22:03:00 +00:00
Thilo Schulz 1de9a065bf Remove cvar s_alMaxSpeakerDistance for the same task can better be achieved with s_alMaxDistance. 2007-03-17 15:54:37 +00:00
Tony J. White = 2218a4ea67 * (bug 3018) need to call Cvar_SetCheatState() after CG_INIT and UI_INIT to
override user-defined cvar values for CVAR_CHEAT cvars that
             could be registered in cgame and ui.
2007-03-02 17:32:22 +00:00
Tony J. White = c6249fcc25 * (bug 3019) use the operating system's random number generator if possible
when generating the qkey file
2007-02-16 23:50:37 +00:00
Tony J. White = d580c54e2d * (bug 2741) Adds support in the SDL client for many keys that were not
recognized.  For example, F13, F14, F15, WINDOWS, SCROLLLOCK, CAPSLOCK,
  WORLD_0 - WORLD_95, etc. (Christophe Cavalaria)

* (bug 2741) Adds the hard-coded toggleConsole bind Shift-Escape

* (bug 2741) Adds detailed explaination of SDL keyboard handling differences
  in the README file.
2007-02-14 23:29:19 +00:00
Tony J. White = 2cddf1208d * (bug 3019) adds the cvar cl_guidServerUniq (defaults to 1). When set to
non-zero, cl_guid will be unique for each server that the client
  connects to
2007-02-12 18:52:15 +00:00
Thilo Schulz 5dc3b35b49 - Fix loads of format string bugs
- Fix locally looping sounds, thanks to Timbo
2007-01-24 21:23:21 +00:00
Ludwig Nussel 4b9df8d9e9 fix wrong use of strncat 2007-01-23 10:39:49 +00:00
Thilo Schulz c1875302c2 - Fix two non-C-standard variable declarations.
- Fix function name of vsnprintf for windows systems.
2007-01-07 16:03:19 +00:00
Ludwig Nussel 8e82c3d605 - tag more functions with gnu format attribute
- fix format string bugs. still some left
2006-12-30 12:32:54 +00:00
Ludwig Nussel 91e54c01ed using the function pointer time() doesn't make any sense. Passing down
the variable instead looks like the obvious fix.
2006-12-30 11:17:17 +00:00
Tim Angus 4abd270a67 * Merge 954:955 from 1.34 branch 2006-11-28 14:03:27 +00:00
Thilo Schulz 4502f863d4 There's still a little bug in my recent change... 2006-11-26 11:12:35 +00:00
Thilo Schulz 26cf8f2987 - Add input sanitising to various sound playing functions called from MODs.
This fixes https://bugzilla.icculus.org/show_bug.cgi?id=2836
- Make searching through the knownSfx array a bit more efficient.
2006-11-25 13:35:23 +00:00
Thilo Schulz d23e7a1521 Fix bug in parameter checking. Thanks to Neil Toronto for reporting. 2006-11-23 11:10:30 +00:00
Thilo Schulz aea7262d86 Only stop demo on map change if it was started by autorecord. 2006-11-03 08:42:21 +00:00
Thilo Schulz b57a970034 - Explicitly set distance attenuation model.
- Mute sounds that exceed a certain distance from the listener.
2006-11-03 08:22:38 +00:00
Thilo Schulz 90208be35a - Remove "server crashed" message on server shutdown caused by local client disconnect.
- Stop demo recording on a new gamestate packet so the demo won't end with a new level load.
2006-10-27 12:49:55 +00:00
Tony J. White = 8b1b3464d7 * (bug 2758) Toggling the console while holding keys can put the cgame/ui
keycatchers in a bad place since they see a key press for a key that is
  already in a down state.  Simply clearing the down state of all keys as
  the console is toggled seems like a simple fix.
2006-10-23 15:18:05 +00:00
Tony J. White = 41add6c01f * (bug 2893) OpenAL was not tracking one-shot sound effects to the entity's
position
2006-10-13 18:58:57 +00:00
Tony J. White = 2af23e813d * add cURL support for HTTP/FTP downloading (bug 2661) 2006-09-11 16:41:55 +00:00
Ludwig Nussel cec7660885 looks like ALCchar is not available on older openal versions 2006-09-05 07:05:04 +00:00
Tony J. White = bc4591b03e * renamed static function GetClipboardData to CL_GetClipboardData since it was causing compile errors in newer mingw 2006-08-30 15:16:36 +00:00
Tim Angus 9f42be5d6c * Disable video command when not playing back a demo 2006-08-29 19:30:33 +00:00
Thilo Schulz 01d057967f Go back to rev. 874. ATM, there is no good way to make FS_Restart() behave as it was originally described. 2006-08-28 01:48:38 +00:00
Thilo Schulz fbfc886b22 Fix crash when recording to files and the map changes. Was caused by new, correct, behaviour of
FS_Restart() which would close the files before they'd be closed by the client.
2006-08-28 00:44:59 +00:00
Thilo Schulz 57dbc7a79f - Fixed filehandle / filedescriptor leak in S_AL_StartBackgroundTrack introduced in rev. 832
- intro now plays correctly before looping sound.
2006-08-27 15:31:03 +00:00
Tony J. White = 1f8c2c56eb * moved SVN_VERSION #ifdef from client.h to q_shared.h so dedicated server
builds when svn version cannot be detected
2006-08-26 06:12:15 +00:00
Thilo Schulz fb18a4b2e4 - compensate sv_fps for timescale value.
- Add a non-dirty-hack fix for client hanging when unpausing a game.
2006-08-26 01:45:27 +00:00
Tony J. White = 0df6305274 * Add SVN version to the version string displayed in the client console
if it can be detected
2006-08-22 16:13:51 +00:00
Thilo Schulz 467917233a - Change available device list to be displayed on sound initialization and
use line feeds as separators.
2006-08-19 22:17:04 +00:00
Tim Angus 4c8c2e5597 * Compiler warning fix 2006-08-19 14:40:24 +00:00
Thilo Schulz b2b17e334e - tweak enumeration support, remove win32 dependency
- fix two typos in status message in snd_main.c
2006-08-19 13:44:10 +00:00
Thilo Schulz 87a3858f9a - Add device enumeration support on windows and make "Generic Software" new default device as that one seems to work more reliably on many platforms.
- Add shfolder.lib library to dependencies in MSVC project files
- update documentation for OpenAL changes.
2006-08-19 11:02:20 +00:00