Commit graph

1050 commits

Author SHA1 Message Date
Ken Cooke
a99b1ffa23 HRTF cleanup 2017-10-29 18:01:43 -07:00
luiscuenca
b7c375f396 Cleaning 2017-10-25 19:09:37 -07:00
luiscuenca
3d3077978e Simplyfied and fixed null pointer 2017-10-25 18:47:10 -07:00
John Conklin II
31b8013ed9 Merge pull request #11538 from kencooke/audio-mac-bugfix2
Additional cleanup of audio noise gate
2017-10-17 11:02:55 -07:00
Ken Cooke
bd82f47c66 Remove debug logging 2017-10-16 12:11:50 -07:00
Ken Cooke
7c14d5bbdf Remove debug logging 2017-10-16 11:43:52 -07:00
Ken Cooke
a702c5a0e4 Fix audio glitches caused by initial burst of SelectedAudioFormat packets.
Temporary codec mismatch is expected during audio codec startup, due to packets already in-flight.
2017-10-16 11:41:40 -07:00
Ken Cooke
e4e37e65e6 Handle packets in-flight during audio codec startup 2017-10-13 08:19:30 -07:00
Ken Cooke
b026a0461d Fix clang warnings for left-shift of signed int 2017-10-10 09:13:06 -07:00
Ken Cooke
4f19366349 Remove debug code 2017-10-06 08:05:55 -07:00
Ken Cooke
c6f3a9d9c3 Better comments 2017-10-06 08:04:18 -07:00
Ken Cooke
516e983dfb Refactor peakhold to avoid mixed signed/unsigned fixed-point math 2017-10-06 08:03:25 -07:00
Ken Cooke
8822b1bfa4 Minor cleanup 2017-10-05 09:49:38 -07:00
Ken Cooke
82d13090f9 Better comments 2017-10-05 09:28:30 -07:00
Ken Cooke
d8341a0929 Work around compiler optimization bug 2017-10-05 09:27:07 -07:00
Ken Cooke
218de29356 disable compiler optimization as temporary fix 2017-10-05 07:39:21 -07:00
Bradley Austin Davis
b93e91b9f3 New android toolchain 2017-09-19 13:45:12 -07:00
Ken Cooke
684b7fee5a DC filter cutoff at 0.5Hz 2017-08-24 11:20:22 -07:00
Ken Cooke
4a253023ee float constants 2017-08-24 10:15:54 -07:00
Ken Cooke
c3ff505b73 More aggressive noise gate threshold 2017-08-24 10:06:41 -07:00
Atlante45
70a5916ef3 Fix debug builds startup crash 2017-07-19 16:18:01 -07:00
Seth Alves
06618e81d0 remove unneeded <> 2017-07-12 13:14:32 -07:00
Seth Alves
ddf2312dc6 code review 2017-07-12 12:45:52 -07:00
Seth Alves
b556ddc0ef remove unneeded AudioInjectorPointer constructor 2017-07-12 07:24:19 -07:00
Seth Alves
084a989a7a stopAndDeleteLater is now just stop 2017-07-11 21:21:42 -07:00
Seth Alves
3897ab2723 don't call deleteLater on smartpointered object 2017-07-11 20:16:00 -07:00
Seth Alves
972dc4d1b2 more const ref 2017-07-11 19:56:34 -07:00
Seth Alves
c52e7e180a use const AudioInjectorPointer& in some places 2017-07-11 19:42:03 -07:00
Seth Alves
81489ea6c4 use QEnableSharedFromThis 2017-07-11 18:44:37 -07:00
Seth Alves
0b2f13dacc don't use deleteLater on smartpointered object 2017-07-11 17:07:44 -07:00
Seth Alves
59c586bc5d remove unused code 2017-07-11 16:58:19 -07:00
Seth Alves
3c8c87cff5 i hate you, milkman dan 2017-07-11 16:48:28 -07:00
Seth Alves
3670a04d8e switch bare pointers to AudioInjector objects to be QSharedPointers 2017-07-11 14:24:58 -07:00
Brad Davis
6fc82bb351 Switch to preprocessor macro for blocking invokes to capture function information 2017-06-30 11:36:24 -07:00
Brad Davis
b52dd7b822 Don't use blocking connections on the main thread 2017-06-29 20:45:17 -07:00
Brad Hefta-Gaub
197006e3d3 Merge pull request #10780 from kencooke/audio-hrtf-avx512
HRTF optimizations
2017-06-22 13:34:05 -07:00
Ken Cooke
af0f460659 Fix extra whitespace 2017-06-22 06:38:13 -07:00
Ken Cooke
5d235f8c52 Fix typo 2017-06-22 06:32:32 -07:00
Ken Cooke
38c87b0f08 Fallback code to allow compiling with VS2013 2017-06-21 13:19:46 -07:00
Ken Cooke
afb26df2de Runtime dispatch for AVX512 optimized HRTF 2017-06-21 11:26:53 -07:00
Ken Cooke
00c904c927 Detect compiler support for SIMD intrinsics in conditional compilation 2017-06-21 09:34:02 -07:00
Ken Cooke
1688ad5f0a HRTF optimized for AVX512 2017-06-20 17:09:38 -07:00
Stephen Birarda
c132e29b06 remove conditional seek from InboundAudioStream 2017-06-14 11:42:19 -07:00
Stephen Birarda
29842c67cc use received message faking for cleaner replication in audio 2017-06-13 18:04:59 -07:00
Stephen Birarda
ab3a0ddba2 don't emit codec mismatch upstream, handle replicated silent frames 2017-06-12 19:49:02 -07:00
seefo
cc57d28ccc Made requested changes to PR10554 2017-05-26 11:49:43 -07:00
seefo
90d5b2a6d4 Removed SoundProcessor's dependence on Sound objects 2017-05-26 10:32:34 -07:00
seefo
32b5ac5020 Moved audio asset processing to a separate thread 2017-05-25 16:10:53 -07:00
Ken Cooke
3d67978caa Delete the old noise gate 2017-05-23 15:53:38 -07:00
Ken Cooke
986d86ec17 Fix nasty preexisting bug in computing numSamples, where sizeof(SAMPLE_SIZE) incorrectly returns 4 instead of 2. 2017-05-23 10:29:43 -07:00
Ken Cooke
746b41e509 Fix typo in comments 2017-05-18 17:30:07 -07:00
Ken Cooke
205b9d4aec Fix compiler warnings 2017-05-18 16:49:02 -07:00
Ken Cooke
18ed3dd6ed Remove debug code 2017-05-18 14:30:25 -07:00
Ken Cooke
6f2a84a084 Add stand-alone DC blocking filter 2017-05-18 14:26:35 -07:00
Ken Cooke
c1cd26b473 New log-domain noise gate with adaptive threshold 2017-05-18 14:21:56 -07:00
Ken Cooke
106dd6ce6a Fast fixed-point log2 approximation 2017-05-18 14:15:10 -07:00
Ken Cooke
cad9eeb8ba Refactor the peak limiter (output is bit-exact) 2017-05-18 14:13:24 -07:00
Zach Pomerantz
c478f1a752 synchronously fill injector buffer on underrun 2017-05-09 16:34:42 -04:00
Zach Pomerantz
48af83a960 guard against audio injector and local buffer datarace 2017-05-05 17:05:40 -04:00
Atlante45
70ece9f0fd Load skybox first and sounds later 2017-04-26 14:57:23 -07:00
Ken Cooke
69863dd735 Fix the crash in Debug builds, caused by undeclared metatype for AudioInjector* 2017-03-30 08:52:04 -07:00
Zach Pomerantz
f43706dfe1 clean AudioNoiseGate 2017-03-15 00:14:55 +00:00
Zach Pomerantz
0abcda86a8 mv AudioNoiseGate to audio 2017-03-15 00:14:55 +00:00
Brad Hefta-Gaub
bdab24d9bf fix spelling 2017-03-09 08:25:56 -08:00
Brad Hefta-Gaub
79d8d90581 CR feedback 2017-03-08 20:35:24 -08:00
Brad Hefta-Gaub
2d595c1f87 CR feedback 2017-03-08 20:29:32 -08:00
Brad Hefta-Gaub
1bdad89cbe properly handle silent packet transitions 2017-03-08 17:27:46 -08:00
Thijs Wenker
13b2b6086f Fix recorder.js playback in interface 2017-02-21 19:47:26 +01:00
Zach Pomerantz
ff56eb24c8 Merge pull request #9537 from zzmp/audio/throttle-filter
Add injector/avatar attenuation to audio-mixer throttling
2017-02-07 20:57:43 +01:00
Ken Cooke
63c2aa1dfc Remove obsoleted code 2017-02-06 12:55:03 -08:00
Ken Cooke
a77e4262e3 Remove obsoleted code 2017-02-06 12:47:28 -08:00
Ken Cooke
49605d52e0 Remove debug code 2017-02-06 10:42:32 -08:00
Ken Cooke
8033f932a6 Simulate 1% random packet-loss, for debug/test 2017-02-06 10:16:25 -08:00
Ken Cooke
4acb99cd4f Use interpolated audio (codec packet-loss concealment) or zero samples (if no codec) when audio packets are lost. This audio is still processed by the audio pipeline to avoid clicks/pops. 2017-02-06 09:29:39 -08:00
Zach Pomerantz
1f56814714 Merge branch 'master' of https://github.com/highfidelity/hifi into audio/throttle-filter 2017-01-31 19:35:27 +00:00
Zach Pomerantz
24ca765a39 add hrtf gain getter 2017-01-27 14:36:59 -05:00
Zach Pomerantz
1c5228cb6d fix AudioRingBuffer::appendData 2017-01-26 19:16:02 -05:00
Zach Pomerantz
3d526a1024 Merge branch 'master' of github.com:highfidelity/hifi into audio/threaded-local 2017-01-26 18:56:58 -05:00
Atlante45
f540c94113 Merge branch 'master' of https://github.com/highfidelity/hifi into ess-pr 2017-01-25 13:06:49 -08:00
Atlante45
3f8b2f9cbb Fix invalid volume values in injector options 2017-01-23 11:49:07 -08:00
Zach Pomerantz
061668cba4 use lock-free pipe for local audio in device callback 2017-01-22 00:25:08 -05:00
Zach Pomerantz
bb247fe8a3 rename AudioMixRingBuffer 2017-01-20 14:48:54 -05:00
Zach Pomerantz
75281099bd add conformant explicit instantiation for AudioRingBuffers 2017-01-20 14:33:54 -05:00
Stephen Birarda
1b778a3ee0 fail quietly if local injection cannot happen 2017-01-20 10:42:07 -08:00
Zach Pomerantz
02e62938a4 add AudioRingMixBuffer 2017-01-20 12:29:44 -05:00
Zach Pomerantz
95a7b38ea4 templatize AudioRingBuffer 2017-01-20 12:29:44 -05:00
Zach Fox
b0b6aeac6c Ken's feedback 2017-01-13 13:00:03 -08:00
Ken Cooke
083c7bc523 Add a local HRTF gain adjustment. Gain adjustments are persistent and properly interpolated. 2017-01-11 10:05:39 -08:00
Ken Cooke
afacb59999 Use logarithmic quantization of injector "volume" over the wire.
Allow gains > 1.0 (up to +30dB)
Better quantization at low levels (uniform steps in dB)
2017-01-04 15:38:26 -08:00
Ken Cooke
a42ac89a6d Faster HRTF
New AVX2 implementation of FIR_1x4() achieves 24 FLOPS per clock on HSW/BDW/SKL
Removed old AVX implementation
32-byte alignment of SIMD buffers and tables
Fixed the poorly optimized code produced by GCC -O2
2016-12-30 13:47:31 -08:00
Andrew Meadows
b56a15b60a Merge pull request #9273 from kencooke/audio-ambisonic-src2
Improved audio resampler
2016-12-27 17:07:56 -08:00
Ken Cooke
a2ea6bf36e Improved audio resampler
Added LQ mode (2x faster).
Added HQ mode (2x slower), intended for offline resampling.
Default (MQ) quality is slightly improved (512 filter phases in irrational mode).
2016-12-24 11:10:35 -08:00
Ken Cooke
fc2c2a1906 fix compiler warnings 2016-12-24 10:06:30 -08:00
Ken Cooke
f5d52c3d3b 64-bit code optimizations
Use size_t for inner-loop array indexing, to avoid extraneous MOVSXD instructions when compiled with MSVC x64.
2016-12-24 09:00:23 -08:00
Ken Cooke
b878051cd9 Ambisonic limiter, with gain linking between all channels to preserve imaging 2016-12-24 08:42:56 -08:00
Brad Hefta-Gaub
dbbed462b4 cleanup naked qDebug() calls 2016-12-19 22:24:25 -08:00
David Kelly
b68a07e930 Merge pull request #9197 from davidkelly/dk/injectorVolume
No longer applying volume when reading audio injector buffer
2016-12-16 15:11:33 -08:00
Ken Cooke
b4994a3d89 Ambisonic resampler, optimized using AVX2.
int16_t and float versions.
Removed unused SSE2 version.
Removed unused getExactInput().
Refactored to remove nested #ifdefs.
2016-12-14 15:18:41 -08:00
David Kelly
a8157ae2cd Typo, plus some CR feedback 2016-12-13 17:48:30 -08:00
David Kelly
d6b99ce57e Removed volume from AudioInjectorLocalBuffer
Since it doesn't use it.  Now clamping at 0-1 in the
AudioInjector::getVolume() call.  This is better -- one spot so it now
always gets clamped.
2016-12-13 17:34:56 -08:00