Commit graph

660 commits

Author SHA1 Message Date
Craig Hansen-Sturm
5a6f8015f6 unroll audio gain rendering loop 2014-09-08 14:05:47 -07:00
Craig Hansen-Sturm
5b996046ba Hot FIX: stereo input devices shouldn't trigger an assert 2014-09-08 12:05:29 -07:00
Craig Hansen-Sturm
431fcbcf6c coding standard / SLOT selectAudioSourceSine440 linkage / tone gen amplitude parameter 2014-09-08 11:18:14 -07:00
Craig Hansen-Sturm
2700d8c59d ubuntu build fix (remove std::memset ...) 2014-09-06 04:05:52 -07:00
Craig Hansen-Sturm
76adb952a3 ubuntu build fix (remove std::memset ...) 2014-09-06 03:57:11 -07:00
Craig Hansen-Sturm
e64c81420e ubuntu build fix (remove std::memset ...) 2014-09-06 03:29:14 -07:00
Craig Hansen-Sturm
e2f3392f09 formatting/renaming 2014-09-06 02:51:11 -07:00
Craig Hansen-Sturm
1eba20bc3b minor cleanup 2014-09-06 02:32:13 -07:00
Craig Hansen-Sturm
5bab1ee7f5 dependency on new audiobuffer and audioformat objects/render call now uses audiobuffers 2014-09-06 02:22:27 -07:00
Craig Hansen-Sturm
8ecf0870e7 dependency on new audiobuffer and audioformat objects 2014-09-06 02:20:14 -07:00
Craig Hansen-Sturm
0b33c344ff new audio buffer object 2014-09-06 02:18:35 -07:00
Craig Hansen-Sturm
f439475f3c new audio gain/mute object 2014-09-06 02:18:04 -07:00
Craig Hansen-Sturm
3a9a4a6402 new pink noise generator audio source object 2014-09-06 02:16:00 -07:00
Craig Hansen-Sturm
c6911274f6 new tone generator audio source object 2014-09-06 02:14:47 -07:00
Craig Hansen-Sturm
1cdb01e072 Merge branch 'master' of https://github.com/highfidelity/hifi into audio-noise 2014-09-05 18:31:02 -07:00
Atlante45
619aebcd67 move isStereo packing to the correct position 2014-09-05 16:18:02 -07:00
Atlante45
507419162c Added stereo option to the AudioInjector 2014-09-05 14:34:55 -07:00
Craig Hansen-Sturm
974c88442c new audio format object 2014-08-29 14:36:11 -07:00
Craig Hansen-Sturm
3e3090f1ea coding standard 2014-08-28 11:12:17 -07:00
Craig Hansen-Sturm
0881959750 left/right channels of head shadow filter now have independent gain + implemented all-pass filter 2014-08-27 17:30:11 -07:00
Brad Hefta-Gaub
e8c3125985 Merge pull request #3323 from chansensturm/wangyix-qt_stats_for_audiomixer
Merge of Yixin's PR #3281 to head
2014-08-27 11:14:52 -07:00
Craig Hansen-Sturm
e941e58626 merge HEAD with PR-3281 2014-08-26 18:25:40 -07:00
Atlante45
90d8626615 Fix for audio on ACs 2014-08-26 14:35:35 -07:00
Craig Hansen-Sturm
950862839e added high-shelf and low-shelf filters, positional audio now uses high-shelf filter, significant reformatting/renaming of AudioFilter.h for coding standard 2014-08-25 18:17:32 -07:00
Craig Hansen-Sturm
4f346bfe62 addresses more coding-standard spacing issues 2014-08-25 13:07:52 -07:00
Craig Hansen-Sturm
bf6d34b6f3 windows/linux build break + addresses zappoman review comments 2014-08-25 11:43:49 -07:00
Craig Hansen-Sturm
848144d98c Merge remote-tracking branch 'upstream/master' 2014-08-24 22:17:30 -07:00
Craig Hansen-Sturm
4cd1f4afef add support for head-shadow/penumbra filter for positional audio streams 2014-08-24 22:17:07 -07:00
Atlante45
45ccb01297 Update options position and orientation correctly in the AudioInjector 2014-08-18 21:05:03 -07:00
Atlante45
2eb1321cc2 Sound and AudioInjector tweaks 2014-08-18 12:28:44 -07:00
wangyix
db0fbcab97 merge with upstream 2014-08-13 11:09:55 -07:00
wangyix
746893cc94 updateLastOutputLoudnessAndTrailingLoudness 2014-08-13 10:48:47 -07:00
wangyix
ddc8bec1ec moved lastpopframeloudness calculation to checkBuffersBeforeFrameSend 2014-08-13 10:41:25 -07:00
wangyix
f34f0a719b fixed lastPopOutput null ptr errors for frame loudness check 2014-08-13 10:26:01 -07:00
wangyix
23b3d06260 forgot null check for AudioMixer repeat mix of lastPopOutput 2014-08-13 09:46:49 -07:00
wangyix
7f53ae0e4f fixed warnings 2014-08-12 12:22:13 -07:00
wangyix
a31d53544b repetition-with-fade seems good; continue testing 2014-08-11 17:58:01 -07:00
wangyix
e276d15ed4 repetition-with-fade implemented; testing interface crash 2014-08-11 16:25:43 -07:00
AndrewMeadows
0650169c25 Merge pull request #3270 from chansensturm/audio-filter
Added support for biquad, parametric, and multi-band filter eq
2014-08-11 12:22:40 -07:00
Craig Hansen-Sturm
3d95f28fb9 added apache licensing/removed implicit double<->float conversions/addressed style guide issues 2014-08-11 11:51:49 -07:00
wangyix
1f011bfe9d repetition-with-fade option added, not implemented 2014-08-11 11:22:37 -07:00
wangyix
a1ea393324 added a comment 2014-08-11 09:14:01 -07:00
Craig Hansen-Sturm
481108ecd1 added support for biquad, parametric, and multi-band filter eq 2014-08-10 22:47:27 -07:00
wangyix
7a063b8bc8 scope seems to be working now using networkSamples 2014-08-08 18:16:25 -07:00
wangyix
fea97f8fe8 added networkSamples buffer to MixedProcessedAudioStream 2014-08-08 17:17:30 -07:00
wangyix
7aa5a1f830 fixed function name 2014-08-08 17:02:13 -07:00
wangyix
4ec84b32b0 updated AudioRingBuffer bytes vs samples returns 2014-08-08 17:00:39 -07:00
wangyix
f71e1edd30 removed parseSilentPacketStreamProperties() 2014-08-08 16:46:12 -07:00
wangyix
a2d66b9a8f fixed audio scope; added parseSilentPacketStreamProperties() 2014-08-08 14:55:38 -07:00
wangyix
bf8188c6ff removed duplicate definition 2014-08-08 13:38:28 -07:00
wangyix
0dfe0b1f2a merged with master 2014-08-08 13:32:27 -07:00
Stephen Birarda
b1310c065c remove TARGET_NAME from cmake macros where it is not required 2014-08-08 13:17:54 -07:00
Stephen Birarda
26f7b1ba62 add macro to link shared dependencies to target 2014-08-08 13:17:54 -07:00
Stephen Birarda
c9f8433a2d tweak setup_hifi_library to bubble up full path of Qt modules 2014-08-08 13:17:54 -07:00
Stephen Birarda
17df6484d4 remove ssize_t and replace with size_t or int where appropriate 2014-08-08 13:17:53 -07:00
Stephen Birarda
87cf262b9e get to successful cmake after library link macro changes 2014-08-08 13:17:53 -07:00
Stephen Birarda
31488e72fe repairs for interface build to succeed 2014-08-08 13:17:53 -07:00
Stephen Birarda
892e30c5e1 get past assignment-client build after cmake auditing 2014-08-08 13:17:53 -07:00
Stephen Birarda
b5c8a4d2c6 fix requirement of networking in audio library 2014-08-08 13:17:52 -07:00
wangyix
63624fae7d cleaned up code, fixed typos 2014-08-08 11:40:48 -07:00
wangyix
b670226ee3 removed printf, removed random copy of some file 2014-08-08 11:22:04 -07:00
wangyix
8183fd3199 forgot to update starveHistoryWindowSeconds when window A changes 2014-08-08 11:17:32 -07:00
wangyix
3338102513 reverted some behavior to make getCalculated() to work again 2014-08-08 10:29:45 -07:00
wangyix
850a2d8d94 inboundaudiostream behavior updated; needs testing 2014-08-08 09:59:33 -07:00
wangyix
fd3425dfd1 knobs confirmed working 2014-08-07 17:05:23 -07:00
wangyix
1153a76ab1 new option knobs added, no new behavior yet 2014-08-07 16:37:36 -07:00
wangyix
357ba92181 working towards more dials for InboundAdioStream 2014-08-07 12:41:09 -07:00
wangyix
84c517c073 tweaked starve behavior of InboundAudioStream 2014-08-05 11:57:34 -07:00
wangyix
77dad6fe65 change to fix Mac linker error 2014-08-05 11:00:27 -07:00
wangyix
748c9e2065 numAudioSamples now calculated to be device samples instead of network samples 2014-08-05 10:13:34 -07:00
wangyix
3fe4c29848 removed heap alloc of receivedSamples; cleaned up code 2014-08-04 17:14:26 -07:00
wangyix
4d7d6f1e25 changed downstream re-sampling to occur right after parsing packet 2014-08-04 16:23:17 -07:00
wangyix
e1f905cb36 fixed >100% loss rate bug in SequenceNumberStats 2014-08-01 10:27:51 -07:00
Brad Hefta-Gaub
d4d4069f11 Merge pull request #3225 from birarda/master
cmake file cleanup to suppress warnings on cmake 3.0
2014-07-30 19:20:18 -07:00
wangyix
7281eca5a4 fixed inj crash; added statcDesired to MixedAudioStream 2014-07-30 17:20:05 -07:00
wangyix
24be668d36 added check before pushAudioToOutput to prevent starvecount buildup 2014-07-30 15:47:49 -07:00
wangyix
daeb2a898d added staticDesiredJitterBufferFrames feature; AudioMixer crashing
moved some callbacks from Application::updateAvatar() to
Application::update()
2014-07-30 15:35:40 -07:00
Stephen Birarda
2796f71419 library cleanup to suppress warnings on cmake 3.0 2014-07-30 15:06:15 -07:00
wangyix
5b0662f1d0 fixed setToStarved() behavior of InboundAudioStream 2014-07-30 10:51:50 -07:00
wangyix
656131b7ee made frames available avg window 2s; added missing _silentFramesDropped update 2014-07-30 10:24:24 -07:00
wangyix
ecfd5c2757 default max frames over desired changed to 10 2014-07-29 17:37:59 -07:00
wangyix
d49970d010 maxFramesOverDesired added; settable from domain page and preferences 2014-07-29 15:57:32 -07:00
wangyix
bb2adb2721 minor refactoring 2014-07-29 14:02:18 -07:00
wangyix
71c23eac1e added TimeWeightedAvg to InboundAudioStream
_maxFramesOverDesired hardcoded right now
2014-07-29 13:51:46 -07:00
wangyix
ccedb1bd20 forgot some code in checkBuffersBeforeFrameSend
corrected updateLastPopOutputTrailingLoudness behavior to match what the
old code did.
2014-07-29 10:40:01 -07:00
wangyix
a3b44a6a73 downstream silent packets seem to be working 2014-07-29 10:08:55 -07:00
wangyix
aead7a6823 removed get pointer methods from AudioRingBUffer 2014-07-28 22:48:29 -07:00
wangyix
4825457f4d silent audio packet type generalized 2014-07-28 16:49:53 -07:00
wangyix
7e59723522 removed +1 for philip's jitter frames calculation 2014-07-28 14:24:58 -07:00
wangyix
d221f69767 clamp overridden desired jitter buffer frames value 2014-07-28 14:22:04 -07:00
wangyix
97054d668b fixed header macros 2014-07-28 14:15:14 -07:00
wangyix
ed9bfdc503 these didn't commit for some reason 2014-07-28 14:08:45 -07:00
wangyix
145b7f8a0e got Preferences jitter buffer frames override working 2014-07-28 14:05:17 -07:00
wangyix
6fc5c74c0b renamed ringbuffer variables to audiostream 2014-07-28 13:08:53 -07:00
wangyix
32dbc6cbdb renamed audioringbuffer classes to audiostream 2014-07-28 11:52:05 -07:00
wangyix
9bbd055404 added stdev method of jitter calc to InboundAudioStream 2014-07-28 11:41:08 -07:00
wangyix
c129db16cb formatting fix, AudioRingBuffer no longer NodeData, 2014-07-28 09:40:44 -07:00
wangyix
438606d567 _consecutiveNotMixedCount++ moved back into if(starveOnFail) 2014-07-27 11:23:47 -07:00
wangyix
78031622db removed MixedAudioRingBuffer class files 2014-07-25 16:06:56 -07:00
wangyix
e17556384d added code to clear agent audiostream frames to prevent buildup 2014-07-25 15:51:34 -07:00
wangyix
fd9d7baa06 updated Agent with audiostream; added initial packets discard to audiostream 2014-07-25 15:14:10 -07:00
wangyix
f7e043f52d cleaned up code 2014-07-25 14:52:39 -07:00
wangyix
a9d26b3934 fixed repeat-popping in audiomixer 2014-07-25 12:58:10 -07:00
wangyix
822ba4da48 cleaned up code more, dancer.js audio not working 2014-07-25 10:21:38 -07:00
wangyix
473cbf2afe client audio now updated with stream class; seems fine for now 2014-07-24 17:15:46 -07:00
wangyix
83ba4b9a1c Audiomixer now working (added call to updateNextOutputTrailingLoudness()) 2014-07-24 14:43:29 -07:00
wangyix
3d22a11e28 debugging new audio stream organization 2014-07-24 13:58:15 -07:00
wangyix
fe70c1f49a didn't commit for some reason 2014-07-24 10:48:56 -07:00
wangyix
c9b6879ca8 audiomixer code complete; need to test 2014-07-24 10:48:27 -07:00
wangyix
e2f957d6dc added InboundAudioStream class 2014-07-23 16:46:23 -07:00
wangyix
4a4d065f00 another parseData change 2014-07-23 12:06:31 -07:00
wangyix
849c489b4c removed warnings about parseData() overloading in ringbuffer classes 2014-07-23 11:20:30 -07:00
wangyix
621f0725cc added input ring buffer stats to interface 2014-07-21 15:39:33 -07:00
wangyix
e557ba8052 removed space 2014-07-16 18:06:55 -07:00
wangyix
8775d22765 re-added calculated desired frames to domain page stats 2014-07-16 17:44:49 -07:00
wangyix
397e6c8b13 renamed a function 2014-07-16 17:34:48 -07:00
wangyix
6764ace8eb droppable silent packets are added for dropped packets;
_currentJitterBufferFrames replaced with moving average of frames
available.  Downstream framesAvailable stat now includes the frames in
QAudioOutput as well as the ringbuffer.
2014-07-16 14:41:24 -07:00
wangyix
871aa2790a forgot unused variable 2014-07-15 12:24:28 -07:00
wangyix
828410b7d6 removed isNan check for _nextOutputTrailingLoudness 2014-07-15 12:23:54 -07:00
wangyix
a1b2bf59e9 disabled SIMD adds in AudioMixer for windows 2014-07-15 12:23:02 -07:00
wangyix
d369435240 added dirty fix for NaN _nextOutputTrailingLoudness 2014-07-11 13:25:47 -07:00
wangyix
25f4f63a1e added window PacketStreamStats to AudioStreamStats 2014-07-10 16:42:23 -07:00
wangyix
0d83b9a6f6 tidied up code 2014-07-10 09:51:01 -07:00
wangyix
01f10024ae all stats added, needs testing; created PacketStreamStats struct 2014-07-09 18:13:33 -07:00
wangyix
d03d3ef817 new auidostreamstats displayed in interface, domain page stats updated 2014-07-09 11:59:50 -07:00
wangyix
54e8ed5e11 added MovingMinMaxAvg and unit test; added additional stats to AudioStreamStats struct 2014-07-09 09:41:49 -07:00
wangyix
e732436783 added _starveCount, _silentFramesDropped 2014-07-08 14:13:42 -07:00
wangyix
2e73ac8bc1 changed Audio.cpp to not overflow _audioOutput buffer, and 2 other things
added _consecutiveNotMixedCount to prevent premature injector stream
deletion;  made silent-frame drop only occur in dynamic jitter buffer
mode
2014-07-08 11:16:39 -07:00
Brad Hefta-Gaub
dbdce32b68 Merge pull request #3107 from wangyix/master
prune missing sequence numbers before sending NACK; AudioRingBuffer frame length can now be specified;
2014-07-03 13:32:31 -07:00
wangyix
2c6b2000b2 forgot arg in AudioRingBuffer constructor in PositionalAudioRingBUffer
changed _currentJitterBufferFrames to be -1 to indicate starved.
2014-07-03 11:34:16 -07:00
wangyix
507518f16d removed numFramesCapacity from being exposed everywhere 2014-07-03 11:11:56 -07:00
Atlante45
106e5b578b Merge branch 'master' of https://github.com/highfidelity/hifi into replace_qnetworkaccessmanager 2014-07-02 16:06:41 -07:00
Clément Brisset
1f92d57230 Merge pull request #3103 from AlericInglewood/19827
Code Review for Job #19827
2014-07-02 15:53:57 -07:00
Atlante45
6e02561d96 Merge branch 'master' of https://github.com/highfidelity/hifi into replace_qnetworkaccessmanager 2014-07-02 14:08:57 -07:00
Atlante45
598c1cb516 Switched Sound to NetworkAccessManager 2014-07-02 11:27:55 -07:00
Andrew Meadows
ec80ccdb9c remove warning about signed/unsigned comparison 2014-07-02 10:49:05 -07:00
Andrew Meadows
8b3af0b9cb merge upstream/master into andrew/say-no-to-warnings
Conflicts:
	interface/src/ui/ApplicationOverlay.cpp
	libraries/audio/src/AudioRingBuffer.cpp
2014-07-02 10:37:30 -07:00
wangyix
ab503583dd switched order of args in PositionalAudioRingBuffer 2014-07-01 17:33:38 -07:00
wangyix
a5943e3608 made AudioRingBuffer frames capacity variable 2014-07-01 16:24:31 -07:00
wangyix
1b0ce510f6 fixed a typo, tidied up more minor details 2014-06-30 15:33:31 -07:00
wangyix
6b6dccda2f _resetCount to _overflowCount in AudioRingBuffer 2014-06-30 14:21:38 -07:00
wangyix
c789f3c6b9 merge with upstream 2014-06-30 14:13:34 -07:00
wangyix
d2f86278b2 modified AudioStreamStats to per-stream with seq stats
added AudioStreamStats info to interface overlay stats
2014-06-30 12:31:58 -07:00
wangyix
de3c1ebf0f changed class name to AudioStreamStats, reverted ScriptEngine packing back to QDataStream 2014-06-30 09:42:22 -07:00
Aleric Inglewood
f13bbdfae6 Compile fix for non-standard Qt5 install.
When Qt5 5.2.1 is compiled from source, configured with
-developer-build, and used without being installed;
then compiling interface results in the following compile error:

libraries/shared/src/RegisteredMetaTypes.h:17:34: fatal error: QtScript/QScriptEngine: No such file or directory

This commit fixes this by explicitely adding the include
directory for QtScript/QScriptEngine to libraries/shared/CMakeLists.txt

Likewise we get the compile error:

In file included from /opt/highfidelity/hifi/hifi/animation-server/../libraries/voxels/src/VoxelEditPacketSender.h:18:0,
                 from /opt/highfidelity/hifi/hifi/animation-server/src/AnimationServer.cpp:26:
 /opt/highfidelity/hifi/hifi/animation-server/../libraries/voxels/src/VoxelDetail.h:15:34:
 fatal error: QtScript/QScriptEngine: No such file or directory

which is fixed by added the include directory for QtScript/QScriptEngine
to animation-server/CMakeLists.txt

Finally, compile errors like

In file included from /opt/highfidelity/hifi/hifi/libraries/audio/src/AudioInjectorOptions.h:20:0,
                 from /opt/highfidelity/hifi/hifi/libraries/audio/src/AudioInjector.h:21,
                 from /opt/highfidelity/hifi/hifi/libraries/audio/src/AudioInjector.cpp:22:
/opt/highfidelity/hifi/hifi/assignment-client/../libraries/shared/src/RegisteredMetaTypes.h:17:34: fatal error: QtScript/QScriptEngine: No such file or directory

that requires to do the same in libraries/audio/CMakeLists.txt
2014-06-30 02:06:44 +02:00
wangyix
c3f571745c removed more debug stuff 2014-06-27 17:42:22 -07:00
Aleric Inglewood
1bc2f214a5 Compiler warning fixes.
This fixes all warnings that I got while compiling with g++ 4.7.2:

 In file included from interface/src/Application.h:53:0,
                  from interface/src/Menu.cpp:36:
 interface/src/Menu.h: In constructor ‘Menu::Menu()’:
 interface/src/Menu.h:292:13: warning: ‘Menu::_scriptsLocation’ will be initialized after [-Wreorder]
 interface/src/Menu.h:289:27: warning:   ‘QPointer<LoginDialog> Menu::_loginDialog’ [-Wreorder]
 interface/src/Menu.cpp:82:1: warning:   when initialized here [-Wreorder]

 libraries/audio/src/AudioRingBuffer.cpp: In member function ‘qint64 AudioRingBuffer::writeData(const char*, qint64)’:
 libraries/audio/src/AudioRingBuffer.cpp:126:75: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]

 libraries/audio/src/PositionalAudioRingBuffer.cpp: In member function ‘bool PositionalAudioRingBuffer::shouldBeAddedToMix()’:
 libraries/audio/src/PositionalAudioRingBuffer.cpp:212:37: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]

 interface/ui/preferencesDialog.ui: Warning: The name 'horizontalLayout_11' (QHBoxLayout) is already in use, defaulting to 'horizontalLayout_111'.
 interface/ui/preferencesDialog.ui: Warning: The name 'horizontalSpacer_11' (QSpacerItem) is already in use, defaulting to 'horizontalSpacer_111'.

 interface/src/avatar/Avatar.cpp: In member function ‘void Avatar::initializeHair()’:
 interface/src/avatar/Avatar.cpp:587:21: warning: name lookup of ‘link’ changed [enabled by default]
 interface/src/avatar/Avatar.cpp:574:18: warning:   matches this ‘link’ under ISO standard rules [enabled by default]
 interface/src/avatar/Avatar.cpp:577:22: warning:   matches this ‘link’ under old rules [enabled by default]

 interface/src/ui/ApplicationOverlay.cpp: In member function ‘void ApplicationOverlay::renderControllerPointers()’:
 interface/src/ui/ApplicationOverlay.cpp:379:59: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]

 In file included from interface/src/ui/RunningScriptsWidget.cpp:14:0:
 interface/src/ui/RunningScriptsWidget.h: In constructor ‘RunningScriptsWidget::RunningScriptsWidget(QWidget*)’:
 interface/src/ui/RunningScriptsWidget.h:61:18: warning: ‘RunningScriptsWidget::_scriptsModel’ will be initialized after [-Wreorder]
 interface/src/ui/RunningScriptsWidget.h:60:27: warning:   ‘QSortFilterProxyModel RunningScriptsWidget::_proxyModel’ [-Wreorder]
 interface/src/ui/RunningScriptsWidget.cpp:27:1: warning:   when initialized here [-Wreorder]
2014-06-27 22:18:38 +02:00
wangyix
ff438a2434 added seq stats for Agent,
fixed  AudioInjector to do << (quint16)0 instead of
skipRawData(sizeof(quint16) to correctly allocate space for seq number;
added debug prints;
2014-06-27 11:23:50 -07:00
wangyix
c5474f95bd forgot to skip seq number in InjectedAudioRingBuffer::parseData() 2014-06-26 16:55:29 -07:00
wangyix
cb48825561 added seq number to all Audio types, untested 2014-06-26 16:52:23 -07:00
wangyix
97139b0bd0 Merge branch 'master' into seqNumberStats 2014-06-26 11:47:00 -07:00
wangyix
7f23a7fbde switched AudioRingBuffer to use _isFull flag instead 2014-06-26 11:26:10 -07:00
wangyix
ad8fe38a59 removed extra sample in AudioRingBuffer for testing 2014-06-26 09:27:06 -07:00
wangyix
37ce693153 added seqnum stats to AudioMixerClientData; added seqnums to Audio.cpp 2014-06-25 18:01:34 -07:00
wangyix
9b8f8dbf70 removed more more unnecessary changes 2014-06-25 12:05:59 -07:00
wangyix
dd1c157f3a reverted updateDesiredJitterBufferFrames to what Brad wrote 2014-06-25 11:42:03 -07:00
wangyix
591bfa14b9 added PacketTypeAudioStreamStats for j-buffer stats
...instead of packing that info into audio packets.
2014-06-25 11:38:56 -07:00
wangyix
1257e0595a moved jbufferstats class to PositionalAudioRingBuffers 2014-06-25 09:52:02 -07:00
Andrew Meadows
d3d8e4dc2d fix warnings about signed/unsigned comparisons 2014-06-25 09:07:10 -07:00
wangyix
d098edcdf0 Merge remote-tracking branch 'upstream/master' 2014-06-24 17:39:13 -07:00
ZappoMan
bc5f563f5c and change ring buffer size 2014-06-24 17:25:45 -07:00
wangyix
52f00769d4 merged with upstream 2014-06-24 17:22:30 -07:00
wangyix
e1d28dfe73 removed debug code 2014-06-24 17:14:20 -07:00
wangyix
5fd1d0a87c added AudioRingBuffer unit test
fixed bug with _endOfLastWrite not rolling over in addSilentFrame
2014-06-24 16:51:51 -07:00
wangyix
8e2bb130f7 added extra sample in AudioRingBuffer...
changed buffer overflow behavior to overwrite old data in writeData;
added overflow behavior to drop silent samples in addSilentFrame
2014-06-24 12:18:40 -07:00
ZappoMan
cdbda02765 make default ring buffer much larger 2014-06-24 12:09:58 -07:00
ZappoMan
1d390faad8 add support for commandline/config value for dynamic jitter buffers 2014-06-24 10:29:38 -07:00
ZappoMan
5c188ea81e adding more stats 2014-06-24 09:41:29 -07:00
wangyix
254946be9e removed duplicate method from merge 2014-06-24 09:27:41 -07:00
wangyix
53e3f5a3b0 merged with upstream 2014-06-24 09:13:05 -07:00
ZappoMan
fda60cc8d5 remove resizing of jitter buffers for now, only ask for 1 frame 2014-06-23 18:45:24 -07:00
ZappoMan
355ab2cb95 max desired must be one less than the max frames in our ringbuffer 2014-06-23 17:58:55 -07:00
wangyix
a4f5ce2215 added stats for audiomixer jitter buffers lengths in Application 2014-06-23 17:48:57 -07:00
ZappoMan
77f262561c typo 2014-06-23 16:47:10 -07:00
ZappoMan
8a633743b3 ignore the numSilentSamples from client, always assume one frame 2014-06-23 16:40:38 -07:00
ZappoMan
b2c982976e break up audio mixer stats across multiple packets 2014-06-23 15:46:58 -07:00
ZappoMan
076bc11545 added server side audio mixer jitter stats 2014-06-23 15:19:13 -07:00
wangyix
fbdca59d37 fixed spacing issue 2014-06-23 11:56:14 -07:00
wangyix
ffc20b8876 changed InterframeTimeGapHistory to InterframeTimeGapStats 2014-06-23 11:22:04 -07:00
wangyix
e5d7d471e3 removed debug code 2014-06-23 10:55:30 -07:00
wangyix
7196814ec3 added debug prints to look at injected ring buffers 2014-06-23 10:22:16 -07:00
wangyix
6b72b161d3 fixed typo with frames/samples confusion. 2014-06-20 17:52:46 -07:00
wangyix
124fba35db fixed minor comment typo 2014-06-20 17:39:05 -07:00
wangyix
cb6681f6f8 completed code for dynamicly resizing jitter buffer 2014-06-20 17:13:42 -07:00
wangyix
a5457eb86b fixed bug in Audio.cpp where numSilentSamples was written to wrong place in packet
added more debug stuff, other minor changes and fixes
2014-06-20 14:43:18 -07:00
wangyix
435b5094a0 moved time gap history to PositionalAudioRingBuffer, untested
removed hard-coded jitter buffer length.
2014-06-19 17:58:38 -07:00
wangyix
100bc022ec fixed a for loop that erased elements while iterating 2014-06-19 16:42:51 -07:00
wangyix
77c377711a removed debug code 2014-06-19 15:39:54 -07:00
wangyix
8176aa1292 added debug code for testing time gap history 2014-06-19 14:54:22 -07:00
wangyix
aa3602f0fb added InterframeTimeGapHistory and frameReceived() calls 2014-06-19 14:35:02 -07:00
Stephen Birarda
db1031144b fix passing of unattenuated zones to buffers 2014-06-18 13:46:03 -07:00
Oren Hurvitz
98b4d6f697 Allow the project to compile using Visual Studio 2013 2014-06-18 10:27:57 +03:00
Andrew Meadows
3f36325642 remove warnings about signed/unsigned comparison 2014-06-17 11:59:37 -07:00
Stephen Birarda
ee71d34f02 add a crash guard around negative silent samples 2014-06-09 14:03:47 -07:00
Stephen Birarda
6fdc5df47b bump silent audio frame version 2014-06-06 11:50:36 -07:00
Stephen Birarda
a7a9656ac7 add a mixer crash guard in addSilentFrame 2014-06-06 11:47:34 -07:00
Stephen Birarda
ae2f6a3cb6 complete piping of stereo audio through mixer 2014-06-06 10:55:04 -07:00
Stephen Birarda
7da091d2b4 initial hooks for stereo audio 2014-06-06 10:15:09 -07:00
David Rowe
bd4d167684 Make JavaScript audio samples able to be looped
Add a "loop" property to AudioInjectorOptions and provide an example JavaScript file.
2014-05-29 14:13:02 -07:00
Ryan Huffman
aa47043d57 Fix WAV file support
The previous implementation assumed the file only contained RIFF, WAVE,
fmt, and data chunks.  It is valid for other chunks to appear, so I
updated it to skip any chunks until it finds the "data" chunk.
2014-05-27 11:24:48 -07:00
Stephen Birarda
a9c2e3fe71 put back ssize_t definition 2014-05-20 11:56:06 -07:00
Stephen Birarda
0e7615391c don't look for GnuTLS from cmake 2014-05-20 10:35:04 -07:00
Stephen Birarda
304e30e9d8 Merge pull request #2818 from birarda/stop-sound
make sure shouldStop for injector defaults to false
2014-05-08 11:12:47 -07:00
Stephen Birarda
a8a53e35dd make sure shouldStop for injector defaults to false 2014-05-08 11:12:16 -07:00
Philip Rosedale
6762d4d63c Merge pull request #2816 from birarda/stop-sound
add interface to Audio to stop injector and see if playing
2014-05-07 20:59:58 -07:00
Stephen Birarda
f78c81e073 add interface to Audio to stop injector and see if playing 2014-05-07 17:48:01 -07:00
Philip Rosedale
c6fa903d6f Merge pull request #2813 from birarda/stop-sound
return an injector from playSound and allow call to stop it
2014-05-07 16:59:00 -07:00
Stephen Birarda
99ee6ae8af return an injector from playSound and allow user to stop it 2014-05-07 16:26:32 -07:00
Stephen Birarda
5e9036b3fe tweak audio constants to be less agressive on cutoff 2014-05-07 15:37:41 -07:00
Atlante45
ab76e6a00c Merge branch 'master' of https://github.com/highfidelity/hifi into removed_gettimeofday
Conflicts:
	interface/src/Audio.cpp
2014-04-21 12:19:19 -07:00
Stephen Birarda
72fe9b94b1 fix property in sound 2014-04-18 14:48:26 -07:00
Stephen Birarda
c1e54d370c change Sound property to hasDownloaded 2014-04-18 14:46:56 -07:00
Stephen Birarda
92f2794ea8 add a property to Sound to tell if empty 2014-04-18 14:26:56 -07:00
Stephen Birarda
aa5d7aa0b1 fix incorrectly named slot in Sound 2014-04-18 13:58:33 -07:00
Stephen Birarda
3b8cf8c172 fix mixed signal and slot 2014-04-18 13:55:22 -07:00
Stephen Birarda
6ef4e145c5 add better Sound error handling 2014-04-18 13:51:58 -07:00
Atlante45
d34e6ff864 Removed gettimeofday in AudioInjector 2014-04-16 12:01:41 -07:00
ZappoMan
bdf39186de Merge branch 'master' of https://github.com/worklist/hifi into moonshot 2014-04-15 21:04:15 -07:00
ZappoMan
579710e4bd some cleanup 2014-04-15 13:36:20 -07:00
ZappoMan
7a993939bf Merge branch 'master' of https://github.com/worklist/hifi into moonshot
Conflicts:
	interface/interface_en.ts
	interface/src/Application.cpp
	interface/src/Application.h
	interface/src/Menu.h
	libraries/shared/src/SharedUtil.h
2014-04-14 09:43:29 -07:00
Stephen Birarda
54647f0f08 make sure gnutls define for ssize_t comes before gnutls include 2014-04-10 10:27:08 -07:00
Stephen Birarda
2518d314ac add ssize_t definition for gnutls.h include on Windows 2014-04-10 10:19:45 -07:00
Stephen Birarda
16bb28a4fa make GnuTLS a system include to suppress warnings 2014-04-10 10:04:02 -07:00
Stephen Birarda
68c445e718 link GnuTLS to targets linking the networking library 2014-04-10 10:00:10 -07:00
Stephen Birarda
d5d52f804f add a networking library and link from appropriate targets 2014-04-10 09:32:17 -07:00
Stephen Birarda
1c861fbecb resolve conflicts on merge with upstream master 2014-04-09 15:36:15 -07:00
Stephen Birarda
ae4b8348a2 fix header include guards via regex 2014-04-09 12:03:17 -07:00
Stephen Birarda
2d755adfc0 repairs to good code blown away by regex 2014-04-09 10:46:20 -07:00
Stephen Birarda
684c6b5372 run regex header replacement on all cpp files 2014-04-09 09:35:42 -07:00
Stephen Birarda
6a51df9e38 initial regex replacement of headers 2014-04-08 17:30:36 -07:00
ZappoMan
b56e0ff3d4 tweaks to audioring buffer 2014-04-04 07:04:48 -07:00
ZappoMan
3808cfa83d latest work 2014-04-03 08:55:48 -07:00
ZappoMan
42efb0db65 glue in processSpatialAudio() 2014-04-02 18:18:17 -07:00
Stephen Birarda
e1cae6d295 initial handshaking for DTLS sessions between DS and clients 2014-04-02 17:29:14 -07:00
Stephen Birarda
e2b230445f add a method to Agent for last read frame loudness 2014-03-26 10:28:59 -07:00
Andrew Meadows
c0177e80a7 use glm::isnan() everywhere for portable code 2014-03-25 09:56:15 -07:00
Stephen Birarda
af4fb26031 floats are important 2014-03-21 18:44:59 -07:00
Stephen Birarda
abd6c8a747 fix trailing average on ring buffer, remove unused constant 2014-03-21 18:28:12 -07:00
Stephen Birarda
bad209bf09 use a trailing average for a quieter loudness 2014-03-21 15:53:00 -07:00
Stephen Birarda
1580896ec4 don't use a trailing average for loudness 2014-03-21 11:42:02 -07:00
Stephen Birarda
5a6456c29f use an epsilon value to drop average loudness to zero 2014-03-21 11:29:16 -07:00
Stephen Birarda
6f37bb54f8 suppress useless audio debug 2014-03-21 10:19:17 -07:00
Stephen Birarda
5ae63c5b0f use a trailing average for sleep time, move loudness to RB 2014-03-20 17:10:24 -07:00
Stephen Birarda
a8ef64e0ce calculate a cutoff loudness for mixer recovery 2014-03-20 12:52:17 -07:00
Stephen Birarda
f80a077637 fix memory overrun from silent sample writing 2014-03-18 13:33:29 -07:00
Stephen Birarda
9fbb4f1428 spacing fix and silent sample read fix 2014-03-18 13:04:28 -07:00
Stephen Birarda
e7acd0bad3 don't use QDataStream in parseData since we don't really need it 2014-03-18 12:58:29 -07:00
Stephen Birarda
7ed982a073 cleanup writing of silent frame to ring buffer 2014-03-18 11:12:36 -07:00
Stephen Birarda
61594b9a1e fixes to silent audio frame sending 2014-03-17 16:27:49 -07:00
Stephen Birarda
9f24bd9c47 have the AudioMixer handle silent audio, send silence from Interface when gate closed 2014-03-17 15:12:02 -07:00
Stephen Birarda
1428d2d1de take an absolute value for correct loudness 2014-03-17 14:35:04 -07:00
Stephen Birarda
bc9deb5db7 handle trivial case of not mixing silent audio streams 2014-03-17 14:29:53 -07:00
Stephen Birarda
72449fdb6a initial optimizations to AudioMixer with mmx additions 2014-03-14 17:50:57 -07:00
Andrew Meadows
aa8c2fc8cb use radians instead of degrees (almost) everywhere 2014-03-11 17:26:58 -07:00
ZappoMan
1ceb05bf09 click harder 2014-03-08 18:22:30 -08:00
Stephen Birarda
bb3a8677be Merge branch 'master' of https://github.com/highfidelity/hifi into cmake-quotes 2014-03-03 16:31:25 -08:00
Stephen Birarda
628f91cd73 complete quoting of varous Cmake commands, closes #1999 2014-03-03 12:15:05 -08:00
Stephen Birarda
60eb588e96 remove some unecessary null pointer checks 2014-03-03 11:36:01 -08:00
ZappoMan
59eefa314c add support for Audio.startDrumSound() to allow drum sound procedural audio in JS 2014-03-03 03:17:16 -08:00
ZappoMan
2c7d9d7a06 removed unneeded class declaration 2014-03-03 00:35:46 -08:00
ZappoMan
6ddc6132fd removed unneeded class def 2014-03-02 21:53:36 -08:00
Philip Rosedale
70c1f8290e assume RAW audio if not processed as WAV 2014-02-25 13:21:02 -08:00
ZappoMan
09fc58763f Merge pull request #2054 from gaitat/19499
Worklist Job #19499
2014-02-24 19:10:31 -08:00
gaitat
a1e773eb2d Worklist Job #19499
Kick of the build
2014-02-23 11:24:45 -05:00
gaitat
edd99f93de Worklist Job #19499 Mac compile fix
third time's the charm
2014-02-21 21:48:44 -05:00
gaitat
e2b20d2475 Worklist Job #19499 Mac compile fix 2014-02-21 21:13:31 -05:00
gaitat
e331dc529d Worklist Job #19499
Add WAV file support to Javascript
2014-02-21 19:26:19 -05:00
Stephen Birarda
ee9f8937e3 fix a silly typo 2014-02-19 18:03:34 -08:00
Stephen Birarda
7ceacd2751 remove blank if and fix ping reply construction 2014-02-07 10:24:01 -08:00
Stephen Birarda
b988308a8d leverage writeDatagram helper in NodeList, ping if no active socket 2014-02-07 09:49:54 -08:00
Stephen Birarda
a823722d27 add writeDatagram helper to NodeList to insert md5 hash 2014-02-06 14:28:58 -08:00
Stephen Birarda
96fd73a766 fixed wrapped read of samples from end of buffer 2014-02-05 11:39:03 -08:00
Andrzej Kapolka
1e9e298a75 Missing includes. 2014-01-29 13:47:13 -08:00
Stephen Birarda
4de270b832 cleanup Node types, closes #1726 2014-01-28 13:38:33 -08:00
Stephen Birarda
3854f75abd cleanup some UUID packing 2014-01-28 10:41:40 -08:00
Stephen Birarda
4103cc1cde packet header changes and beginning of conversion to QByteArray 2014-01-28 10:36:08 -08:00
Stephen Birarda
8d2e9823de remove notion of owning node from NodeData 2014-01-23 17:06:03 -08:00
Brad Hefta-Gaub
170dbe6e85 Merge branch 'master' of git://github.com/worklist/hifi into windows_build
Conflicts:
	assignment-client/src/audio/AudioMixer.cpp
	domain-server/src/DomainServer.cpp
	interface/src/Audio.cpp
	interface/src/DataServerClient.cpp
	interface/src/Oscilloscope.cpp
	interface/src/PairingHandler.cpp
	interface/src/Util.cpp
	interface/src/avatar/MyAvatar.cpp
	interface/src/devices/Faceshift.cpp
	interface/src/devices/SerialInterface.cpp
	interface/src/renderer/FBXReader.cpp
	libraries/avatars/src/AvatarData.h
	libraries/octree-server/src/OctreeServer.cpp
	libraries/octree-server/src/OctreeServer.h
	libraries/octree/src/ViewFrustum.cpp
	libraries/shared/src/Logging.cpp
	libraries/shared/src/Node.cpp
	libraries/shared/src/Node.h
	libraries/shared/src/NodeList.cpp
	libraries/shared/src/NodeList.h
	libraries/shared/src/PerfStat.cpp
	libraries/shared/src/SharedUtil.cpp
	libraries/voxels/src/VoxelTree.cpp
	voxel-edit/src/main.cpp
2014-01-15 10:20:21 -08:00
Stephen Birarda
599e3bb9e5 resolve conflicts on merge with upstream master 2014-01-14 16:15:58 -08:00
Stephen Birarda
767a241105 Merge remote-tracking branch 'upstream/master' into nodelist-container 2014-01-14 16:08:58 -08:00
Stephen Birarda
bcf9e04f56 only output first starve for a PositionalAudioRingBuffer 2014-01-14 14:34:00 -08:00
Stephen Birarda
987c639e36 initial newline removal from all QDebug calls 2014-01-14 13:09:22 -08:00
Stephen Birarda
7d1a64ca8c change NodeList container to QHash with QSharedPointer 2014-01-13 17:09:21 -08:00
Brad Hefta-Gaub
9e24996f39 more isnan() hacks 2014-01-12 23:11:06 -08:00
Brad Hefta-Gaub
19012e2f6d more windows build fixes isnan 2014-01-12 22:05:55 -08:00
Brad Hefta-Gaub
f9f29c68b2 more windows build fixes 2014-01-11 01:11:49 -08:00
Brad Hefta-Gaub
9dea84c227 more windows build fixes 2014-01-11 00:45:45 -08:00
Brad Hefta-Gaub
cb828d330a more windows build fixes 2014-01-11 00:43:47 -08:00
Brad Hefta-Gaub
148cde30a0 make it work on unix, mac, and windows 2014-01-10 22:15:41 -08:00
Brad Hefta-Gaub
46c45da842 std::min() compiler error on windows 2014-01-10 22:11:20 -08:00
Stephen Birarda
32be6199fd fix reference to downloaded byte array samples 2014-01-05 17:41:33 -08:00
Stephen Birarda
a06f18328c add downsampling so RAW audio for sound assumed to be 48Khz 2014-01-05 17:40:37 -08:00
Stephen Birarda
5b272bfd6a fix random UUID creation for injected audio 2014-01-05 17:09:57 -08:00
Stephen Birarda
decaf2e245 add property for volume in AudioInjectorOptions 2014-01-03 14:17:12 -08:00
Stephen Birarda
a4f2735739 fix a glaring omission - actually move the audioInjector to QThread 2014-01-03 10:39:09 -08:00
Stephen Birarda
a61e214c9a simplify loopback trigger for injected audio 2014-01-03 10:16:59 -08:00
Stephen Birarda
6f60a22c07 fix copyright years 2014-01-03 09:50:13 -08:00
Stephen Birarda
2a422b84f2 fix broken build by removing ASI as friend to AI 2014-01-03 09:49:32 -08:00
Stephen Birarda
339ef93fc4 remove no longer needed QDebug includes 2014-01-03 09:41:01 -08:00
Stephen Birarda
f24eff33fe open up ASI playSound method to ScriptEngine 2014-01-03 09:38:05 -08:00