Commit graph

256 commits

Author SHA1 Message Date
Stephen Birarda
1868971cfc fix debug for manual codec in upstream agents 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
c7b3b79a23 use replicant nodes for audio packet replication 2017-06-12 16:29:19 -07:00
Stephen Birarda
8ebf1db9a8 switch to replicator/replicant and add new node types 2017-06-12 10:58:34 -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
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
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
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
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
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
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
Brad Hefta-Gaub
fe709f51de personal space feature 2016-11-19 16:30:15 -08:00
David Kelly
ec0382daf7 PR feedback
Completely deleting hrtfs incorrectly.  This seems to be better, we
only want to delete HRTF for the QUuid() stream for the killed node in each
node's list of HRTFs.
2016-11-01 18:29:31 -07:00
David Kelly
0b80610e65 Needed to properly remove hrtfs for avatar audio 2016-11-01 15:09:14 -07:00
David Kelly
80e38c395e Send KillAvatar to AudioMixer too
So it can remove the listening agent avatar audio streams.  Otherwise
they stick around forever, and eventually swamp the audio mixer.
2016-10-31 10:35:16 -07:00
David Kelly
e3a22618d1 CR feedback 2016-10-27 17:49:43 -07:00
David Kelly
52a14bf5c3 Merge branch 'master' of github.com:highfidelity/hifi into dk/moreACAudioArtifacts 2016-10-27 16:52:25 -07:00
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
c14a928db5 convert size_t to int 2016-10-27 14:34:10 -07:00
Zach Pomerantz
32040a9047 add stat for streams in audio mixer 2016-10-27 13:55:17 -07:00
Zach Pomerantz
9e9f8666ce clean up handleMismatchAudioFormat comment 2016-10-27 13:46:53 -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
Clément Brisset
b63eb6ba9f Merge pull request #8665 from zzmp/feat/audio-stats
move audio stats to QML/JS, with graphs
2016-10-20 16:43:49 -07:00
Zach Pomerantz
055fabf57b fix audio AppendFlag semantics 2016-09-26 18:51:51 -07:00
Zach Pomerantz
d3132d8746 denote terminal audio stats packet 2016-09-26 16:50:51 -07:00
Zach Pomerantz
b9c4018b8e expose AudioStats to qml/js 2016-09-26 15:35:29 -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
Zach Pomerantz
177466e4c7 calculate unplayed ms on all streams/buffers as max 2016-09-15 17:54:41 -07:00
Brad Hefta-Gaub
ca3a194454 implment coded renegotiation in client if for some reason unexpected audio codecs come in to inbound stream 2016-08-02 15:30:03 -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
Brad Hefta-Gaub
6d7c8d5759 fix crash in audio-mixer if no plugins installed 2016-07-12 16:11:43 -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
3c6447326e more codec plumbing 2016-07-07 21:24:24 -07:00
Brad Hefta-Gaub
f65f99a3e0 fix warning 2016-05-29 12:34:57 -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
1d256be7ee fix random stats sending for AudioMixer clients 2016-04-18 16:04:20 -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
367e558b19 address PR comments for whitespace and constant 2016-02-11 09:30:07 -08:00
Stephen Birarda
f0ca412b29 use the existing not mixed count for injector inactivity 2016-02-10 18:22:57 -08:00
Stephen Birarda
edfb65acf6 more stats printing removal from audio-mixer 2016-02-10 17:38:56 -08:00
Stephen Birarda
87b85d6951 more useful stats for new HRTF mixer 2016-02-09 16:39:45 -08:00
Stephen Birarda
95d0734d7f fix for windows size_t warning 2016-02-09 15:20:34 -08:00
Stephen Birarda
04dc55686b remove some comments for HRTF cleanup tests 2016-02-09 14:31:31 -08:00
Stephen Birarda
7b2726f89b ensure that injectors are cleaned up once inactive 2016-02-09 14:30:59 -08:00
Stephen Birarda
1773233af4 cleanup management of HRTF objects across connected Nodes 2016-02-09 14:30:44 -08:00
Stephen Birarda
1ce1a73f92 some concurrency repairs for AudioMixerClientData streams 2016-02-09 10:29:02 -08:00
Stephen Birarda
73690fe4cb use unique_ptr for audio streams in AudioMixerClientData 2016-02-08 18:45:14 -08:00
Stephen Birarda
445662f5ae clean sweep of old now unused audio files 2016-02-08 15:38:12 -08:00
Stephen Birarda
1e87fe77f2 return the result of PositionalAudioStream parseData 2016-01-25 13:47:20 -08:00
Stephen Birarda
7430b12db6 add some debug for stream overflows in audio-mixer 2016-01-25 13:30:19 -08:00
Atlante45
ce51350b65 Fix warnings on windows 64bit 2015-12-11 15:42:15 -08: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
Atlante45
179ee73e26 Merge branch 'master' of https://github.com/highfidelity/hifi into update_protocol 2015-08-26 16:50:33 +02:00
Stephen Birarda
6860f3d126 add readWithoutCopy for clarity in Packet read 2015-08-19 14:32:26 -07:00
Stephen Birarda
9e7fb9ae16 shuffle Packet headers, use static enum for PacketType 2015-07-23 13:56:47 -07:00
Atlante45
fbb6a94579 Merge branch 'receive_packets' of https://github.com/huffman/hifi into protocol 2015-07-14 16:36:28 -07:00
Stephen Birarda
fbd287472d make NodeData parseData take only packet 2015-07-14 14:09:00 -07:00
Atlante45
44c5d4a2bf Couple fixes SharedNodePointer > Node& 2015-07-13 15:29:41 -07:00
Atlante45
c80df94b06 Update includes for moved files 2015-07-13 15:28:55 -07:00
Stephen Birarda
26be492475 use same listener for many packets in AudioMixer 2015-07-13 14:46:56 -07:00
Stephen Birarda
d242f5d5d9 repair AudioMixerClientData parseData 2015-07-13 14:35:03 -07:00
Atlante45
957e6394a9 sendPacket function take Node& not a pointer 2015-07-13 11:57:20 -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
Ryan Huffman
3690ecc28f Add std::move to sendPacket calls 2015-07-07 16:24:11 -07:00
Stephen Birarda
f6cd67f75e repairs to stats packet in AudioMixerClientData 2015-07-07 14:57:39 -07:00
Stephen Birarda
9a31b22243 use NLPacket and sendPacket for audio stream stats 2015-07-06 17:48:21 -07:00
Stephen Birarda
0d64e82fe2 replace PacketType declarations with PacketType::Value 2015-07-02 16:38:52 -07:00
Seth Alves
508ae276c6 enable -Wdouble-promotion 2015-06-16 18:23:10 -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
68998f4423 cleanup AudioMixer stats to be properly nested 2015-04-28 18:19:16 -07:00