Commit graph

119 commits

Author SHA1 Message Date
Pierre Krieger
ac3b7c964a Initialize each new voice with one period of 0s 2015-09-27 13:31:51 +02:00
Pierre Krieger
8503bc2f8a Fix period not being taken into account 2015-09-27 13:12:09 +02:00
Pierre Krieger
d3a554b146 Better format choice, part 2 2015-09-27 12:05:55 +02:00
Pierre Krieger
e765a088f1 Better choose the voice format 2015-09-27 11:57:55 +02:00
Pierre Krieger
010f80d082 Fix ALSA stuttering 2015-09-27 11:49:53 +02:00
Pierre Krieger
114509fc24 Fix loop to be more precise 2015-09-27 11:43:23 +02:00
Pierre Krieger
4806aebf61 Arc<Decoder> -> Box<Decoder> 2015-09-27 11:30:27 +02:00
Pierre Krieger
95b2f5a45e Fix the wav decoder 2015-09-27 10:50:11 +02:00
Pierre Krieger
0050b5b4ba Remove debug println 2015-09-27 10:43:46 +02:00
Pierre Krieger
112c8c94e5 Use a proper type for WAVE decoding instead of a Box 2015-09-27 10:41:46 +02:00
Pierre Krieger
007c0d4634 Fix attempt for the compilation failure on stable/beta 2015-09-27 10:28:13 +02:00
Pierre Krieger
f339184d75 Fix all warnings 2015-09-27 10:24:41 +02:00
Pierre Krieger
e8d7a42db4 Correctly handle the voices' formats 2015-09-27 10:22:39 +02:00
Pierre Krieger
4671ed2678 Use a constant for the engine loop duration 2015-09-27 10:10:33 +02:00
Pierre Krieger
bc6f78de4c Handle the volume in the engine core instead of the decoders 2015-09-27 10:04:32 +02:00
Pierre Krieger
92a4567f08 Start using one voice per endpoint and mixing samples manually 2015-09-27 09:56:29 +02:00
Pierre Krieger
a6b5197a59 Use loops of 17ms 2015-09-27 08:58:40 +02:00
Pierre Krieger
b1a1d5babd Fix amplify for u16s 2015-09-24 17:35:51 +02:00
Pierre Krieger
7e11134546 Fix samples rate converter to not crash at end of sound 2015-09-24 16:39:29 +02:00
Pierre Krieger
8a7db27e7f More work towards correctness 2015-09-24 16:37:19 +02:00
Pierre Krieger
aad266ba83 Rework the samples rate converter 2015-09-24 15:53:04 +02:00
Pierre Krieger
11494cfb4a Fix the length tests 2015-09-24 15:32:14 +02:00
Pierre Krieger
9231a092d1 Fix the downsampling test 2015-09-24 14:49:22 +02:00
tomaka
9c9d5c1591 Merge pull request #27 from tomaka/tests-fixezs
Added various tests and fixes
2015-09-24 13:56:41 +02:00
Pierre Krieger
0347308e49 Added various tests and fixes 2015-09-24 13:49:14 +02:00
Pierre Krieger
43171fab08 Remove sounds that are finished playing 2015-09-24 12:56:36 +02:00
tomaka
8f623f757c Merge pull request #24 from tomaka/fix-warnings
Fix warnings
2015-09-23 18:32:27 +02:00
Pierre Krieger
86eab17039 Fix the vorbis decoder 2015-09-23 17:11:44 +02:00
Pierre Krieger
4ca0c7f42a Fix warnings 2015-09-23 10:57:43 +02:00
Pierre Krieger
5060063e5d Also add get_total_duration_ms() 2015-09-23 10:47:15 +02:00
Pierre Krieger
5c68d37055 Add Handle::sleep_until_end and rework decoder handling 2015-09-23 10:33:45 +02:00
Pierre Krieger
06efd2f53d Optimize the samples rate converter 2015-09-22 22:16:55 +02:00
Pierre Krieger
0f77a93caa Fix the sleep duration of the engine 2015-09-22 22:01:39 +02:00
Pierre Krieger
ba13cb3da0 Fix samples rate converter not working when from == to 2015-09-22 21:47:09 +02:00
Pierre Krieger
65f699038d Remove a debugging println! 2015-09-22 21:21:26 +02:00
tomaka
5058b708a8 Merge pull request #19 from tomaka/prefer-wav-format
Prefer the more lightweight compatible format for WAV
2015-09-22 21:09:28 +02:00
Pierre Krieger
0ba1f4ee4e Prefer the more lightweight compatible format for WAV 2015-09-22 20:24:34 +02:00
Pierre Krieger
5848128386 Fix wav waiting time and improve background thread sleeping functionnality 2015-09-22 17:58:03 +02:00
tomaka
930f9b30e9 Merge pull request #16 from tomaka/faster-format-determination
Faster format determination for wav files
2015-09-22 16:59:02 +02:00
Pierre Krieger
24252a64fe Faster format determination for wav files 2015-09-22 16:49:36 +02:00
Pierre Krieger
c7f2c9918d Improve the samples rate converter's performances 2015-09-22 11:54:23 +02:00
Pierre Krieger
f090ee34e7 Fix the engine sleeping system 2015-09-22 11:49:15 +02:00
Pierre Krieger
580e0c4309 Fix samples rate converter not taking interleaved channels into account 2015-09-22 11:20:08 +02:00
Pierre Krieger
df594742ce Add comment 2015-09-22 11:06:41 +02:00
Pierre Krieger
03e2bbf287 Fix samples being dropped out 2015-09-22 11:04:38 +02:00
Pierre Krieger
cefae3aa51 Reorganize the conversions module 2015-09-11 16:52:44 +02:00
Pierre Krieger
338114d93e Add set_volume to Handle 2015-09-11 13:49:07 +02:00
tomaka
b088c15740 Merge pull request #8 from tomaka/optimize-channels-converter
Optimize the channels counter converter
2015-09-11 12:50:59 +02:00
Pierre Krieger
c5d3e1fb33 Optimize the channels counter converter 2015-09-11 12:05:07 +02:00
Pierre Krieger
b0652147c2 Use hound from crates.io 2015-09-11 11:57:02 +02:00
Pierre Krieger
eb391dd089 Add #[inline] attributes 2015-09-11 11:54:38 +02:00
tomaka
6feffedcc4 Merge pull request #6 from tomaka/better-gcd
Better method to calculate gcd
2015-09-11 11:53:51 +02:00
Pierre Krieger
7dfe06396c Add comments 2015-09-11 11:50:41 +02:00
Pierre Krieger
94c1ee5f42 Optimize the samples rate converter 2015-09-11 11:44:42 +02:00
Pierre Krieger
d749ea8a9e Better method to calculate gcd 2015-09-11 11:05:15 +02:00
Pierre Krieger
056a56950e Add proper sleeps in the engine 2015-09-11 10:04:13 +02:00
Pierre Krieger
b7462737a3 Write the value 0 if there is no sample data available anymore 2015-09-10 18:15:13 +02:00
Pierre Krieger
b86d1ff48c Fix vorbis player outputting nothing 2015-09-10 18:12:06 +02:00
Pierre Krieger
aa74d06bb7 Reenable vorbis 2015-09-10 17:52:02 +02:00
Pierre Krieger
df063c075c Choose the most suitable voice format 2015-09-10 17:20:42 +02:00
Pierre Krieger
60e9fa5a6c Change channels converter to dispatch existing channels 2015-09-10 17:05:38 +02:00
Pierre Krieger
b67194b3d5 Update sample formats conversions and tests 2015-09-10 17:01:48 +02:00
Pierre Krieger
89abf72790 Update to cpal 0.2 2015-09-10 16:17:37 +02:00
Pierre Krieger
a2081a9e41 Ignore errors if background thread spawning fails 2015-07-22 16:33:28 +02:00
Pierre Krieger
e4a246a08f Remove the WAV hack to bypass the cpal bug 2015-07-22 14:31:02 +02:00
Pierre Krieger
5a438bcdec Add support for vorbis decoding 2015-07-22 14:23:03 +02:00
Pierre Krieger
9bec7fbc40 Add and modify some documentation 2015-07-22 13:50:34 +02:00
Pierre Krieger
de741115fd Add Handle type 2015-07-22 13:27:53 +02:00
Pierre Krieger
824b4f0041 Initial commit 2015-07-22 12:14:11 +02:00