Parallelization, FPS limiting, fixed memory leak#24
Parallelization, FPS limiting, fixed memory leak#24tuffnerdstuff wants to merge 4 commits intobauersimon:masterfrom
Conversation
* implemented worker pool * running color computation in parallel * running universe update in parallel * limiting frame generation (default 40 fps)
93cea13 to
7540902
Compare
|
Woooow - thanks for taking a look at my project and even adding some improvements. Super glad to hear that you found it useful. As I stated in #20 (comment) I don't have an ArtNet interface anymore 🙈 so sadly I didn't get around to take care of the open issues. I really want to review and incorporate your changes at some point - thanks so much for contributing! Will probably resort to some virtual Artnet visualizer? Cannot promise to take of this immediately but it's definitely on my plate 👼. |
|
No problem, take your time 😂 In the meantime I will just continue playing around on my fork 😁 |
|
@tuffnerdstuff I fear I cannot give this project the necessary focus for the forseable future. I'm planning on archiving it and forwarding to your fork, if that's alright with you? |
|
@bauersimon sure no problem, I'll see what I can do 👍 |
Hi all!
First of all: Thank you @bauersimon for sharing this awesome project with the world! As I had some stage lights lying around collecting dust and I wanted to put them to good use again. After some fiddling-around with the config I was able to introduce ScreenToArtnet to my Raspberry Pi OLA ArtNet Node. The latency was pretty good, but the 13 FPS I got was causing some noticeable flickering during fades (I use the ambilight mostly for gaming). I checked your open issues and noticed that parallelization was still something you wanted to try out. After some experiments I made the following improvements:
That bumped my FPS from 13 to over 60, so now the ambilight is buttery smooth (even though I'm driving my Raspberry Pi 1 over WiFi).
I also tweaked something here and there:
I also figured out during testing that the particular snapshot of the screenshot library used here had a memory leak issue. I upgraded to the latest "version" (sadly it is not tagged) and now the issue is gone.
I went over your issues and these changes should address #20 , #18 and #13 (kept lock-stepping color computation and networking in order to prevent out-of-order updates).
Have fun
tuffnerdstuff