Commit graph

2176 commits

Author SHA1 Message Date
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
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
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
Thijs Wenker
7e3073e163 fix spelling bugs 2016-09-29 22:13:27 +02: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
a9318d052b Merge branch 'master' of github.com:highfidelity/hifi into clean/audio-config 2016-09-23 13:11:52 -07:00
Brad Davis
09a218b9fd Fix build after moving network function 2016-09-23 12:05:04 -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
Zach Pomerantz
177466e4c7 calculate unplayed ms on all streams/buffers as max 2016-09-15 17:54:41 -07:00
SamGondelman
544606bccc cmake fix 2016-09-06 17:40:44 -07:00
SamGondelman
74e5814a48 try to fix rpath issue 2016-09-06 17:40:43 -07:00
Seth Alves
b7da72cc46 try again on fix for ACs seeing other avatars 2016-09-02 16:06:51 -07:00
Seth Alves
b6ef6fec73 Revert "fill in linked node data for avatar identity packets, also" 2016-09-02 15:43:25 -07:00
Seth Alves
014190a1bf fill in linked node data for avatar identity packets, also 2016-09-02 13:52:37 -07:00
Brad Hefta-Gaub
376756d413 include the codec name in the agent avatar audio stream 2016-08-25 09:58:36 -07:00
Seth Alves
9bcda1bb45 merge from upstream 2016-08-20 15:25:04 -07:00
Seth Alves
87dbfa7e47 add -Wsuggest-override to compile flags and deal with fallout 2016-08-18 09:51:41 -07:00
Ryan Huffman
727d59ab27 Add backup directory setting to domain server 2016-08-16 17:33:32 -07:00
Brad Hefta-Gaub
7cbc0bcabe Merge pull request #8366 from kencooke/master
optimized distance-attnuation calculation
2016-08-05 16:45:35 -07:00
Ken Cooke
7629e34586 optimized distance-attnuation calculation 2016-08-04 11:05:34 -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
dc2741950a Merge pull request #8259 from kencooke/improved-hrtf
Fix the AudioMixer distance attenuation.
2016-07-15 22:36:51 -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
Brad Davis
846c2457a3 Merge pull request #8236 from huffman/fix/atp-reliable
Update all asset server responses to be reliable
2016-07-15 10:33:11 -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
6b6513d5f9 immediately fade out ignored avatars 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
Ryan Huffman
b4b7b7ea34 Update all asset server responses to be reliable 2016-07-13 13:41:45 -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
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
Seth Alves
bade215907 maximum 'tmp' entity lifetime is now a domain-server setting, defaults to 1 hour 2016-06-09 10:41:30 -07:00
Seth Alves
b2f63a2132 hook up can-rez-tmp and can-write-to-asset-server 2016-06-07 16:17:58 -07:00
Seth Alves
fc92268641 Merge branch 'master' of github.com:highfidelity/hifi into permissions-grid 2016-06-02 15:38:24 -07:00
Seth Alves
83f2c723eb collect permissions into their own data structure 2016-06-02 13:15:30 -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
Brad Hefta-Gaub
06cb625d09 Merge pull request #7959 from hyperlogic/tony/improved-avatar-mixer-precision
Improved Avatar Mixer Rotation Precision
2016-05-25 17:14:12 -07:00
Anthony J. Thibault
a1c32f8c44 Merge branch 'master' into tony/improved-avatar-mixer-precision 2016-05-23 10:24:52 -07:00
Seth Alves
d7142aee80 try to make osx clang happy, also 2016-05-21 18:06:21 -07:00
Seth Alves
40e862cf9e quiet gcc 5 warnings 2016-05-21 16:53:01 -07:00
Atlante45
8be6bc6460 Add missing overrides 2016-05-19 22:00:22 -07:00
Ryan Huffman
dd093e3fcd Make AccountManager a DependencyManager singleton 2016-05-18 15:38:54 -07:00
Anthony J. Thibault
c48fce4f5a WIP commit, socket errors when AvatarIdentity is larger then MTU 2016-05-18 15:24:10 -07:00
Anthony J. Thibault
dc6e1afae6 Changed empty AvatarIdentity packet to AvatarData packet
Just in-case it actually gets through, it will fail to be parsed
by AvatarData::parseDataFromBuffer() due to it's size.
AvatarData::hasIdentityChangedAfterParsing() has no such checks.
2016-05-17 16:34:30 -07:00
Anthony J. Thibault
b82356a249 AvatarMixer: Clients will show incompatible version dialog
For this to work, the server needs to send an empty AvatarIdentity packet back to the sender
when it receives a packet mismatch error.  This AvatarIdentity packet will be different then
what the client expects and will trigger the incompatible version dialog.

Previously, the avatar-mixer was just silently dropping incoming mismatched version packets.
Causing the client to never get a response, and thus never showing the incompatible version dialog.
2016-05-17 15:02:04 -07:00
Stephen Birarda
aa226739d3 remove billboard code from Agent 2016-05-12 16:41:44 -07:00
Brad Hefta-Gaub
350743454b Merge pull request #7839 from sethalves/entity-simulation-smart-pointers-1
use smart pointers for entity simulations
2016-05-10 11:35:57 -07:00
Brad Hefta-Gaub
d7eee98acc Merge pull request #7827 from AndrewMeadows/threadsafe-viewfrustum
resurrection of threadsafe ViewFrustum
2016-05-10 09:06:38 -07:00
Seth Alves
b761ecf44f merge from upstream 2016-05-10 08:18:45 -07:00
Andrew Meadows
db9a4d6b8f cleanup for code review 2016-05-10 07:49:11 -07:00
Brad Hefta-Gaub
0de721e8f4 Merge pull request #7838 from zzmp/refactor/script-sleep
Use sleep_until for ScriptEngine
2016-05-09 15:58:22 -07:00
Seth Alves
a0771f8ee5 use smart pointers for entity simulations 2016-05-07 09:14:33 -07:00
Zach Pomerantz
173d2a590c Use sleep_until for ScriptEngine 2016-05-06 19:30:37 -07:00
Brad Hefta-Gaub
99d35c37db switch OctreeSendThread to use std::this_thread::sleep_for() instead of usleep() 2016-05-06 10:42:07 -07:00
Andrew Meadows
71b2d647e8 add locks and explicitly copy ViewFrustums 2016-05-05 18:28:27 -07:00
Andrew Meadows
bcf2cc8074 use references not pointers for ViewFrustums
also unravelling some spaghetti:
(1) split Octree stuff out of ViewFrustum
(2) moved ViewFrustum from octree to shared lib
(3) removed some cruft
2016-05-05 18:28:27 -07:00
Brad Hefta-Gaub
e8af41c6ab more CR feedback 2016-04-21 15:54:51 -07:00
Brad Hefta-Gaub
31f9d592e0 support for larger than 35 minute clock skew 2016-04-20 18:42:00 -07:00