itsmattkc
e12e5db760
try sse wrapper for neon instructions
2021-10-25 12:30:47 -07:00
itsmattkc
c2d7ac1f96
audiomanager: handle no output device set
2021-10-16 12:28:29 -07:00
itsmattkc
8a4e992214
minor formatting
2021-10-13 17:00:43 -07:00
Moreno Razzoli
3656ed480e
min_max_sse: design failsafe for lenghts not mod.4
2021-10-13 22:58:04 +02:00
Moreno Razzoli
81be311ded
AudioVisualWaveform, SumSamples: improve performance by 10x on x86 architecture by using platform specific optimizations
2021-10-12 08:59:12 +02:00
itsmattkc
109d973f6e
audiovisualwaveform: improved shift code
2021-10-09 14:09:35 -07:00
itsmattkc
d940c38a71
audio: don't print device name if device was null
2021-10-08 23:15:45 -07:00
itsmattkc
48e700ecb5
fixed some compiler errors
2021-10-01 17:25:43 -07:00
itsmattkc
fbc5997d32
removed reliance on Qt multimedia
2021-10-01 16:12:12 -07:00
itsmattkc
f49aa7d974
finished portaudio switch
...
This may have bugs in it, but as far as I can tell it's fully functional.
2021-10-01 15:41:24 -07:00
itsmattkc
ee81a47f2e
begin switch to portaudio
...
Qt's audio system has served us well, but it's a little limited moving forward. PortAudio is a mature and versatile library that will allow for better audio for users.
2021-10-01 15:41:24 -07:00
itsmattkc
a777740232
audiovisualwaveform: avoid index out of bounds
2021-09-29 00:15:05 -07:00
itsmattkc
c29939b523
use audio waveform constants to determine min/max zoom levels
2021-09-28 21:35:24 -07:00
itsmattkc
db873dfc69
reimplemented reversing and shuttling in new audio
2021-09-26 14:22:50 -07:00
itsmattkc
6f3f7e558b
use shared ptr for audio device
...
Prevents deletion before audio output has received stop signal
2021-09-25 13:29:30 -07:00
itsmattkc
845b4a7559
use ffmpeg for sample packing
...
FFmpeg has a much more optimized algorithm than we do so may as well use it.
2021-09-25 13:22:13 -07:00
itsmattkc
4c9863a696
implement audio device to pull directly from renderer
2021-09-25 12:44:58 -07:00
itsmattkc
a5e7859e1f
audiovisualwaveform: fixed overwrite silence bug
2021-09-17 20:52:35 -07:00
itsmattkc
5edb8f5d4a
reduce waveform scale
...
Exponentially improves performance (at the expense of higher zoom levels but they were probably already too extreme)
2021-09-03 13:46:37 -07:00
itsmattkc
6bd7bc4cca
timeline: copy waveform when copying
2021-08-25 12:27:26 -07:00
itsmattkc
391534b71d
fixed waveform issue
2021-08-01 17:10:45 -07:00
itsmattkc
be4a18d7de
moved visual waveforms to block
...
This should be nicer, however it has a bug that I need to fix
2021-08-01 16:43:53 -07:00
itsmattkc
7c21cf2339
audio: fixed reversing issue
2021-07-23 22:08:44 -07:00
itsmattkc
593a3b025a
Merge branch 'master' into nodeview-redux
2021-07-16 20:09:33 -07:00
luzpaz
01536f9865
Fix various typos in code comments ( #1670 ) [skip ci]
...
Found via `codespell -q 3 -S *.ts,*.xml -L ba,keypair,numer,uint`
2021-07-13 13:54:30 +02:00
itsmattkc
43d3fc57f2
Update audiovisualwaveform.cpp
...
audiovisualwaveform: fixed shift issue
2021-07-11 23:31:36 -07:00
itsmattkc
75c102d351
waveform: minor corrections
2021-07-08 12:19:27 -07:00
itsmattkc
1f0de6c5bb
waveform: fixed precision issue when generating from sample data
...
Fixes #1664
2021-07-08 12:08:05 -07:00
itsmattkc
558d849d27
waveform: flip Y axis
...
Fixes #1666
2021-07-08 11:55:35 -07:00
itsmattkc
08e2fa4d8e
renderer: generate audio waveforms in render threads
...
Solves UI lag issues with long audio sequences.
2021-06-11 23:30:55 -07:00
itsmattkc
7e62ad4e10
audiovisualwaveform: optimize shifting code
2021-05-30 12:55:50 +10:00
itsmattkc
d13f68593b
audiomonitor: fix param sync issue that caused crashes
2021-05-26 18:00:12 +10:00
itsmattkc
f2f5ab8739
audiovisualwaveform: keep track of length
...
Useful to determine how long the visual waveform is.
2021-04-27 00:49:04 +10:00
itsmattkc
77d4b18a60
updated copyright year for 2021 [skip ci]
2021-04-17 18:56:50 +10:00
itsmattkc
22b2d08baf
rational: implement NaN mode
...
Also clarify code where 0 is used as a rational.
2021-04-17 15:04:03 +10:00
itsmattkc
6b7412aff6
audiovisualwaveform: removed templates
...
I'm not sure if this will make any difference performance-wise,
but we don't need them anymore so yeah.
2021-04-14 15:27:34 +10:00
itsmattkc
3ffb2fde1c
audiomonitor: use mipmapped waveform
...
Since we have these now, may as well use them. This should
improve general playback performance since the audio monitor
will be able to iterate far fewer
2021-04-14 15:25:38 +10:00
itsmattkc
8e1ac7c1a0
audiovisualwaveform: minor refactoring
...
Improves code readability.
2021-04-14 13:47:46 +10:00
itsmattkc
b425754fef
audiovisualwaveform: don't draw empty sample
2021-04-14 13:47:33 +10:00
itsmattkc
7107afaf99
audiovisualwaveform: mipmap waveforms
2021-04-13 23:43:44 +10:00
itsmattkc
82d2a253d9
preferences: revised audio tab
...
Cleaned up and improved the audio tab.
Fixes #1546 . Kind of. There doesn't seem to be much need for a
sample rate selection for our current high-level audio system.
If we implement higher end audio backends in the future (e.g.
ASIO, JACK), those can be given a sample rate setting.
2021-04-11 20:20:01 +10:00
itsmattkc
c023916d05
audio: set push device to null when closing
...
Fixes crash trying to push samples after parameters change.
2021-04-08 08:20:13 +10:00
itsmattkc
fb410e7c96
use vectors for sample buffers rather than raw ptr arrays
2021-03-17 11:54:14 +11:00
itsmattkc
97dd84c68b
decrease audio buffer size to sane level
...
Improves audio on certain platforms
2021-03-08 11:26:36 +11:00
itsmattkc
0936c7c580
added some documentation to audiovisualwaveform
2021-01-18 10:43:59 +11:00
itsmattkc
827c9f93cc
AudioVisualWaveform: implement same size check as AudioPlaybackCache to prevent index out of bounds crashes
2020-11-24 11:02:42 +11:00
itsmattkc
75d4cd899b
use hardcoded namespace
...
The macro defined namespaces confused the hell out of lupdate and more or less broke translations permanently. Looks like the only way we can do it is to have a hardcoded namespace, which goes against my instinct, but honestly how likely is it that we'll change the namespace anyway (I guess forks might want to do it, but that's their problem ;) )
2020-11-17 20:24:42 +11:00
itsmattkc
d241090a9f
finally updated the copyright year
2020-11-17 20:13:22 +11:00
itsmattkc
0d0766e4fb
improved render channel count system
2020-11-15 22:16:40 +11:00
itsmattkc
52b98f3fa3
lightened SampleFormat struct
2020-11-10 11:24:20 +11:00