6337 Commits

Author SHA1 Message Date
Chris Robinson
8a9434c623 Use a local variable to track the decoded pts 2019-07-20 18:46:43 -07:00
Chris Robinson
f0ed35d3d0 Set the initial clock time closer to starting playback 2019-07-20 01:10:14 -07:00
Chris Robinson
9959d661a0 Restructure codec send/receive calls
In particular, after an initial fill of the codec's internal buffer, each
receive_frame call is followed by one or more send_packet calls. For
asynchronous codecs, this has the effect of letting the codec work while the
handler thread is waiting for an AVFrame structure to become available or
waiting for more decoded data to be needed. For synchronous codecs, this
makes the send_packet calls use up time that would be spent waiting.
2019-07-19 22:55:20 -07:00
Chris Robinson
29cf87f34d Combine duplicate code into a function 2019-07-18 16:04:45 -07:00
kcat
ec855215db
Merge pull request #318 from Lopuska/pitchshift_for_vmorpher
pitch shift for formant filters
2019-07-18 15:42:45 -07:00
Anis
31055f48d6 pitch shift for formant filters 2019-07-18 21:42:59 +02:00
Chris Robinson
2b21a08f89 Receive video frames in a loop 2019-07-16 20:20:25 -07:00
Chris Robinson
101e641288 Fix an unused parameter warning 2019-07-16 16:19:51 -07:00
Chris Robinson
ffc7258cbc Remove an unused lambda capture 2019-07-16 16:04:56 -07:00
kcat
8a9e72109e
Merge pull request #317 from Lopuska/vocal_morpher_improvements
misc fixes and improvements for Vocal Morpher
2019-07-16 16:04:27 -07:00
Anis
ee013521ee misc fixes and improvements for Vocal Morpher 2019-07-16 17:40:18 +02:00
Philip Muzzall
28f07d2d5e Misc fixes (#315)
* Added rc scripts for dll

* Reverted numbering scheme in CMakeLists

* Misc fixes
2019-07-14 17:39:45 -07:00
Chris Robinson
b728cf7bd6 Properly include getopt.h 2019-07-14 04:05:08 -07:00
Chris Robinson
4ff7bfd2d8 Use atomics for the picture queue 2019-07-14 03:59:57 -07:00
Chris Robinson
ac7eeeae79 Don't use the same mutex for the video clock 2019-07-14 03:59:57 -07:00
Chris Robinson
93c53e33f0 Receive frames directly into the picture's AVFrame 2019-07-14 03:59:57 -07:00
Chris Robinson
e7e734f8b9 Don't use one texture per picture in alffplay 2019-07-14 03:59:56 -07:00
kcat
d2f71ae42a
Merge pull request #314 from PenguinDOOM/pr-master
Fixed makemhr and sofa-info errors
2019-07-14 03:58:38 -07:00
Penguin
4027664fc2
Fixed MSVC error. 2019-07-14 18:03:49 +09:00
Penguin
313549c76d
Add missing header. 2019-07-14 18:03:32 +09:00
Chris Robinson
363e2fb73a MSVC doesn't like parenthesized type initialization 2019-07-13 16:51:19 -07:00
Chris Robinson
f99474c913 Handle alffplay video using continuous rendering 2019-07-12 23:34:21 -07:00
Chris Robinson
79d572cf72 Properly comment out the sample config's options 2019-07-12 22:13:19 -07:00
Chris Robinson
2e6c7808b0 Try to improve alffplay timing again 2019-07-11 03:54:26 -07:00
Chris Robinson
99b55bc230 Add the Windows SDK for the winmm library path 2019-07-10 20:06:50 -07:00
Chris Robinson
93d0c8993d Fix OpenSL library name 2019-07-10 19:55:14 -07:00
Chris Robinson
e2f2b74d6a Get rid of the custom CHECK_SHARED_FUNCTION_EXISTS function 2019-07-10 19:32:26 -07:00
Chris Robinson
ac28b7d0f2 Use a find module for OpenSL 2019-07-10 18:54:43 -07:00
Chris Robinson
426c4587cc Some clean up to use uniform initialization 2019-07-10 02:13:28 -07:00
Chris Robinson
159024acc9 Improve alffplay video clock timing 2019-07-09 22:15:05 -07:00
Lopuska
4a33bbb14d vocal morpher implementation (#312)
* vocal morpher implementation

* compile fix for GCC
2019-07-09 22:14:31 -07:00
Chris Robinson
3ffb6867a3 Rework packet handling in alffplay
Turns out avcodec_send_packet is what can invoke the decode for serialized
codecs, so don't call that in the parse handler thread. The packet queue is
used to get the compressed data from the parse handler to the audio/video
threads.

Additionally, don't serialize the video frame preparation with the decode
thread.
2019-07-08 13:18:10 -07:00
Chris Robinson
2783b4c04b Somewhat simplify alffplay playback timing 2019-07-06 22:18:52 -07:00
Chris Robinson
c230554851 Clamp NFC reference distance between 0.1m and 10m 2019-07-06 19:09:26 -07:00
Chris Robinson
b95bf8d7c1 Update a comment about the speaker distance 2019-07-06 18:39:26 -07:00
Chris Robinson
c9f6f9652a Avoid looking up source IDs multiple times 2019-07-06 14:59:26 -07:00
Chris Robinson
47246e5205 Don't stop the device before going over the attributes 2019-07-06 13:20:21 -07:00
Chris Robinson
aeb7fe52f1 Use unsigned more consistently for source counts 2019-07-06 00:19:48 -07:00
Chris Robinson
fa032368ae Rename HRTF Quality title to HRTF Render Method 2019-07-05 12:27:58 -07:00
Chris Robinson
3edbeefdb7 Add a setting for hrtf-mode to alsoft-config 2019-07-04 22:59:12 -07:00
Chris Robinson
474073955b Pass a span to ApplyStablizer 2019-07-04 17:00:01 -07:00
Chris Robinson
3fe5ef272f Use a span for MixParams 2019-07-04 15:02:12 -07:00
Chris Robinson
729ffe02d6 Reorder some methods for better placement 2019-07-04 14:03:27 -07:00
Chris Robinson
949507c891 Use a span for RealMixParams 2019-07-03 23:26:33 -07:00
Chris Robinson
9a51ca0a78 Pass a span to BFormatDec::process 2019-07-03 22:59:29 -07:00
Chris Robinson
0a0704071a Allocate device buffer when setting the channel counts 2019-07-03 22:32:39 -07:00
Chris Robinson
61ba455edd Don't warn about non-multiple-of-4 update sizes
It's not always possible to do anything about it, especially for backends that
aren't restricted to the period size, and it's not really a problem anyway
(still getting SIMD benefits for the vast majority of samples).
2019-07-02 01:56:59 -07:00
Minmin Gong
cee8100f19 Remove noexcept from sampler functions to match the signature of SamplerT (#309)
This change fixes compilation problems on gcc 9.1 with -std=c++17.
2019-07-01 22:42:20 -07:00
Chris Robinson
bc1d058d2d Add a helper to construct the optional value 2019-07-01 17:55:56 -07:00
Chris Robinson
6bb0edf0a5 Create and use a make_optional method 2019-07-01 17:25:58 -07:00