Releases: sz3/libcimbar
v0.6.3
Feature release 0.6.3:
-
introducing experimental mode
Bm! (#143, #146)- this is a new, compact cimbar config that should allow reliable transfers on a broader variety of cameras/devices
mode Bm's max transfer capacity is about 70% ofmode B-- but in many circumstances reliability is the limiting factor, not maximum theoretical performance. So give it a try...- this required a rewrite of how cimbar manages its config state internally.
-
improvements to the encoder C api that should (slightly) decrease the number of OOM errors on large files (#145 )
- we can call this a bug (maybe a design-level bug), but the API in past versions required the whole input file to exist in contiguous memory. This requirement has been relaxed/fixed.
- we still have an unavoidable contiguous memory requirement (for the compressed file, so wirehair can do its fountain code magic). Nevertheless, I expect OOM errors to go down a fair amount.
-
minor improvements to the decoder C api (for the beta web decoder). (#144)
- basically some cleanup/refactoring from the initial decoder C api release.
- The web decoder also now supports mode
Bm. It is still in beta.
-
misc small bugfixes to cli tools
As with the last release, cimbar.wasm.tar.gz contains both the send/recv components, while cimbar_js.html is just the sender. As always, cimbar.wasm is the version used for cimbar.org.
v0.6.2c
Beta release of the web-based reader/decoder!
- the decoder is located at https://re.cimbar.org , and it works much like the android app (https://github.com/sz3/cfc) -- view fullscreen camera feed; center it on the barcode; wait for progress; save file when done
- the webapp receiver now preserves filenames, if the sender is the newest version (e.g. if the filename is included in the send). The next release of CFC will also preserve filenames.
- the intended platforms for the release are IOS and various desktop/laptop OSs (windows, linux, mac). For the latter I have limited testing capacity, in particular given the myriad different types of cameras and custom browser code (extensions, etc). But: it's a beta release! It'll be a process to work through the various issues that inevitably arise.
- for android I would still recommend using the native app if possible. It's faster.
- I see a transfer speed of about 80 kb/s on iphone.
- the default mode for the sender/encoder is now
mode B.
(already) known issues:
- no mode autodetection. The default is now
mode B-- if using 4C, you need to select that from the menu. - there may be an issue with intermittent freezes/pauses on desktop chrome/firefox/???. What I've seen seems like it could be a GPU issue, but I'd like more people to try it to see if they see the same thing.
- something is not optimal with the webapp camera settings. I'm getting more consistent results with native code than via the web on some devices, and I'm not sure why.
- some webcams just kinda stink (low res, bad autofocus, ...) for what we're trying to do here. I'm working on a lower res version of the format to hopefully help with this.
Includes:
#130 - default encoder config to "mode B"
#133 - Fix zstd skippable frame padding for small files
#134 - web decoder
#135 - Include filename when encoding a file
#136 - color correction fix
#137 - more bugfixes
Download notes:
- cimbar_js and cimbar.asmjs.zip (which might go away next release?) are just the encoder (sender)
- cimbar.wasm.tar.gz contains both the sender and receiver, and can be run locally with something like a
python -m http.serverin the extracted directory. Alternatively, you can go to cimbar.org for the sender, and re.cimbar.org for the receiver. Both should work offline as a PWA.
v0.6.1f
A grab bag of small changes to the cimbar.js web encoder UI:
- an error message is now displayed when webGL fails init (#95)
- toggling the menu now temporarily pauses the barcode animation for 15 frames (1 second)
- this helps with autofocus issues on certain cameras
- on mobile, the touch event (press the screen anywhere) will also pause the animation
- a very exciting and mind-blowingly cool new background
- ok, mostly I just rotated the grid by 45 degrees
- auto-expand canvas to fill window on larger displays (was previously capped to the cimbar res of 1024x1024 +padding).
- a larger minimum padding "dead zone" around the barcode
v0.6.0f
Format/design notes:
- introducing
mode B, with split symbol and color decodes. This means that even if the colors are completely wrong, we can still make progress. - the new format also allows better color correction => better performance under a larger variety of conditions
- there are some narrow circumstances where the old
mode 4Cmight still be better
- there are some narrow circumstances where the old
- removal of 8-color support (for now?)
Bugfix:
- fixed a race condition in how the color correction matrix was being updated
v0.5.15
v0.5.14f
v0.5.14
Dependency updates and misc bugfixes. Most changes were maintenance stuff or in the decoder (there were no encoder changes for v0.5.13, and thus no cimbar.js release).
(see https://github.com/sz3/libcimbar/releases/tag/v0.5.14f -- #82 was meant to be in this release, but I botched it 🙃 )