Commit graph

489 commits

Author SHA1 Message Date
Howard Stearns
d2b83b47ba Merge pull request #8936 from zzmp/clean/audio-mixer
clean audio mixer
2016-10-27 15:57:16 -07:00
David Kelly
5e4f539144 AudioMixer flushes now
And protected agent from case with no codec
2016-10-27 14:46:04 -07:00
Zach Pomerantz
a7d54b8e0a rm unused lastCutoffRatio 2016-10-27 14:38:17 -07:00
Zach Pomerantz
32040a9047 add stat for streams in audio mixer 2016-10-27 13:55:17 -07:00
Zach Pomerantz
20bac5aeef clean up broadcastMixes 2016-10-27 13:47:00 -07:00
Zach Pomerantz
04e5d8e302 initialize audio client data 2016-10-27 13:46:42 -07:00
Zach Pomerantz
3e16dabb75 fix audio mixer throttling 2016-10-27 13:46:33 -07:00
David Kelly
6a61762659 First try
AudioMixer has same issue transitioning from silence to encoded
audio and back, it seems.  This makes that go away, but I don't
like it.  Better to support a flush function in the encoder but
for now lets do this and be sure it is the entire issue.
2016-10-26 17:41:34 -07:00
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