You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have image data in a uint8_t array that takes up a lot of flash space in my embedded project. It's rather simple image patterns so I suspect it should be possible to compress significantly.
At the lowest level, since C strings are basically just arrays of bytes, I feel it should be possible to use this awesome system to get the same compile time compression, but I'm not seeing the necessary syntax.
I bet I could coax my byte array into a string first and use this project directly, but with bytes often outside the ASCII range I expect that will end up rather... "ugly".
I could alternatively compress my image data ahead of time and use some runtime decompressor of my choosing, but that seems more complicated (for now).
So, is there some alternate API that I'm not seeing to use this with an array of bytes?
The text was updated successfully, but these errors were encountered:
It looks like I never provided an easy way to use this with arrays, sorry. I've added two new methods to support this, they've been pushed so you can try them out:
The second option allows for a single declaration and "cleaner" syntax, though the first option compiles faster (20k elements in 10 seconds vs. 15 sec.). array is also kept out of the compiled binary. I tested on gcc 10.1 with no optimizations.
Do one of these options work for you? I'm open to any suggestions.
I have image data in a
uint8_t
array that takes up a lot of flash space in my embedded project. It's rather simple image patterns so I suspect it should be possible to compress significantly.At the lowest level, since C strings are basically just arrays of bytes, I feel it should be possible to use this awesome system to get the same compile time compression, but I'm not seeing the necessary syntax.
I bet I could coax my byte array into a string first and use this project directly, but with bytes often outside the ASCII range I expect that will end up rather... "ugly".
I could alternatively compress my image data ahead of time and use some runtime decompressor of my choosing, but that seems more complicated (for now).
So, is there some alternate API that I'm not seeing to use this with an array of bytes?
The text was updated successfully, but these errors were encountered: