Commit graph

948 commits

Author SHA1 Message Date
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
Zach Fox
44c6eb303b Fix the bug 2016-12-13 12:46:31 -08:00
Clément Brisset
050c0fe14a Merge pull request #9188 from kencooke/audio-wav-parser
Fix and improve the WAV file loader
2016-12-12 17:51:20 -08:00