Commit graph

1279 commits

Author SHA1 Message Date
31e1e84c69 Support dynamically changing audio::oscillator frequency 2022-10-11 17:48:27 +03:00
6a38c127c6 Update audio example 2022-10-08 21:54:05 +03:00
6f6add1cab Add distortion effect 2022-10-08 21:31:44 +03:00
87e865d025 Make sure Karplus-Strong generated sound is the same in both channels 2022-10-08 21:31:38 +03:00
f85ee1f7ba Update audio example 2022-10-08 19:49:17 +03:00
af2bab53b9 Add Karplus-Strong guitar generation algorithm 2022-10-08 19:49:11 +03:00
cb69759cce Update audio example 2022-10-08 19:14:12 +03:00
8048496535 Implement pitch control audio effect 2022-10-08 19:07:30 +03:00
e74f5957c0 Add frequency resampler & use it in mp3 decoder 2022-10-08 18:22:17 +03:00
e517e14986 Implement mp3 support 2022-10-08 17:42:03 +03:00
3255aaf15d Move loading raw & wav tracks from engine to free functions 2022-10-08 14:36:24 +03:00
5b0834f097 Support non-owning audio::recorder 2022-10-08 14:35:45 +03:00
ce5ccfde70 Turn audio::duplicator into a track 2022-10-08 14:16:50 +03:00
f46b080a69 Support creating audio::recorder directly from samples 2022-10-08 14:05:13 +03:00
2c59879630 Support loading WAV audio 2022-10-07 23:40:03 +03:00
e7c999c3dd Add io::read_full function to read whole input stream into std::vector 2022-10-07 23:37:04 +03:00
f617f50930 Implement loading raw audio tracks 2022-10-07 23:05:17 +03:00
227236568b Implement audio pause control 2022-10-07 22:03:27 +03:00
81fabbbf02 Add audio callback profiling 2022-10-07 15:28:30 +03:00
a80487abbc Add audio compressor knee 2022-10-07 13:09:49 +03:00
dba6148554 Update audio example 2022-10-07 11:18:46 +03:00
59f83aec12 Add audio compressor 2022-10-07 11:18:38 +03:00
e7d3bc45d1 Remove linear filter from volume control, use simple multiplication instead 2022-10-06 23:30:23 +03:00
8111af2c54 Add decibel to gain converters 2022-10-06 23:30:01 +03:00
bd16679b97 Implement stereo audio volume control 2022-10-06 16:24:42 +03:00
acc2fd486e Implement looping effect 2022-10-06 15:55:14 +03:00
63f7e9c32a Implement audio::duplicator properly (using recorder) 2022-10-06 15:45:39 +03:00
e4871da0c5 Add audio::recorder 2022-10-06 15:45:23 +03:00
9d58904a66 Add truncate effect 2022-10-06 15:17:46 +03:00
3e9814aee4 Add audio::duration type & use it for effect duration parameters 2022-10-06 15:02:47 +03:00
3890fa0b02 Make audio::stream::played() atomic 2022-10-06 13:51:35 +03:00
d19c93af33 Support retrieving the number of already played samples from a stream 2022-10-06 13:12:14 +03:00
62af785c08 Support retrieving length of a stream 2022-10-06 13:05:42 +03:00
bc1bbcb306 Rename volume attack -> smoothness 2022-10-06 12:41:31 +03:00
9b3afc9865 Use channel class for main audio output 2022-10-05 22:55:30 +03:00
26b44a9fa3 Make audio channel a separate class 2022-10-05 22:55:30 +03:00
cab34558ce Support replacing a mixing channel stream 2022-10-05 22:55:30 +03:00
bb31fe79c9 Add fade in & fade out effects 2022-10-05 22:55:30 +03:00
21b2028122 Update audio example 2022-10-05 22:55:30 +03:00
6c213f9c45 Add audio stereo aggregator 2022-10-05 22:55:30 +03:00
d346f7b50d Add audio stream duplication 2022-10-05 22:55:30 +03:00
65f71e54a8 Reimplement basic waveforms using a complex oscillator 2022-10-05 22:55:30 +03:00
051e812358 Change default util::clock duration & clock type 2022-10-05 22:55:30 +03:00
61919a264e Add silence audio stream 2022-10-05 22:55:30 +03:00
94216ce638 Add volume control effect 2022-10-05 22:55:30 +03:00
b3e583283a Audio library rewrite: re-implement engine using SDL_Audio & change API 2022-10-05 22:55:28 +03:00
d95807e320 Add util::to_shared 2022-10-05 22:53:52 +03:00
7d55214e4e Fix sound on linux 2022-10-02 23:07:10 +03:00
061c74ea54 Log number of sound mixing channels 2022-10-02 15:50:07 +03:00
4490123a64 Support dynamically changing 3d sound source position 2022-10-02 15:18:10 +03:00