Comments (3)
At the moment the library could not possibly do this, it loads each of those images into a stream, the issue is an unsigned int has a maximum size of a little over 2,000,000,000 bytes while all of your 875 256x256 total up to much more than that, and thatβs assuming that ruby had no memory allocation limit (which it does), but long story short it is more data than ruby can store in one stream, thus the NoMemoryException occurs because ruby cannot write anymore information to temporary memory. Theoretically the library could be rewritten to write the output as it receives input information, but it would be a lot of work to rewrite such a large portion of the gem. Hope this helps ;-)
from chunky_png.
Try the https://github.com/libvips/ruby-vips
from chunky_png.
Closing this, as this is not a memory leak as explained in #144 (comment)
While it could be possible to have a more memory efficient implementation to help with tasks like this, it would require a significant rewrite of large parts of the codebase, which is not something I am planning to do any time soon.
from chunky_png.
Related Issues (20)
- Release gem with support for iTXt chunks? HOT 2
- undefined method `value' for #<ChunkyPNG::Chunk::InternationalText:0x000000038f46e0> HOT 1
- how to set DPI HOT 2
- NameError: uninitialized constant ChunkyPNG::Encoding where EMPTY_BYTEARRAY = "".force_encoding(Encoding::BINARY).freeze was changed from EMPTY_BYTEARRAY = force_binary(String.new).freeze HOT 1
- Frozen string literal usage unsupported in Ruby 1.9.x HOT 1
- NoMethodError: undefined method `b' for "\x00":String HOT 1
- Getting "can't modify frozen string (TypeError)" HOT 2
- Ruby 3.0.0
- Error by using watir-extensions-element-screenshot on Firefox 85.0.1 HOT 2
- .rbenv/versions/3.0.0/lib/ruby/3.0.0/set/sorted_set.rb:4:in `rescue in <top (required)>': The `SortedSet` class has been extracted from the `set` library.You must use the `sorted_set` gem or other alternatives. (RuntimeError) HOT 1
- from_rgb_stream : calculation of width and height HOT 6
- Changelog is missing entries from version 1.3.12 to 1.4.0 HOT 2
- Requires sorted_set gem with Ruby 3.0 HOT 3
- Wrong hue for #0A000A
- [Documentation] More examples?
- Write text on spicific position HOT 3
- spec test suite of chunky_png 1.4.0 fails with upcoming ruby32 due to Object#:~ removal
- ChunkyPNG::Canvas.from_file fails outside main Ractor HOT 1
- Output is non-deterministic HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from chunky_png.