tynet-lichat/shirakumo - IRC Chatlog
Search
19:36:10
|3b|
ACTION is too busy finding new and annoying ways for bezier intersection to be broken :p
19:37:16
|3b|
(currently trying to fix "finds different # of intersections for (intersect a b) and (intersect b a)" )
19:38:53
|3b|
yeah, that was one options (though more "intersection of results" than "remove duplicates), but i think doing it once but symmetrically is easier
19:39:33
|3b|
which is sort of "do both", but doing them at the same time so it hopefully converges faetsr
19:39:56
shinmera
anyhow, my function is this https://github.com/Shirakumo/libmixed/blob/master/src/segments/channel.c#L158-L210
19:41:00
|3b|
if the problem is "find intersections to within some finite tolerance", then returning 1 intersection if there are 2 in that tolerance is correct
19:41:41
selwyn
shinmera: there was a bug in surround sound some time ago that we spent a lot of time figuring out
19:42:17
shinmera
anyhow. When I configure my windows device for 5.1 and run kandria I get horrible artefacts
19:45:16
shinmera
I'm pretty sure this is also what's happening on other people's systems that have reported bad audio distortion
19:50:22
|3b|
if you write zero to some or all channels, can you tell if it is a specific one that is noisy?
19:53:13
|3b|
maybe instead multiply them by globals that you could set from lisp, so at least you don't have to recompile as much
19:55:52
shinmera
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.177.3861&rep=rep1&type=pdf
20:00:02
shinmera
yeah, no, samples are definitely [-1,+1]. So that subtraction is suspect for sure.
20:20:23
shinmera
or rather, one class of distortions is no longer present it seems (the horrible pops kind)
20:27:47
|3b|
do you have distinct speakers you could move closer to to try to distinguish if it is any particular one?
20:39:05
shinmera
Well, if anyone cares to find out how to fix my implementation, I would be very grateful
20:39:28
shinmera
For now I'm going to comment out the rear processing with the hilbert and just use the SDL2 hack instead.
21:07:32
|3b|
though i guess it is returning a sum, so multiplying the values being added is the same as multiplying the sum
21:25:56
|3b|
if data->delay is only used for hilbert. is there any reason for the variable size? seems like hilbert always looks at a fixed amount of it
21:26:51
|3b|
ACTION doesn't expect it to be too small with current code unless you managed to get 16KHz output somehow, but still odd
21:27:44
shinmera
but it's been years since I wrote this and even then I didn't understand it well :p
21:28:27
|3b|
ah, possibly replacing - with + would do something closer to that, delay of buffer size - 100 samples
21:30:09
shinmera
right now what's bothering me most though is the amount of repetition in channel.c reallyyyy wish I had proper macros.
21:50:48
|3b|
and i'm not sure it is even doing -foo%size, it might be doing ((uint32)-foo)%size which is even more not what you want
21:54:31
|3b|
and if - does turn out to be right for some reason, add delay_size to it so it is always +%+ instead of -%+ sometimes