Commit graph

743 commits

Author SHA1 Message Date
Stephen Birarda
d7724b90af address code review comments 2017-06-15 15:01:03 -07:00
Stephen Birarda
1ed0b693da Merge branch 'replicants' of https://github.com/highfidelity/hifi into feat/downstream-in-nodelist 2017-06-14 16:57:28 -07:00
Ryan Huffman
785156ad9f Move downstram server adding to DS 2017-06-14 16:54:04 -07:00
Stephen Birarda
806ebd3401 add return to queueReplicatedAudioPacket if no type match 2017-06-14 16:13:20 -07:00
Stephen Birarda
afc9978841 add a comment for hop over sequence in AudioMixerClientData 2017-06-14 15:20:47 -07:00
Stephen Birarda
324a2601fc send down replicated message to avatar mixer handling 2017-06-14 11:00:22 -07:00
Stephen Birarda
29842c67cc use received message faking for cleaner replication in audio 2017-06-13 18:04:59 -07:00
Stephen Birarda
9085a0896a manually activate sockets for downstream servers 2017-06-13 17:19:58 -07:00
Stephen Birarda
3f3cc89b8d fix for header of re-replicated packets 2017-06-13 11:58:08 -07:00
Stephen Birarda
c1bbb2a084 fix incorrect UUID in replicated packets 2017-06-13 11:24:05 -07:00
Stephen Birarda
eca35ce013 fix double check for packet types 2017-06-13 11:22:30 -07:00
Stephen Birarda
aa9574fc5a add re-replication support to audio mixer 2017-06-13 09:46:12 -07:00
Stephen Birarda
30d2e9fd23 add unsafeEachNode to iterate nodes when read lock held elsewhere 2017-06-12 17:54:16 -07:00
Stephen Birarda
4688fe4c39 fix comment for change from replicant to downstream 2017-06-12 16:29:20 -07:00
Stephen Birarda
4539d615d7 add downstream server settings handling to ThreadedAssignment 2017-06-12 16:29:20 -07:00
Stephen Birarda
9fa97d611a remove invoked addOrUpdate and move node to node list thread 2017-06-12 16:29:20 -07:00
Stephen Birarda
03a8d7b8c8 only replicate packets for agents being replicated 2017-06-12 16:29:20 -07:00
Stephen Birarda
1868971cfc fix debug for manual codec in upstream agents 2017-06-12 16:29:20 -07:00
Stephen Birarda
7ed9483467 use blocking queued for addOrUpdateNode because of parenting 2017-06-12 16:29:20 -07:00
Stephen Birarda
91c25d4270 don't continously set codec for upstream agent 2017-06-12 16:29:20 -07:00
Stephen Birarda
88af8b5842 use new downstream/upstream nomeclature 2017-06-12 16:29:20 -07:00
Stephen Birarda
a4aa9689a6 don't construct a packet of exact size for replicated audio packets 2017-06-12 16:29:20 -07:00
Stephen Birarda
fe668b1bb1 make codec negotiation stateless for replicated agents 2017-06-12 16:29:20 -07:00
Stephen Birarda
d5b466e3ae fix replicant handling slot, add node strings for replicants 2017-06-12 16:29:20 -07:00
Stephen Birarda
c7b3b79a23 use replicant nodes for audio packet replication 2017-06-12 16:29:19 -07:00
Ryan Huffman
efdd3060b0 Set isUpstream when receiving a replicated audio packet 2017-06-12 15:00:03 -07:00
Ryan Huffman
3b3465ea05 Add isUpstream to Node 2017-06-12 14:59:45 -07:00
Stephen Birarda
8ebf1db9a8 switch to replicator/replicant and add new node types 2017-06-12 10:58:34 -07:00
Stephen Birarda
a085a55107 register a listener for audio format negotiation 2017-06-12 02:41:15 -07:00
Stephen Birarda
b5c26b596e seek past source UUID in mirrored packets 2017-06-12 02:39:54 -07:00
Stephen Birarda
e629881665 mirror audio format negotiation 2017-06-12 02:18:27 -07:00
Stephen Birarda
0ee0082052 handle new packet types in AudioMixerClientData::processPackets 2017-06-12 02:05:40 -07:00
Stephen Birarda
281793c4c0 update last heard timestamp for mirrored nodes 2017-06-12 01:46:12 -07:00
Stephen Birarda
f726c5bc3a handle mirrored packets in AudioMixerClientData 2017-06-12 01:16:51 -07:00
Stephen Birarda
45bb323723 experimental support for mirrored audio packets to other mixers 2017-06-12 00:19:24 -07:00
Bradley Austin Davis
b4bbf98fe3 Suppress TBB warnings 2017-06-06 15:02:16 -07:00
Atlante45
c799ddc927 CR 2017-05-16 14:53:54 -07:00
Atlante45
cde7d68570 Fix domain settings not getting cleared on re-assignment 2017-05-15 18:20:47 -07:00
Zach Pomerantz
7e2f1a6455 check for silent samples befor limiting 2017-03-09 14:31:54 -05:00
Zach Pomerantz
e69d6d8b5f track silent listeners in audio-mixer 2017-03-09 14:31:41 -05:00
Zach Pomerantz
07e97a0cab unqueue from front for audio packets 2017-02-16 21:40:53 +00:00
Zach Pomerantz
2e9217fb47 loosen audio memoization precondition 2017-02-15 13:36:03 -05:00
Zach Pomerantz
09cc4bf48d time events with packets 2017-02-14 21:48:36 +00:00
Zach Pomerantz
41a4ec4200 mv codec init to ctor from negotiateCodecs 2017-02-14 21:26:35 +00:00
Zach Pomerantz
06c8fba35d mv Node out of packet queue 2017-02-14 21:10:30 +00:00
Zach Pomerantz
a7386392a1 fix codec parsing 2017-02-14 20:46:27 +00:00
Zach Pomerantz
b102c2d1d0 generalize audio thread pool to processPackets 2017-02-14 20:46:27 +00:00
Zach Pomerantz
7d8a947e6d add node-isolated packet parsing to client data 2017-02-14 20:46:27 +00:00
Zach Pomerantz
da5a89f582 move codec negotiation to client data 2017-02-14 20:46:27 +00:00
Zach Pomerantz
481cd0ca6a move audio packets to client data 2017-02-14 20:46:27 +00:00
Zach Pomerantz
2f457ae891 add packet queue to AudioMixerClientData 2017-02-14 20:46:27 +00:00
Ken Cooke
bf077e6fdb Merge pull request #9623 from zzmp/audio/should-ignore
Optimize ignore zone checks for audio mixer
2017-02-14 06:18:54 -08:00
Brad Hefta-Gaub
d24ed62116 Merge pull request #9660 from zzmp/audio/silent-stats
Add silent_packets stat to audio mixer
2017-02-13 13:07:07 -08:00
Zach Pomerantz
e1cf04e0f0 add silent_packets stat to audio mixer 2017-02-13 20:18:16 +00:00
Zach Pomerantz
9d830d7ea9 log AVX2 support in audio-mixer 2017-02-09 18:56:49 +00:00
Zach Pomerantz
553fffd8ae time mix instead of throttle with HIFI_AUDIO_MIXER_DEBUG 2017-02-07 21:49:23 +00:00
Zach Pomerantz
ee699d3fa6 Revert 'use tbb::atomic for cp' 2017-02-07 20:40:06 +00:00
Zach Pomerantz
5e9fb17949 use tbb::atomic for cp 2017-02-07 15:01:23 -05:00
Zach Pomerantz
ad7c01e86e modularize audio ignore zone computations 2017-02-07 15:01:22 -05:00
Zach Pomerantz
308e3cab71 fix memoized ignoreZone assertion for initialization 2017-02-07 15:01:22 -05:00
Zach Pomerantz
d42b6a64c4 use threadsafe map for audio node ignore cache 2017-02-07 15:01:22 -05:00
Zach Pomerantz
4bcc9d3072 bail audio mix if node is not initialized 2017-02-07 15:01:22 -05:00
Zach Pomerantz
093f748d7d make auto stream explicit 2017-02-07 15:01:22 -05:00
Zach Pomerantz
e7cf84324b abstract audio ignore caching 2017-02-07 15:01:22 -05:00
Zach Pomerantz
207d2e78f0 fix should ignore opts 2017-02-07 15:01:21 -05:00
Zach Pomerantz
310c8b18ee add caching over symmetric nodes for audio shouldIgnore 2017-02-07 15:01:21 -05:00
Zach Pomerantz
8a42755e8f mv shouldIgnore from AudioMixerSlave to ClientData 2017-02-07 15:01:21 -05:00
Zach Pomerantz
3c1cf504d0 rename getIgnoreBox to getIgnoreZone to prevent confusion 2017-02-07 15:01:21 -05:00
Zach Pomerantz
9bcc5c95b4 reduce stream lock usage in AudioMixerClientData::getIgnoreBox 2017-02-07 15:01:21 -05:00
Zach Pomerantz
569ae113a0 memoize audio ignore box in AudioMixerClientData 2017-02-07 15:01:21 -05:00
Zach Pomerantz
9b0190f1cf add ns/throttle to audio mixer debug stats 2017-02-06 20:31:19 +00:00
Zach Pomerantz
eb00c7ba11 group constants in audio mixer gain computation 2017-01-30 17:48:03 +00:00
Zach Pomerantz
e7e550d78c add injector attenuation to audio gain appx 2017-01-27 16:18:10 -05:00
Zach Pomerantz
2da4dce8be rm statics from audio-mixer mixing 2017-01-27 15:46:25 -05:00
Zach Pomerantz
fe1847f965 clean up audio-mixer computeGain helper 2017-01-27 15:46:12 -05:00
Zach Pomerantz
ca727b7920 inline audio mix helpers 2017-01-27 15:28:43 -05:00
Zach Pomerantz
c4190ad4c4 add hrtf adjustment to throttle gain appx 2017-01-27 15:26:49 -05:00
Zach Pomerantz
7bcf136dc9 modularize audio throttle gain appx 2017-01-27 15:26:32 -05:00
Zach Pomerantz
d82c8b251a use sleep_for to avoid WIN32 sleep_until bug 2017-01-27 13:22:50 -05:00
Chris Collins
c0ee091946 Merge pull request #9502 from zzmp/audio/throttle
Throttle audio with PI controller, by node
2017-01-26 14:25:44 -08:00
Brad Hefta-Gaub
0582aca598 Merge pull request #9511 from kunalgosar/master
change server to default to not auto-muting
2017-01-26 10:59:50 -08:00
Zach Pomerantz
fb31254f57 add proportional term to audio-mixer throttling controller 2017-01-25 21:18:03 +00:00
Zach Pomerantz
46afa7e764 DRY audio-mixer all-stream mixes 2017-01-25 21:18:03 +00:00
Zach Pomerantz
1153c1900f reorder AudioMixerSlave::prepareMix to be sequential 2017-01-25 21:18:03 +00:00
Zach Pomerantz
66c82f3193 clean AudioMixerSlave::addStreamToMix 2017-01-25 21:18:03 +00:00
Zach Pomerantz
6cfaa624a5 mv helpers from AudioMixerSlave 2017-01-25 21:18:03 +00:00
Atlante45
f540c94113 Merge branch 'master' of https://github.com/highfidelity/hifi into ess-pr 2017-01-25 13:06:49 -08:00
kunalgosar
7b896f961b change server to default to not auto-muting 2017-01-25 13:00:57 -08:00
Zach Pomerantz
9bdea98d21 clean AudioMixerSlave::mix 2017-01-25 19:24:12 +00:00
Zach Pomerantz
275e337a80 rm unused LOUDNESS_TO_DISTANCE_RATIO 2017-01-25 18:55:54 +00:00
Zach Pomerantz
4ac0df8f8d throttle audio by node, not stream 2017-01-25 00:19:38 +00:00
Zach Pomerantz
b7148b338d change audio-mixer backoff threshold 2017-01-25 00:19:28 +00:00
Zach Pomerantz
997c015b7f start audio-mix timestamp now 2017-01-24 21:30:07 +00:00
Zach Pomerantz
2bc725e2be change audio-mixer throttling to integral-based linear throttle/backoff 2017-01-24 21:30:05 +00:00
Zach Pomerantz
b028d84aab fix audio-mixer sleep 2017-01-24 21:29:20 +00:00
Zach Pomerantz
09f41bff00 improve audio-mixer timings 2017-01-24 21:29:20 +00:00
Zach Pomerantz
39acba5455 throttle audio streams by count using PI controller 2017-01-23 21:30:41 -05:00
Zach Pomerantz
3c9c78ae14 add threadcount to audio-mixer stats 2017-01-23 15:50:54 -05:00
Zach Pomerantz
eba96c45d7 fix warnings for signed comp in AudioMixerSlavePool 2017-01-20 12:25:22 -05:00
Atlante45
529286b2ea More EntityScriptServer work 2017-01-17 13:47:45 -08:00