Zach Pomerantz
28960681d9
limit audio pool to sane thread count
2016-12-06 23:57:38 +00:00
Zach Pomerantz
259775e163
clarify lock requirement in audio slave pool
2016-12-06 23:56:11 +00:00
Zach Pomerantz
2fc904b990
fix typos
2016-12-06 23:54:13 +00:00
Zach Pomerantz
557ab43f0f
add a timeout for errant audio slave threads
2016-12-06 23:53:16 +00:00
Zach Pomerantz
132e9bd644
add timings to AudioMixer
2016-12-06 23:51:06 +00:00
Zach Pomerantz
2a6e46aa0c
rm static buffer from AudioMixerSlave
2016-12-06 20:15:39 +00:00
Zach Pomerantz
d899391a1a
fix audio hist array initializer for WIN32
2016-12-02 04:12:44 +00:00
Zach Pomerantz
800744a139
fix audio pool shutdown and add single threading
2016-12-01 23:03:37 +00:00
Zach Pomerantz
78bc5cf502
fix audio pool resizing
2016-12-01 21:25:56 +00:00
Zach Pomerantz
2c42bb0aa8
time audio mixing frames
2016-11-30 18:18:36 -05:00
Zach Pomerantz
8a6dcdeb68
mix audio with single node list read lock
2016-11-30 16:37:34 -05:00
Zach Pomerantz
b4638105e3
expose audio mixer threads to gui
2016-11-29 13:32:10 -05:00
Zach Pomerantz
7a440def87
add AudioMixerSlavePool
2016-11-28 17:59:29 -05:00
Zach Pomerantz
41ef105456
clean up AudioMixerSlave
2016-11-28 17:07:24 -05:00
Zach Pomerantz
bf137cd589
break AudioMixer slave/stats into own files
2016-11-28 16:50:47 -05:00
Zach Pomerantz
2e619b230d
add AudioMixerStats
2016-11-28 16:50:42 -05:00
Zach Pomerantz
192f4791d5
move mixing into AudioMixerSlave
2016-11-28 16:50:26 -05:00
Zach Pomerantz
891084e9db
modularize audio mixing code
2016-11-28 16:48:53 -05:00
Zach Pomerantz
028ac5264f
consolidate AudioMixer slots
2016-11-28 16:26:53 -05:00
Zach Pomerantz
0170379d3c
rm unused vars
2016-11-27 18:09:05 -05:00
Atlante45
3035d43772
Merge branch 'master' of https://github.com/highfidelity/hifi into fix/settings
2016-11-21 13:05:08 -08:00
Brad Hefta-Gaub
fe709f51de
personal space feature
2016-11-19 16:30:15 -08:00
Stephen Birarda
dadcaa9959
don't send audio/avatar data for ignoree to ignored node
2016-11-14 10:12:36 -08:00
Chris Collins
6581a51bc9
Merge pull request #9052 from davidkelly/dk/2226
...
Add ability to mute user
2016-11-11 16:02:08 -08:00
David Kelly
6063a63f44
cr feedback
2016-11-11 14:23:59 -08:00
David Kelly
9c8f22e0e7
straight to audio mixer
...
since we can get the canKick there too. (doh)
2016-11-11 09:30:58 -08:00
Seth Alves
5629db9109
Merge pull request #9049 from birarda/max-min-av-scale
...
add a min/max avatar scale in domain-server settings
2016-11-11 06:11:02 -08:00
David Kelly
80d4033767
oops forgot one thing...
2016-11-10 17:13:50 -08:00
Stephen Birarda
020942c826
better handling for a flipped min/max scale
2016-11-10 16:50:36 -08:00
David Kelly
285520dff7
Initial cut
...
No script work yet, just first stab at underpinnings
2016-11-10 16:24:35 -08:00
Stephen Birarda
88c63332de
protect flipped min/max scale in avatar mixer settings
2016-11-10 16:21:48 -08:00
Stephen Birarda
64d9fa0f39
clamp avatar scale to domain limit in avatar mixer
2016-11-10 14:19:32 -08:00
Stephen Birarda
77ede81fc9
limit MyAvatar scale to limits from domain settings
2016-11-10 13:27:13 -08:00
Brad Hefta-Gaub
af2f6e831a
Merge pull request #9044 from birarda/higher-mute-permissions
...
elevate permissions required for mute environment to kick
2016-11-10 10:18:06 -08:00
Stephen Birarda
f56a5d1d98
elevate permissions required for mute environment
2016-11-10 09:23:01 -08:00
Brad Hefta-Gaub
8758e4a9ba
add support for whitelist entity scripts
2016-11-09 19:17:24 -08:00
Seth Alves
c8a654a915
Merge pull request #9006 from Atlante45/logging
...
Logging improvements
2016-11-07 13:35:13 -08:00
Atlante45
ae29fe8ab2
Logging improvements
2016-11-04 14:26:19 -07:00
David Kelly
21d1f40f59
Seems we were not deleting the right hrtfs when a node is killed
...
Simple fix, just make sure we delete the hrtfs associated with the
killedNode. The test is to delete some nodes (agents) and make sure
nothing bad happens to audio mixer, or the audio itself.
2016-11-04 13:15:02 -07:00
David Kelly
920cd90afa
CR feedback
2016-11-03 13:23:05 -07: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
c1feac971b
CR feedback
2016-11-01 15:17:07 -07:00
David Kelly
0b80610e65
Needed to properly remove hrtfs for avatar audio
2016-11-01 15:09:14 -07:00
David Kelly
404c08b0c7
Un-do of previous commit
...
Seems to add an artifact when using our test scripts. Will work on that
as a separate issue, as it would be an existing issue in any case.
2016-11-01 10:46:22 -07:00
David Kelly
fb2968a419
Reset bytes sent counter when setting avatar sound
...
It could be past the end of the buffer if you changed sounds, and the
new one is shorter. Won't happen with our current tests, but that could
change, and in general no reason it couldn't happen.
2016-11-01 09:12:35 -07:00
David Kelly
5714063eff
Make more reliable
...
Need to be sure we don't change the _isAvatar or
_isListeningToAudioStream from one thread while processing audio in
another. Also, fixed issue sending NLPacketList.
2016-10-31 16:38:01 -07:00
David Kelly
e63e9bc017
Remove HRTFs for Avatar too
...
Turns out there was already a function for that, if you just call
removeHRTFForStream without a 2nd param, it appears to just delete
the audio with uuid of QUuid() which is the avatar's mic. That is
what we want, so cool.
2016-10-31 13:25:22 -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
David Kelly
292dd67433
cleanup
2016-10-27 16:04:30 -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
a7d54b8e0a
rm unused lastCutoffRatio
2016-10-27 14:38:17 -07:00
Zach Pomerantz
c14a928db5
convert size_t to int
2016-10-27 14:34:10 -07:00
David Kelly
d00a73dde1
Play the flushed encoder sound at end
...
Basically 0-padding the end of the sound buffer. Next do that in
AudioMixer and we should be good.
2016-10-27 14:27:15 -07:00
Zach Pomerantz
32040a9047
add stat for streams in audio mixer
2016-10-27 13:55:17 -07:00
Zach Pomerantz
68f05bee87
fix underflow for agent audio timer
2016-10-27 13:47:22 -07:00
Zach Pomerantz
20bac5aeef
clean up broadcastMixes
2016-10-27 13:47:00 -07:00
Zach Pomerantz
9e9f8666ce
clean up handleMismatchAudioFormat comment
2016-10-27 13:46:53 -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
David Kelly
b09364c288
whitespace
2016-10-25 12:22:26 -07:00
David Kelly
30d8f1967c
Flushing encoder
...
Seems they have some state. So if you play a sound, then silence
that doesn't go through the encoder (SilentAudioFrame), then a
sound again, you will hear a click. Now, I just pop a frame of
0s through the encoder at the end of each .wav it plays. Poof!
2016-10-25 12:15:48 -07:00
David Kelly
86e01bbae6
First cut
...
Started with the horrible screaming when avatar goes away, seems
due to not putting a codec string in the packets. This was an existing
issue, not due to recent changes. Also, some weird indenting was
fixed, etc... Still hear an artifact when audio starts, but only when
a codec was negotiated. Hoping to fix that too.
2016-10-24 15:18:29 -07:00
David Kelly
bdcb58bf8b
Merge pull request #8847 from sethalves/fix-audio-mixer-data-race-1
...
fix some data-races in logging system
2016-10-21 15:33:40 -07:00
Seth Alves
5660063702
code review
2016-10-21 11:05:50 -07:00
Seth Alves
5af8dfdfbd
move ScriptEngines to Agent
2016-10-21 10:57:58 -07:00
Seth Alves
30f29d1796
move ScriptEngines to Agent
2016-10-21 10:57:22 -07:00
Seth Alves
e988941d14
undo bad script-engine AC change
2016-10-21 10:53:13 -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
Seth Alves
8ac799ddaf
Merge branch 'master' of github.com:highfidelity/hifi into fix-audio-mixer-data-race-1
2016-10-20 10:02:58 -07:00
Chris Collins
98e7d6d0eb
Merge pull request #8843 from sethalves/fix-audio-mixer-data-race-0
...
Fix some audio mixer data races
2016-10-20 10:01:26 -07:00
Stephen Birarda
eb8f67b612
cleanup asset file regex, comment in renameMapping
2016-10-19 11:47:57 -07:00
Stephen Birarda
7aac2e6916
restrict asset file mapping operations to file path
2016-10-19 10:57:23 -07:00
Seth Alves
af5be8d1d9
reduce data-races in logging
2016-10-18 15:59:00 -07:00
Seth Alves
9cb4756fce
only ScriptEngines for agent ACs
2016-10-18 13:57:30 -07:00
Seth Alves
0c6dedff45
avoid various data-races related to stats collection and delivery
2016-10-18 13:05:53 -07:00
Seth Alves
1203aae96b
don't create ScriptEngines for ACs that don't need them
2016-10-18 10:29:09 -07:00
howard-stearns
055e2ffcb0
Merge branch 'master' of https://github.com/highfidelity/hifi into crowd-animation
2016-10-12 14:38:07 -07:00
Atlante45
36bd9ef4e6
Update new ACClientApp code
2016-10-12 14:02:05 -07:00
David Kelly
c8850a8b8e
PR feedback
...
AgentAvatarTimer now in its own files. The thread still is created
the same way, and started only when you are an avatar, but now I
remember to stop it when you no longer are one. Audio is still at
100Hz, but avatar messages go at 60Hz as before. Unsure it matters,
but easy to do. Looking at that buzz now.
2016-10-12 12:44:24 -07:00
Atlante45
eaca3b672f
Switch to JSON for application settings
2016-10-12 10:20:19 -07:00
howard-stearns
884d22a59b
make agent avatar animations work again, and use them in crowds
2016-10-11 16:06:55 -07:00
David Kelly
1fb7b42f0b
One more comment removed
2016-10-11 09:37:42 -07:00
David Kelly
ef844cbd00
Cleanup artifacts
...
Seems playAvatarSound could be called from a thread other than
the Agent's thread. So, artifacts happen when that pointer changes
while a 'tick' is happening. Also cleaned up code a bit, got rid
of some hard-coded stuff I had in just for dev purposes.
2016-10-11 09:33:55 -07:00
David Kelly
fa9c3951c7
Merge branch 'master' into dk/codecInAgentAvatar
2016-10-10 19:51:56 -07:00
David Kelly
b58c36cb12
Rolling my own 100hz timer
...
Starting with the simplest possible thing - just sleep for 10000
microseconds. Can make it adaptive if need be.
2016-10-10 17:57:04 -07:00
David Kelly
b4c064a538
Hack in a 100hz timer
...
sounds crappy, more to do, just push to not lose anything.
<squash this>
2016-10-07 13:20:08 -07:00
David Kelly
ab6ccac631
Merge pull request #8741 from howard-stearns/kill-agents
...
kill agents in avatar mixer when they stop being avatars
2016-10-07 09:16:49 -07:00
David Kelly
95aa18f66d
Some cleanup
...
unnecessary stuff removed, added some cleanup code.
2016-10-06 16:18:22 -07:00
Chris Collins
8310a9fe8a
Merge pull request #8730 from huffman/feat/script-req-retry
...
Add retrying of script requests
2016-10-06 16:09:04 -07:00
David Kelly
a0c731a0c6
Initial attempt
...
Kinda works, but sounds 'scratchy'. Surely I've done something
lame.
2016-10-06 14:57:40 -07:00
howard-stearns
dc7a9f253c
kill agents in avatar mixer when they stop being avatars
2016-10-05 13:06:11 -07:00
Zach Pomerantz
5af95c6062
store channels on audio stream
2016-10-05 12:04:24 -07:00
Ryan Huffman
9dfa3e4a17
Move ScriptCache from AssignmentClient to Agent
2016-10-04 16:43:14 -07:00
Ryan Huffman
ae507c4609
Add ScriptCache to assignment clients
2016-10-04 16:43:14 -07:00
Clément Brisset
becee3bba3
Merge pull request #8685 from thoys/ac-fixes
...
Assignment Client fixes
2016-09-30 11:05:58 -07:00
Zach Pomerantz
43c40aa090
avoid repetition with fade on injectors
2016-09-29 15:25:41 -07:00