Commit Graph

6256 Commits

Author SHA1 Message Date
John Cupitt 91b0703921 add VipsStreamou
An output stream subclass you can easily connect to other destinations.
2019-11-21 17:54:10 +00:00
John Cupitt 6423721951 set defaut values for streamiu signals
In case no user signals are attached. Remove some dbg code.
2019-11-21 16:32:36 +00:00
John Cupitt 857aafc8c2 add VipsStreamiu
a streami subclass (u for user?) with actions signals you can connect to
to provide implementations of read and seek
2019-11-21 16:22:43 +00:00
John Cupitt 486b95eb7b
Merge branch 'master' into add-stream-object 2019-11-19 17:08:03 +00:00
John Cupitt 9a193f6f4c test for gio
It seems glib added gio in 2.15, though I don't know if svgload will
actually work with a glib that old.
2019-11-19 17:05:12 +00:00
John Cupitt 73985463fd more dbuf->streamo conversion 2019-11-19 13:20:05 +00:00
John Cupitt 1e4edf2f06 formatting in dzsave.c 2019-11-19 08:54:23 +00:00
John Cupitt a129cef9dd add streamo_steal
and start converting some old dbuf code
2019-11-19 06:47:24 +00:00
John Cupitt 712157cd16 better support for TIFFs with many alphas
The premultiplied alpha can be in any position, and it checks if there
is more than one ASSOCALPHA.

See https://github.com/libvips/libvips/issues/1471
2019-11-18 16:48:34 +00:00
John Cupitt c7f622d646 try simplifying vips_g_input_stream_skip()
Just does a `SEEK_CUR` now.
2019-11-18 15:28:14 +00:00
John Cupitt 73dd7eebe5 move streamiw inside svgload
since that's the only place it is used
2019-11-18 15:07:37 +00:00
John Cupitt 09325600ee rename VipsStreamib as VipsBufis
The VipsStreamib (stream input buffered) was misleading -- it was
implemented on top of VipsStreami, but was not a subclass.

Rename as VipsBufis (buffered input stream). It's a silly name, but
easy to remember and reflects the purpose better,
2019-11-18 13:09:04 +00:00
John Cupitt 6b5035c160 update changelog 2019-11-15 17:30:31 +00:00
John Cupitt 9a3842919a add mmap ppm input 2019-11-15 15:56:28 +00:00
John Cupitt 5f4b995551 make ppm load sequential
it used to load the entire image, or mmap it
2019-11-15 15:15:25 +00:00
John Cupitt 17b994419b move ppm save into the class
no separate save function now
2019-11-15 10:23:45 +00:00
John Cupitt 7a047f5332 move ppm into ppmload
so we can add a ppm stream loader easily
2019-11-14 18:44:27 +00:00
John Cupitt c1a027c8d7 ppm load uses streams 2019-11-14 12:57:39 +00:00
John Cupitt 3bbadc0198 revise streamo, ppm save uses it
streamo is simpler, and has a fast putc.
2019-11-13 17:50:02 +00:00
John Cupitt 7aec350f1c old load/save funcs now use stream API
new_from_file / new_from_buffer and write_to_file / write_to_buffer
use the stream API if they can.
2019-11-13 16:39:47 +00:00
John Cupitt 123c52be70 revert to call-by-value for c++ API 2019-11-13 08:44:59 +00:00
John Cupitt cb7bc24b2a note in changelog 2019-11-12 18:05:17 +00:00
Angel Sánchez 6df26bfc9b load lab 8bit with alpha to labS 2019-11-12 18:02:52 +00:00
Angel Sánchez c7b286ff8e Revert "improve labpack processing"
This reverts commit c4dd47aa99ea32acacc55fa793d7a5764b3a4aa8.
2019-11-12 17:35:16 +00:00
Angel Sánchez 4b7bd0810b Revert "correctly parse labQ with extra channels"
This reverts commit a817b3874e695bacc2f38d351d93e917373631e5.
2019-11-12 17:35:16 +00:00
Angel Sánchez 64f1b60b14 Revert "fix tiff writer for labQ with more bands"
This reverts commit bb3955193daa98b35e4fc69f8ad39cbb3d0d2fa8.
2019-11-12 17:35:16 +00:00
Angel Sánchez cce739bed9 fix tiff writer for labQ with more bands 2019-11-12 17:35:16 +00:00
Angel Sánchez 4ba6373357 correctly parse labQ with extra channels 2019-11-12 17:35:16 +00:00
Angel Sánchez 415af7a10c improve labpack processing 2019-11-12 17:35:16 +00:00
John Cupitt 55024c71ce
Merge branch 'master' into add-stream-object 2019-11-12 14:08:02 +00:00
John Cupitt 92521c0dc6 add options back to VInterpolate
since we might use them in the future
2019-11-12 14:03:25 +00:00
John Cupitt ceb2db513d Merge branch '8.8' 2019-11-11 18:05:57 +00:00
John Cupitt 1018320043 fix make dist in master 2019-11-11 16:20:18 +00:00
John Cupitt 3ba0b285d4 switch to GDateTime 2019-11-11 15:14:04 +00:00
John Cupitt 144a9c48f9 set name in info.json 2019-11-11 15:05:51 +00:00
John Cupitt 74519a230b clean up iiif output a bit
better info.json, but still not support for the full/ directory

see https://github.com/libvips/libvips/issues/1465
2019-11-11 13:38:58 +00:00
John Cupitt b8ea3f8442 update cpp interface for stream variable rename 2019-11-11 09:24:45 +00:00
John Cupitt f5a4f41edf rename VipsStream* variables
The convention is now:

	VipStreami *streami;

We had `input` in many places, a left-over from the old VipStreamInput
name.
2019-11-11 09:09:34 +00:00
John Cupitt 998b5eea45 fix svgload sniff
by adding vips_streami_sniff_at_most()
2019-11-11 07:53:36 +00:00
John Cupitt 42b4474356 stray decl 2019-11-10 18:03:38 +00:00
John Cupitt 9e536895e4
Merge pull request #1466 from kleisauke/stream-cplusplus
Add support for streaming in the C++ binding
2019-11-10 17:30:30 +00:00
John Cupitt 441f61f3ff svgload from a stream 2019-11-10 17:23:28 +00:00
Kleis Auke Wolthuizen b49910d270 Add support for streaming in the C++ binding
See: libvips/libvips#1443.
2019-11-10 13:46:29 +01:00
Kleis Auke Wolthuizen 41c08b0ffb Add svgload_stream to the descriptors test
Seems to work!
2019-11-10 12:32:18 +01:00
John Cupitt b65a9d7328 oop, missing ! on tiff save
resolution-unit metadata was not being checked correctly on tiff save,
thanks @kayarre

see https://github.com/libvips/pyvips/issues/133
2019-11-10 10:26:13 +00:00
John Cupitt f499cefb0e add iiif layout to dzsave 2019-11-09 20:40:39 +00:00
Kleis Auke Wolthuizen 609fdb4fb6 WiP: Add svgload_stream
TODO: Should we `#ifdef HAVE_RSVG` the VipsStreamiw class?
2019-11-09 18:19:54 +01:00
John Cupitt ce4729c92b fix radload from pipe 2019-11-08 17:39:25 +00:00
Kleis Auke Wolthuizen 51ac7a6d8c WiP: Add radload stream/buffer
TODO: Does streamib supports non-seekable streams?
(cherry picked from commit bc99b26b4e0326267ffea3b34d5e4a67c7866c1b)
2019-11-08 16:04:54 +00:00
John Cupitt cefa82bacf bump version for pyvips stream test 2019-11-07 20:58:10 +00:00