Commit graph

531 commits

Author SHA1 Message Date
Seth Alves
af5be8d1d9 reduce data-races in logging 2016-10-18 15:59:00 -07:00
Seth Alves
0c6dedff45 avoid various data-races related to stats collection and delivery 2016-10-18 13:05:53 -07:00
Zach Pomerantz
43c40aa090 avoid repetition with fade on injectors 2016-09-29 15:25:41 -07:00
Zach Pomerantz
562e8e0c65 disable excessive audio settings logging 2016-09-23 11:58:02 -07:00
Zach Pomerantz
e2ff738fc3 strip unused audio settings
- remove parameters on the jitter buffer algorithm, these are now static
- remove parameters on the output starve detection algorithm, now static
- move interface audio settings to the Developer menu
2016-09-21 17:35:27 -07:00
Ken Cooke
7629e34586 optimized distance-attnuation calculation 2016-08-04 11:05:34 -07:00
Brad Hefta-Gaub
c6ffd81c4b some cleanup 2016-07-18 22:42:38 -07:00
Brad Hefta-Gaub
2e63aba8c9 when getting unexpected codec in the mixer, send a message to the client to select a different codec 2016-07-18 22:29:05 -07:00
Brad Hefta-Gaub
20824f038c include codec in audio stream packets so that each side can discard packets that don't match 2016-07-18 21:59:44 -07:00
Ken Cooke
59ac2a789f Fix the AudioMixer distance attenuation.
The zone settings are still used, and still match the documentation where 0 = no attenuation and 1 = max attenuation.  The default is now 0.5 which corresponds to -6dB per doubling of distance. This is the attenuation for a spherical wave in the free field.
2016-07-15 18:07:19 -07:00
Ken Cooke
7a4bdc1779 enable in Interface and AudioMixer, by passing distance between source and listener 2016-07-14 11:30:55 -07:00
Ken Cooke
d7399f5781 Improved HRTF.
Adds a distance filter to model the frequency-dependent attenuation of sound propagation in open air.
Optimized using SIMD and computing all biquads in parallel. Performance impact is almost zero.
Filter updates are continuously interpolated and clean to -90dB.

Not enabled yet (distance hardcoded to 0.0f)
2016-07-14 10:34:42 -07:00
Stephen Birarda
b68958317a re-send ignore requests when mixers are re-added 2016-07-13 15:06:31 -07:00
Stephen Birarda
095bd7e6c8 cleanup logging, move packet parsing to mixers 2016-07-13 15:06:31 -07:00
Stephen Birarda
a134ac72de add packet type and plumbing for node ignore 2016-07-13 15:06:31 -07:00
Brad Hefta-Gaub
71b6210c4e removed some log spam 2016-07-12 10:18:37 -07:00
Brad Hefta-Gaub
7d608ba592 groundwork for injector support 2016-07-10 21:01:20 -07:00
Brad Hefta-Gaub
ed9715ae5f some cleanup, proper memory allocation/deallocation 2016-07-10 17:40:58 -07:00
Brad Hefta-Gaub
ba6bb24595 rework plugins to allow different decoder/encoder instances per streams 2016-07-10 16:49:03 -07:00
Brad Hefta-Gaub
a71baf5601 handle codec prioritization, handle multiple codec choices 2016-07-08 21:18:03 -07:00
Brad Hefta-Gaub
126e5c2926 codec pipeline working, zlib example 2016-07-08 14:34:44 -07:00
Brad Hefta-Gaub
3c6447326e more codec plumbing 2016-07-07 21:24:24 -07:00
Brad Hefta-Gaub
7a4b11ee97 more work on codecs 2016-06-27 13:06:19 -07:00
Brad Hefta-Gaub
d7bffc3eab first cut at negotiating codecs 2016-06-23 17:14:41 -07:00
Brad Hefta-Gaub
7fd531541c simplify 2016-05-29 12:08:10 -07:00
Brad Hefta-Gaub
1e7cd06d0e add audio peak limiter to audio mixer 2016-05-28 20:34:27 -07:00
Stephen Birarda
93cf5a1035 fixes for CR comments 2016-04-18 16:53:02 -07:00
Stephen Birarda
925c1ce26b don't send all stats to audio-mixer clients at same time 2016-04-15 11:04:56 -07:00
Stephen Birarda
0fd32b36ad use a steadier clock for AudioMixer block timing 2016-04-15 11:04:35 -07:00
Ken Cooke
063891d65e remove dead code 2016-03-24 13:29:57 -07:00
Ken Cooke
c6ca984782 Fix Reverb Zone settings to work correctly with new reverb. 2016-03-24 12:59:52 -07:00
Thijs Wenker
a716d971d9 Merge branch 'master' of https://github.com/highfidelity/hifi into 20774_fix 2016-02-25 02:18:40 +01:00
Clément Brisset
911591c0ea Merge pull request #7082 from birarda/hrtf-map-crash
fix for HRTF map crash
2016-02-11 09:57:20 -08:00
Stephen Birarda
52cd4ae1a5 make sure the AudioMixerClientData exists before using it 2016-02-11 09:34:21 -08:00
Stephen Birarda
6707535ced remove unused and incorrect stats from DS stats 2016-02-10 17:33:56 -08:00
Stephen Birarda
97cd65cf80 don't use usecTimestampNow for per second actions 2016-02-10 15:07:58 -08:00
Stephen Birarda
8598360f2e allow string values to be graphable in DS stats 2016-02-10 11:50:23 -08:00
Stephen Birarda
a9fc69b4ac cleanup percentage calculation for AM mix stats 2016-02-10 10:49:13 -08:00
Stephen Birarda
26fd0c305a push the length threshold to 1e-30 2016-02-09 17:14:23 -08:00
Stephen Birarda
a8841b475f specify float instead of implicitly converted double 2016-02-09 17:05:16 -08:00
Stephen Birarda
1a7738353a use a length check against source listener distance 2016-02-09 17:01:18 -08:00
Stephen Birarda
e0cb8db914 handle zero distance from listener to source 2016-02-09 16:51:23 -08:00
Stephen Birarda
87b85d6951 more useful stats for new HRTF mixer 2016-02-09 16:39:45 -08:00
Stephen Birarda
87d1d0a49c call renderSilent when audio-mixer is struggling 2016-02-09 15:30:51 -08:00
Stephen Birarda
2cecfc499b correct azimuth for HRTF 2016-02-09 15:03:55 -08:00
Stephen Birarda
84b87b6f38 remove the unused AUDIO_MIXER_DEBUG define 2016-02-09 14:34:02 -08:00
Stephen Birarda
1773233af4 cleanup management of HRTF objects across connected Nodes 2016-02-09 14:30:44 -08:00
Stephen Birarda
a6a694c704 fix mixing bugs post HRTF integration 2016-02-09 11:58:55 -08:00
Stephen Birarda
1ce1a73f92 some concurrency repairs for AudioMixerClientData streams 2016-02-09 10:29:02 -08:00
Stephen Birarda
fd96f0d960 leverage new HRTF in audio-mixer mix preparation 2016-02-08 18:12:25 -08:00
Stephen Birarda
445662f5ae clean sweep of old now unused audio files 2016-02-08 15:38:12 -08:00
Stephen Birarda
0e20392e66 remove debug for mute environment packet 2016-02-03 11:07:16 -08:00
Stephen Birarda
26abca92ae don't move the re-used mute environment packet 2016-02-03 10:55:07 -08:00
Stephen Birarda
79dc2d5d55 add some debug for mute environment crash 2016-02-02 11:40:15 -08:00
Stephen Birarda
095f0b9349 rename canAdjustLocks to isAllowedEditor for multi-purpose 2016-02-01 16:46:11 -08:00
Stephen Birarda
0e016838b4 tweak size of values in AudioMixer 2016-01-29 14:04:45 -08:00
Stephen Birarda
63da0074b4 repair the audio-mixer coma debug 2016-01-21 10:26:03 -08:00
Stephen Birarda
5e451360f7 add some debug for the next audio mixer coma 2016-01-20 18:22:37 -08:00
Thijs Wenker
6808e25fdf zone ranges to min and max variables, this way it is more oversee-able with the new negative positioning system 2016-01-13 01:26:32 +01:00
Leonardo Murillo
25494ec867 Merge pull request #6562 from Atlante45/baseball
Baseball
2015-12-07 14:11:21 -08:00
Stephen Birarda
4573e5c59e resolve conflicts on merge with upstream/master 2015-11-30 13:32:38 -08:00
Ryan Huffman
dac491ef41 Merge branch 'master' of https://github.com/highfidelity/hifi into proto-received-message 2015-11-24 09:59:22 -08:00
Stephen Birarda
b34934b849 resolve conflicts on merge with upstream/master 2015-11-20 11:52:53 -08:00
Ryan Huffman
07d21514c5 Merge branch 'master' of https://github.com/highfidelity/hifi into proto-received-message 2015-11-19 10:47:37 -08:00
Stephen Birarda
271387f96e use a unique_ptr for linkedData in Node 2015-11-18 18:03:31 -08:00
Stephen Birarda
20485b817c use safer domain-server settings request in entity-server 2015-11-18 15:27:57 -08:00
Stephen Birarda
f2ecce6043 use safer domain settings request in audio-mixer 2015-11-18 15:13:29 -08:00
Stephen Birarda
6080654d7e zero out the pre-mix samples for each stream 2015-10-26 15:48:05 -07:00
Ryan Huffman
9ddcfdf94d Cleanup PacketReceier and ReceivedMessage 2015-10-16 09:21:10 -07:00
Ryan Huffman
7682ab00e3 Add ReceivedMessage and receive progress 2015-10-15 14:09:53 -07:00
Stephen Birarda
d76e8a7e48 remove double settings request for testing 2015-08-25 11:27:31 -07:00
Stephen Birarda
f7799bcf8f add TODO for settings fail, cleanup 2015-08-24 17:02:47 -07:00
Atlante45
62c76d0332 registerListenerForTypes optimisations 2015-08-20 14:56:35 +02:00
Stephen Birarda
052978898e resolve conflicts on merge with upstream master 2015-08-05 11:16:20 -07:00
Stephen Birarda
fc80e427b9 remove names from audio-mixer jitter calc comments 2015-07-30 11:08:45 -07:00
Stephen Birarda
9e7fb9ae16 shuffle Packet headers, use static enum for PacketType 2015-07-23 13:56:47 -07:00
Stephen Birarda
9556fecbe2 initial changes to make _nodeSocket a udt::Socket 2015-07-20 17:10:22 -07:00
Stephen Birarda
1752d5e7ca fix mix packet sample copy bug 2015-07-15 17:52:37 -07:00
Stephen Birarda
863cc3390a fix send of mixed audio stream packet from AM 2015-07-15 17:41:00 -07:00
Stephen Birarda
e127c5c06d rename Packet methods for clarity 2015-07-15 10:40:40 -07:00
Atlante45
fbb6a94579 Merge branch 'receive_packets' of https://github.com/huffman/hifi into protocol 2015-07-14 16:36:28 -07:00
Ryan Huffman
bd345cdccd Merge branch 'atp' of github.com:birarda/hifi into receive_packets
Conflicts:
	libraries/networking/src/PacketReceiver.cpp
2015-07-14 15:59:16 -07:00
Stephen Birarda
789235b8c7 make NodeList deleter be deleteLater 2015-07-14 15:28:38 -07:00
Ryan Huffman
56b5c9acff Merge branch 'atp' of github.com:birarda/hifi into receive_packets
Conflicts:
	assignment-client/src/entities/EntityServer.cpp
	domain-server/src/DomainServer.cpp
2015-07-14 14:53:45 -07:00
Stephen Birarda
0637f589b5 add PacketListener to help unregister for packets 2015-07-14 13:52:38 -07:00
Ryan Huffman
0edc909818 Merge branch 'protocol' of github.com:birarda/hifi into receive_packets
Conflicts:
	assignment-client/src/audio/AudioMixer.cpp
	interface/src/Application.cpp
	libraries/networking/src/Packet.cpp
2015-07-14 10:21:31 -07:00
Atlante45
c80df94b06 Update includes for moved files 2015-07-13 15:28:55 -07:00
Stephen Birarda
f06636d45e repairs for other ThreadedAssignment subclasses 2015-07-13 15:16:55 -07:00
Stephen Birarda
26be492475 use same listener for many packets in AudioMixer 2015-07-13 14:46:56 -07:00
Ryan Huffman
9de6828b03 Remove readPendingDatagram from AudioMixer 2015-07-13 14:24:06 -07:00
Ryan Huffman
cdbcaf0f7f Fix AudioMixer compilation errors 2015-07-13 12:06:12 -07:00
Atlante45
957e6394a9 sendPacket function take Node& not a pointer 2015-07-13 11:57:20 -07:00
Ryan Huffman
bfb878210f Fix compilation errors in AudioMixer 2015-07-10 17:27:45 -07:00
Ryan Huffman
74afbd7de7 Fix AudioMixer packetReceiver calls 2015-07-10 14:22:46 -07:00
Ryan Huffman
99121a3a20 Fix AudioMixer not using PacketReceiver correctly 2015-07-10 12:22:53 -07:00
Ryan Huffman
c841867044 Update AudioMixer to use PacketReceiver 2015-07-10 09:37:24 -07:00
Atlante45
c77310019d Some .get() cleanup 2015-07-09 14:03:32 -07:00
Atlante45
605b004514 Assigment client compile fixes 2015-07-09 11:19:36 -07:00
Stephen Birarda
74940a2132 replace lingering PacketTypes in old format 2015-07-08 10:18:13 -07:00
Stephen Birarda
ff487ee092 move the AudioClient mix packet 2015-07-07 16:30:50 -07:00
Ryan Huffman
3690ecc28f Add std::move to sendPacket calls 2015-07-07 16:24:11 -07:00
Stephen Birarda
171ebf5437 fix for mix packet sizes in audio 2015-07-07 14:51:21 -07:00
Stephen Birarda
6760b048b6 fix for initialization of mute packet 2015-07-07 14:50:37 -07:00
Stephen Birarda
e7fee26d1a give specific packet size for audio env packet 2015-07-07 14:50:05 -07:00
Stephen Birarda
269bea65fb fix AssignmentClientMonitor and AudioMixer to use NLPacket 2015-07-06 17:20:08 -07:00
Stephen Birarda
37fd954066 remove used of PacketPayload in AudioMixer 2015-07-06 17:15:01 -07:00
Stephen Birarda
9a521fee47 change audio environment packet creation 2015-07-06 16:53:53 -07:00
Stephen Birarda
672c5a8414 use new packet creation for client audio 2015-07-06 16:49:48 -07:00
Stephen Birarda
0d64e82fe2 replace PacketType declarations with PacketType::Value 2015-07-02 16:38:52 -07:00
Stephen Birarda
a77cf4fb7f fix audio-mixer shutdown on UNIX/OS X 2015-06-25 16:34:38 -07:00
Stephen Birarda
81460e48f4 fix for sticking windows audio-mixer 2015-06-11 17:25:27 -07:00
Stephen Birarda
ca87d64dc7 fix for audio-mixer shutdown hang, removing spaces 2015-05-13 12:03:21 -07:00
Stephen Birarda
8c6715e4fc resolve conflicts on merge with upstream/master 2015-05-11 11:10:22 -07:00
Stephen Birarda
d75d204ff6 standardize cleanup of ThreadedAssignments 2015-05-07 17:03:43 -07:00
Stephen Birarda
bfccf02912 use lamdbas for linkedDataCreateCallback 2015-05-07 15:37:02 -07:00
Stephen Birarda
6b3cf1ba4a remove dependency of PacketHeaders on NodeList 2015-05-05 12:19:42 -07:00
Stephen Birarda
d602c71346 cleanup audio-mixer stats, add username interpolation 2015-05-01 16:12:46 -07:00
Stephen Birarda
842886d0fc add back read_pending_datagrams stats 2015-04-29 16:28:47 -07:00
Stephen Birarda
68998f4423 cleanup AudioMixer stats to be properly nested 2015-04-28 18:19:16 -07:00
Stephen Birarda
77be0012cf cleanup stats packaging in AudioMixer 2015-04-28 15:35:51 -07:00
Atlante45
604a13f8ad Only editor can mute environment 2015-04-15 17:04:59 +02:00
ZappoMan
e87e0a1e0b some cleanup of dead code related to timers 2015-03-11 16:27:04 -07:00
Atlante45
e79e1a547f Merge branch 'master' of https://github.com/highfidelity/hifi into reverb_smoothing
Conflicts:
	libraries/audio-client/src/AudioClient.cpp
	libraries/audio-client/src/AudioClient.h
2015-02-10 16:08:34 +01:00
Atlante45
1cfd98b2d7 Name threads 2015-01-31 00:50:12 -08:00
Atlante45
bd9668b9fa Change WetLevel modulation 2015-01-15 18:23:43 -08:00
Atlante45
46db3277eb Merge branch 'master' of https://github.com/highfidelity/hifi into reverb_smoothing 2015-01-14 17:41:14 -08:00
Atlante45
692d9d060e Merge branch 'master' of https://github.com/highfidelity/hifi into reverb_smoothing
Conflicts:
	interface/src/Audio.cpp
	interface/src/Audio.h
	interface/src/ModelUploader.cpp
2015-01-14 17:14:18 -08:00
Atlante45
2a82ff9768 Merge branch 'master' of https://github.com/highfidelity/hifi into applications_diet_cpp11
Conflicts:
	assignment-client/src/voxels/VoxelServer.cpp
	interface/src/Application.cpp
	interface/src/Audio.cpp
	interface/src/DatagramProcessor.cpp
	interface/src/Menu.cpp
	interface/src/Util.cpp
	interface/src/avatar/MyAvatar.cpp
	interface/src/ui/ApplicationOverlay.cpp
	interface/src/ui/PreferencesDialog.cpp
	libraries/networking/src/NodeList.cpp
	libraries/shared/src/DependencyManager.h
2015-01-13 11:03:14 -08:00
David Rowe
07b30da2ac Fix miscellaneous types and casts 2015-01-08 13:44:51 -08:00
Stephen Birarda
c7a5f3c86c resolve conflicts and merge with upstream master 2014-12-29 10:59:42 -07:00
Clement
6f52cf6ee9 Merge branch 'master' of https://github.com/highfidelity/hifi into reverb_smoothing
Conflicts:
	interface/src/Audio.cpp
2014-12-29 09:48:38 -08:00
Atlante45
0bd9ed469e Changed NodeList::getInstance() calls to use the DM 2014-12-17 15:28:25 -08:00
Stephen Birarda
1db12453d4 move audio stats into member of Audio 2014-12-16 14:47:24 -08:00
Stephen Birarda
bb77986f1a use new AudioConstants in AudioMixer classes 2014-12-16 11:56:56 -08:00
Atlante45
1f35e130ef Smooth reverb wet level on room edges 2014-12-11 12:33:40 -08:00
Stephen Birarda
5c3e90f64f resolve conflicts on merge with upstream master 2014-12-03 13:11:56 -08:00
Atlante45
ae3bcc8f06 No more .f 2014-11-19 16:53:39 -08:00
Atlante45
0528a9ff9b Remove forgotten setLastMuted 2014-11-17 10:49:35 -08:00
Atlante45
4615afe034 Remove lastMuted member in AvatarAudioStream 2014-11-17 10:32:28 -08:00
Atlante45
46eebe9d40 Give noisy mutes their own packet type 2014-11-17 10:26:47 -08:00
Stephen Birarda
f27367a0c1 fix audio-mixer muting for injectors 2014-11-13 15:00:40 -08:00
Philip Rosedale
17d0f247d6 Switch muting threshold to 0.003 to be a bit less aggressive 2014-11-11 14:10:44 -08:00
Philip Rosedale
d9141b4010 Merge pull request #3750 from Atlante45/reverb_for_own_voice
Reverb for own voice
2014-11-11 10:52:26 -08:00
Atlante45
a868661a25 Extra space 2014-11-10 15:51:31 -08:00
Atlante45
02b401701f Set a minimum mute intervalle in the mixer 2014-11-10 15:46:36 -08:00
Atlante45
edec4d1298 Mixer send mute when if too noisy 2014-11-10 14:10:29 -08:00
Stephen Birarda
2ca673175a rename StdDev to StDev, patch its leak 2014-11-07 17:15:54 -08:00
Philip Rosedale
12eb67c734 fix bug with audio mixer muting too often 2014-11-07 14:18:57 -08:00
Stephen Birarda
0f32346324 resolve conflicts on merge with upstream master 2014-11-07 09:10:12 -08:00
Atlante45
4dc40c9e84 Merge branch 'master' of https://github.com/highfidelity/hifi into reverb_for_own_voice 2014-11-06 23:17:53 +01:00