Commit Graph

2161 Commits

Author SHA1 Message Date
John Cupitt
d629e0cba7 merge parallel-read work 2012-10-17 00:19:24 +01:00
John Cupitt
039ea63bba oops 2012-10-16 23:47:45 +01:00
John Cupitt
78fb2dd75b Merge remote-tracking branch 'origin/master' into parallel-read
Conflicts:
	libvips/foreign/openslide2vips.c
2012-10-16 23:46:01 +01:00
John Cupitt
bf945dcdc5 fix assert in openslide read
one of the asserts was broken
2012-10-15 13:36:08 +01:00
John Cupitt
a3ad07ac90 test files 2012-10-15 09:49:53 +01:00
John Cupitt
2f6aceb32a revert to sharing an openslide handle
openslide master now has locking around tiff access
2012-10-12 14:20:02 +01:00
John Cupitt
92366883cd Merge remote-tracking branch 'origin/master' into parallel-read
Conflicts:
	ChangeLog
2012-10-11 12:48:08 +01:00
John Cupitt
ab1d4ac6b8 look for tile-width and tile-height properties
get tile geo from openslide
2012-10-11 12:47:17 +01:00
John Cupitt
2f65b07abb add a @background option to embed and dzsave
you can now set the background colour for edge tiles in dzsave and embed, eg.:

vips dzsave k2.jpg x --background "1 2 3"
2012-10-10 13:22:30 +01:00
John Cupitt
d0b1740fd1 various small bugfixes
now works
2012-10-09 14:37:46 +01:00
John Cupitt
3e1b30dbf9 TODO update 2012-10-09 11:11:05 +01:00
John Cupitt
199c182103 ove the thread thing to tilecache 2012-10-08 22:33:38 +01:00
John Cupitt
8a8ce4fd44 add a threaded tile cache
seems to work!
2012-10-08 15:27:52 +01:00
John Cupitt
4e0a433c24 openslide2vips uses multiple parallel osr reads
open a separate openside_t for every read thread to try to get some
parallelism in decode

works, but no faster overall, since we don't ensure that each osr tile
is only fetched once --- threads need to synchronise and not overlap

we need:

- some way to get tile geometry from osr

- a threaded tilecache aligned to the osr tile boundaries

the tilecache needs to have locks and semaphores on every tile,
something like:

class tilecache:
  def generate(region):
    # lock all tiles we need, make a list of the ones that need
    # calculating
    work = []
    for tile in region:
      tile.lock()
      if tile.nodata():
        work.append(tile)
	tile.set(:in-progress)

    # calculate all empty tiles we need
    for tile in work:
      tile.calculate()
      tile.set(:data)

    # some tiles may be being made by another thread,
    # wait for them to be done
    for tile in region:
      if tile.in-progress:
        tile.wait()

    # should all have data now, paste to output and unlock
    for tile in region:
      tile.paste(output)
      tile.unlock()

    return output
2012-10-05 09:12:54 +01:00
John Cupitt
0348f8a4da fix compiler warning 2012-10-04 11:26:02 +01:00
John Cupitt
6e6a2a455a Merge remote-tracking branch 'origin/7.30'
Conflicts:
	ChangeLog
	libvips/foreign/dzsave.c
2012-10-03 14:45:53 +01:00
John Cupitt
dee1aac7b1 dzsave can write zoomify and google maps
use "layout" to pick the directory layout, deepzoom / zoomify / google
all allowed
2012-10-03 14:26:59 +01:00
John Cupitt
aec36aa5a7 Merge remote-tracking branch 'origin/7.30' 2012-10-03 09:40:03 +01:00
John Cupitt
4050c47281 fix .dzi format string
dzsave left the save options attached to the Format string in the .dzi
file

also, version bump
2012-10-02 13:11:43 +01:00
John Cupitt
0e5e34e1ea sdzsave fix
if dzsave was running a scanline at a time and height was odd, the final
set of tiles were not being written -- thanks Martin
2012-10-01 14:08:59 +01:00
John Cupitt
c1dcc3e509 fix a compile fail if no libtiff
compilation failed if libtiff-dev was not found, thanks Martin
2012-09-28 13:30:28 +01:00
John Cupitt
2065317272 use new converter 2012-09-27 14:56:51 +01:00
John Cupitt
d56943f2c2 add vips_colour_convert()
generic thing to change colourspace
2012-09-26 21:53:02 +01:00
John Cupitt
52a188c3c5 new icc stuff now works 2012-09-26 14:53:14 +01:00
John Cupitt
e793d38aa7 new icc transformer compiles 2012-09-25 22:06:24 +01:00
John Cupitt
ecb8faa7cd Merge remote-tracking branch 'origin/master' into colour 2012-09-24 13:31:49 +01:00
John Cupitt
3a6b32dcf9 small fixes 2012-09-24 13:31:06 +01:00
John Cupitt
f8dddf23a9 remove disp stuff, just sRGB now
all the old monitor calibration stuff is gone, we only support sRGB now

im_Lab2disp() etc. have become vips_Lab2sRGB() etc.

compatibility macros keep old code compiling
2012-09-24 11:23:32 +01:00
John Cupitt
f569abb00a Merge pull request #29 from bgilbert/readme-add-leica
README: add Leica to OpenSlide-supported formats
2012-09-22 02:21:39 -07:00
Benjamin Gilbert
54834e9433 README: add Leica to OpenSlide-supported formats 2012-09-21 17:05:01 -04:00
John Cupitt
2ce7bc9618 started moving disp funcs 2012-09-21 14:47:50 +01:00
John Cupitt
5fff90bc95 redo LabQ2LabS / LabS2LabQ as classes 2012-09-21 11:55:31 +01:00
John Cupitt
969e355701 LabS <-> Lab as classes 2012-09-20 21:53:47 +01:00
John Cupitt
2e1b8bb9ef LabQ <-> Lab as classes 2012-09-20 21:21:08 +01:00
John Cupitt
59513b6869 Merge remote-tracking branch 'origin/master' into colour 2012-09-20 16:32:48 +01:00
John Cupitt
7130a74d0e redo rad2float / float2rad as classes 2012-09-20 15:13:44 +01:00
John Cupitt
b030162677 rename Colorimetric as ColourSpace 2012-09-20 11:05:27 +01:00
John Cupitt
684df1d36a Merge pull request #28 from bgilbert/openslide-3.3
Fixes and improvements for OpenSlide 3.3
2012-09-20 02:55:05 -07:00
John Cupitt
7b665c24df redo im_Yxy2XYZ() and im_XYZ2Yxy() as classes 2012-09-20 09:49:05 +01:00
John Cupitt
e688bf29b6 redo im_XYZ2Lab() as a class 2012-09-20 09:18:52 +01:00
Benjamin Gilbert
c98d65434b bump minimum OpenSlide version to 3.3.0
- Avoid deprecated API

- Drop unneeded g_log handler
2012-09-20 03:11:49 -04:00
Benjamin Gilbert
6e74234ba7 add Leica filename suffix
newly-supported in OpenSlide 3.3.0.
2012-09-20 02:59:00 -04:00
Benjamin Gilbert
5e08757301 fix openslide_open error reporting for OpenSlide 3.3.0 2012-09-20 02:57:24 -04:00
John Cupitt
e0fcc2c517 cleanups 2012-09-19 15:03:31 +01:00
John Cupitt
496b4373a4 redo im_UCS2LCh() and im_LCh2UCS() as classes 2012-09-19 14:13:37 +01:00
John Cupitt
8abbcc4e77 redo im_LCh2Lab() as a class 2012-09-19 12:01:02 +01:00
John Cupitt
05d3e3e167 cleanup 2012-09-19 10:18:34 +01:00
John Cupitt
0116c641c6 set Type for new colour classes 2012-09-18 18:36:48 +01:00
John Cupitt
91e52a1ee2 redo im_Lab2LCh() as a class 2012-09-18 14:52:21 +01:00
John Cupitt
a38fa9302e redo im_Lab2XYZ() as a class 2012-09-18 14:14:08 +01:00