←back to thread

236 points l8rlump | 9 comments | | HN request time: 0.001s | source | bottom
1. polishdude20 ◴[] No.44506464[source]
Hey congrats on the app! This is just what I'm looking for :)

Just installed it on my m1 mac and opened a folder of RAW files. The initial loading lagged my whole macbook. Couldn't even open the dock. Once the thumbnails all loaded it's better but not as buttery smooth as I would have hoped! Would love to know what other commercial apps do that make them not lag. Is it just that they're written natively?

replies(3): >>44506563 #>>44506591 #>>44506674 #
2. kamranjon ◴[] No.44506563[source]
If you haven’t tried ansel: https://ansel.photos/en/ or darktable: https://www.darktable.org/ I’d recommend trying them out - they are the current open source raw editing apps that perform well that are out there. It could be that this app is competitive with them, but I haven’t had a chance to try it out yet - but both ansel and darktable run well on my M1.
replies(1): >>44507064 #
3. cybertimom ◴[] No.44506591[source]
Thanks for trying out RapidRAW and for the feedback. Currently I optimized the app to load small-medium sized folders (e.g. 1-300 images). Its expected that the app lags for folders with more images.

Its a high priority to optimize the loading speed of large folders and you can expect an improvement in the coming days.

Kind regards, Timon

4. TheDong ◴[] No.44506674[source]
I mean, it's making 720px width jpg thumbnails using the CPU https://github.com/CyberTimon/RapidRAW/blob/fc21ede729b45d97...

And then it's sending these thumbnails back from rust to javascript as base64 encoded strings, not using a shared buffer: https://github.com/CyberTimon/RapidRAW/blob/fc21ede729b45d97...

This is the sorta stuff that native apps mostly don't do. They don't base64 an image just to send it to a different app (react) to base64 decode it (via a third app, webkit) via a slow ipc mechanism (tauri) from itself to itself, allocating 6x the chunks of memory along the way for one bit of data (the 6x are: raw data in rust, base64 data in rust, json encoded base64 in rust for tauri ipc, json encoded base64 in javascript, base64 in javascript, raw image data in webkit to finally view).

replies(2): >>44506867 #>>44507087 #
5. rossant ◴[] No.44506867[source]
6x sounds bad. Might be a sign of vibe coding?
replies(2): >>44506896 #>>44507723 #
6. ImGonnaVibeCode ◴[] No.44506896{3}[source]
>React and Rust, with the support from Google Gemini

>immensely grateful for Google's Gemini

>AI Studio's free tier

7. donatzsky ◴[] No.44507064[source]
While certainly an impressive effort, it's not even close to competitive yet. As is pointed out in a comment on [1] and as can be seen from the rat piss yellow in the sky, the algorithms are very much on the naive/simple side of things.

[1] https://youtube.com/watch?v=7QymsCRNRHE

8. cybertimom ◴[] No.44507087[source]
Yes you are completely right. This part is definitely not optimal yet. I haven't had lots of Tauri / Rust experience before this project.. it's on my todo list to improve. While trying to use the asset localhost protocol I ran into a lot of permission issues.
9. maverwa ◴[] No.44507723{3}[source]
na, electron/tauri/"the web" has done this long before GPT happened.