From: Simon W. <si...@th...> - 2003-12-30 13:42:23
|
I'm hoping to use Imlib2 in a project at work but we make extensive use of 32 Bit TIFFs. However, using any of the test_32bit*.tif files in here http://www.thegestalt.org/simon/tiffs/ with the example imlib2_convert program gives ... (gdb) set args test_32bit_NONE_image.tif out_test_32bit_NONE_image.tif (gdb) run Starting program: imlib2_convert test_32bit_NONE_image.tif out_test_32bit_NONE_image.tif Program received signal SIGSEGV, Segmentation fault. 0x4016f07a in mempcpy () from /lib/libc.so.6 (gdb) bt #0 0x4016f07a in mempcpy () from /lib/libc.so.6 #1 0x40163de6 in _IO_default_xsputn_internal () from /lib/libc.so.6 #2 0x4013c75f in vfprintf () from /lib/libc.so.6 #3 0x401591ac in vsprintf () from /lib/libc.so.6 #4 0x401468dd in sprintf () from /lib/libc.so.6 (gdb) quit Is this a problem with the Imlib TIFF loader or with libtiff itself? simon@kanga tiffs $ uname -a Linux kanga.astray.com 2.4.19-gentoo-r10 #6 Wed May 7 20:56:57 BST 2003 i686 Celeron (Coppermine) GenuineIntel GNU/Linux simon@kanga tiffs $ imlib2-config --version 1.1.0 simon@kanga tiffs $ ls /usr/lib/*tiff.so* /usr/lib/libimlib-tiff.so /usr/lib/libtiff.so /usr/lib/libtiff.so.3 /usr/lib/libtiff.so.3.5.7 I'm also wondering if anybody happens to have written loaders for these formats? I suspect not since they're fairly specialised but I figured it was worth asking OpenEXR Cineon / DPX Cheers, Simon -- i try not to let pedantry get in the way of a glib remark |
From: Carsten H. (T. R. <ra...@ra...> - 2004-01-03 05:59:58
|
On Tue, 30 Dec 2003 13:42:16 +0000 Simon Wistow <si...@th...> babbled: > > I'm hoping to use Imlib2 in a project at work but we make extensive use > of 32 Bit TIFFs. However, using any of the test_32bit*.tif files in here > > http://www.thegestalt.org/simon/tiffs/ > > with the example imlib2_convert program gives ... aaah. found it. the segv is thanks to me not handling the error message things properly in libtiff - but libtiff doesnt want to load the images at all. it's not having a bar of it. if i call if (!TIFFRGBAImageOK(tif, txt)) { TIFFClose(tif); return 0; } it errors out. libtiif is saying th eimage is not ok :( i guess libtiff just doesnt like it, or i need to updeate libtiff (i've got 3.5.7 too), or theres soem magic i need to do to make it be happy with this file! :) so in the end its libtiff here :) i've fixed my error handlign and now imlib2 wont segv, but it still wont load it thanks to libtiff erroring out. > (gdb) set args test_32bit_NONE_image.tif out_test_32bit_NONE_image.tif > (gdb) run > Starting program: > imlib2_convert > test_32bit_NONE_image.tif out_test_32bit_NONE_image.tif > > Program received signal SIGSEGV, Segmentation fault. > 0x4016f07a in mempcpy () from /lib/libc.so.6 > (gdb) bt > #0 0x4016f07a in mempcpy () from /lib/libc.so.6 > #1 0x40163de6 in _IO_default_xsputn_internal () from /lib/libc.so.6 > #2 0x4013c75f in vfprintf () from /lib/libc.so.6 > #3 0x401591ac in vsprintf () from /lib/libc.so.6 > #4 0x401468dd in sprintf () from /lib/libc.so.6 > (gdb) quit > > Is this a problem with the Imlib TIFF loader or with libtiff itself? > > simon@kanga tiffs $ uname -a > Linux kanga.astray.com 2.4.19-gentoo-r10 #6 Wed May 7 20:56:57 BST 2003 > i686 Celeron (Coppermine) GenuineIntel GNU/Linux > > simon@kanga tiffs $ imlib2-config --version > 1.1.0 > simon@kanga tiffs $ ls /usr/lib/*tiff.so* > /usr/lib/libimlib-tiff.so > /usr/lib/libtiff.so > /usr/lib/libtiff.so.3 > /usr/lib/libtiff.so.3.5.7 > > > > I'm also wondering if anybody happens to have written loaders for these > formats? I suspect not since they're fairly specialised but I figured it > was worth asking > > OpenEXR > Cineon / DPX > > Cheers, > > Simon > > > -- > i try not to let pedantry get in the way of a glib remark > > > > ------------------------------------------------------- > This SF.net email is sponsored by: IBM Linux Tutorials. > Become an expert in LINUX or just sharpen your skills. Sign up for IBM's > Free Linux Tutorials. Learn everything from the bash shell to sys admin. > Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click > _______________________________________________ > enlightenment-devel mailing list > enl...@li... > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) ra...@ra... 熊耳 - 車君 ra...@de... Tokyo, Japan (東京 日本) |
From: Simon W. <si...@th...> - 2004-01-06 18:04:33
|
On Sat, Jan 03, 2004 at 02:27:35PM +0900, Carsten Haitzler said: > it errors out. libtiif is saying th eimage is not ok :( i guess libtiff just > doesnt like it, or i need to updeate libtiff (i've got 3.5.7 too), or theres > soem magic i need to do to make it be happy with this file! :) so in the end its > libtiff here :) i've fixed my error handlign and now imlib2 wont segv, but it > still wont load it thanks to libtiff erroring out. Cool, cheers. I'll go bother the libtiff people ;) > OpenEXR I'm currently trying t us Imlib2 for $large_film_project at $special_effects_company hence the need for large TIFFs and the other two file formats I mentioned. Today I have mostly been trying write an OpenEXR loader and I'm wonderign what the best way to do it is - is there a boiler plate for writing stand alone loaders? Currently I'm chetaing and I added # Test for libexr if test "$exr_ok" = no; then AC_CHECK_LIB(IlmImf, file, exr_libs="-lIlmImf -lImath -lHalf -lIex -lz" exr_ok=yes, exr_ok=no AC_MSG_WARN(*** Native EXR support will not be built (EXR library not found) ***), $EXTRA_LIBS) if test "$exr_ok" = yes; then AC_MSG_CHECKING([for ImfRgbaFile.h]) AC_TRY_CPP( [#include <stdio.h> #undef PACKAGE #undef VERSION #include <ImfRgbaFile.h>], gif_ok=yes, gif_ok=no) AC_MSG_RESULT($gif_ok) if test "$exr_ok" = yes; then EXRLIBS=$exr_libs else AC_MSG_WARN(*** Native EXR support will not be built (EXR header file not found) ***) fi fi fi AM_CONDITIONAL(EXR_LOADER, test "$exr_ok" = yes) AC_SUBST(EXRLIBS) to configure.ac, various other gubbins to loaders, Makefile.am ran % automake --foreign --add-missing --copy % autoconf % ./configure and ... got squat. Am I just being a 'tard? Simon |
From: Nathan I. <rb...@us...> - 2004-01-06 18:48:27
|
For a template of creating a set of external loaders, take a look at imlib2_loaders in CVS. Good luck! On Tue, Jan 06, 2004 at 06:04:26PM +0000, Simon Wistow wrote: >=20 > I'm currently trying t us Imlib2 for $large_film_project at=20 > $special_effects_company hence the need for large TIFFs and the other=20 > two file formats I mentioned. >=20 > Today I have mostly been trying write an OpenEXR loader and I'm=20 > wonderign what the best way to do it is - is there a boiler plate for=20 > writing stand alone loaders? >=20 > Currently I'm chetaing and I added >=20 > # Test for libexr > if test "$exr_ok" =3D no; then > AC_CHECK_LIB(IlmImf, file, > exr_libs=3D"-lIlmImf -lImath -lHalf -lIex -lz" > exr_ok=3Dyes, > exr_ok=3Dno > AC_MSG_WARN(*** Native EXR support will not be built (EXR library=20 > not found) ***), > $EXTRA_LIBS) > if test "$exr_ok" =3D yes; then > AC_MSG_CHECKING([for ImfRgbaFile.h]) > AC_TRY_CPP( > [#include <stdio.h> > #undef PACKAGE > #undef VERSION > #include <ImfRgbaFile.h>], > gif_ok=3Dyes, > gif_ok=3Dno) > AC_MSG_RESULT($gif_ok) > if test "$exr_ok" =3D yes; then > EXRLIBS=3D$exr_libs > else > AC_MSG_WARN(*** Native EXR support will not be built (EXR header=20 > file not found) ***) > fi > fi > fi >=20 > AM_CONDITIONAL(EXR_LOADER, test "$exr_ok" =3D yes) > AC_SUBST(EXRLIBS) >=20 > to configure.ac, various other gubbins to loaders, Makefile.am ran >=20 > % automake --foreign --add-missing --copy > % autoconf > % ./configure >=20 > and ... got squat. >=20 > Am I just being a 'tard? >=20 > Simon >=20 >=20 > ------------------------------------------------------- > This SF.net email is sponsored by: IBM Linux Tutorials. > Become an expert in LINUX or just sharpen your skills. Sign up for IBM's > Free Linux Tutorials. Learn everything from the bash shell to sys admin. > Click now! http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick > _______________________________________________ > enlightenment-devel mailing list > enl...@li... > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel --=20 ------------------------------------------------------------------------ | Nathan Ingersoll \\ Computer Systems & Network Coordinator | | nin...@ru... \\ http://www.ruralcenter.org | | http://ningerso.atmos.org/ \\ Rural Health Resource Center | ------------------------------------------------------------------------ |
From: Carsten H. (T. R. <ra...@ra...> - 2004-01-07 00:46:36
|
On Tue, 6 Jan 2004 18:04:26 +0000 Simon Wistow <si...@th...> bab= bled: > On Sat, Jan 03, 2004 at 02:27:35PM +0900, Carsten Haitzler said: > > it errors out. libtiif is saying th eimage is not ok :( i guess libti= ff just > > doesnt like it, or i need to updeate libtiff (i've got 3.5.7 too), or= theres > > soem magic i need to do to make it be happy with this file! :) so in = the end > > its libtiff here :) i've fixed my error handlign and now imlib2 wont = segv, > > but it still wont load it thanks to libtiff erroring out. >=20 > Cool, cheers. I'll go bother the libtiff people ;) >=20 > > OpenEXR aaah yeah. sorry - forgot about this - no - don't know about any other lo= aders other than what's in E cvs (in the imlib2 src tree and the imlib2_loaders= src tree for externally built/shipped loaders). > I'm currently trying t us Imlib2 for $large_film_project at=20 > $special_effects_company hence the need for large TIFFs and the other=20 > two file formats I mentioned. aaah - also one problem. imlib2 does all its math in 32bit RGBA - that me= an 8 bits for R, G and B. film people won't like it cause it will lose precisi= on from 16 or 32bit pixel data (16 or 32bits per color element). > Today I have mostly been trying write an OpenEXR loader and I'm=20 > wonderign what the best way to do it is - is there a boiler plate for=20 > writing stand alone loaders? imlib2 src and imlib2_loaders src is the "boiler plate" > Currently I'm chetaing and I added >=20 > # Test for libexr > if test "$exr_ok" =3D no; then > AC_CHECK_LIB(IlmImf, file, > exr_libs=3D"-lIlmImf -lImath -lHalf -lIex -lz" > exr_ok=3Dyes, > exr_ok=3Dno > AC_MSG_WARN(*** Native EXR support will not be built (EXR library=20 > not found) ***), > $EXTRA_LIBS) > if test "$exr_ok" =3D yes; then > AC_MSG_CHECKING([for ImfRgbaFile.h]) > AC_TRY_CPP( > [#include <stdio.h> > #undef PACKAGE > #undef VERSION > #include <ImfRgbaFile.h>], > gif_ok=3Dyes, > gif_ok=3Dno) > AC_MSG_RESULT($gif_ok) > if test "$exr_ok" =3D yes; then > EXRLIBS=3D$exr_libs > else > AC_MSG_WARN(*** Native EXR support will not be built (EXR header=20 > file not found) ***) > fi > fi > fi >=20 > AM_CONDITIONAL(EXR_LOADER, test "$exr_ok" =3D yes) > AC_SUBST(EXRLIBS) >=20 > to configure.ac, various other gubbins to loaders, Makefile.am ran hmmmm - yeah. the build system there is not very modular. it is possible = to ship a loader built by itself (imlib2_loaders tree for example). thats more "m= odular" i guess. > % automake --foreign --add-missing --copy > % autoconf > % ./configure >=20 > and ... got squat. >=20 > Am I just being a 'tard? i'd have to see in more detail myself. my suggestion is make a build tree= of its own. copy the imlib2_loaders tree from E cvs (checkout the e17/libs/imlib= 2 and e17/libs/imlib2_loaders modules) and just strip out everything form it ex= cept 1 loader and then replace it with yours... but again - for film... 8 bits per channel is not considered adeuqate as = far as i understand it. > Simon >=20 >=20 > ------------------------------------------------------- > This SF.net email is sponsored by: IBM Linux Tutorials. > Become an expert in LINUX or just sharpen your skills. Sign up for IBM= 's > Free Linux Tutorials. Learn everything from the bash shell to sys admi= n. > Click now! http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick > _______________________________________________ > enlightenment-devel mailing list > enl...@li... > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel --=20 ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) ra...@ra... =E7=86=8A=E8=80=B3 - =E8=BB=8A=E5=90=9B (=E6=95=B0=E7=94=B0) = ra...@de... Tokyo, Japan (=E6=9D=B1=E4=BA=AC =E6=97=A5=E6=9C=AC) |
From: Simon W. <si...@th...> - 2004-01-07 10:03:54
|
On Wed, Jan 07, 2004 at 09:30:10AM +0900, Carsten Haitzler said: > hmmmm - yeah. the build system there is not very modular. it is possible to ship > a loader built by itself (imlib2_loaders tree for example). thats more "modular" > i guess. Ah, ok. Will go and hunt around. > but again - for film... 8 bits per channel is not considered adeuqate as far as > i understand it. This is mostly just for producing rushes and other similar things so a drop to 8bits per channel isn't too bad - I just need to read the input files which are exported by stuff like Shake. It did get me to wondering how hard it would be to make Imlib2 32bits per channel again - presumable not as simple as just redefining some types. Thanks, I'll try and stop bothering you now :) Simon |
From: Simon W. <si...@th...> - 2004-01-08 15:17:52
|
On Wed, Jan 07, 2004 at 09:30:10AM +0900, Carsten Haitzler said: > aaah yeah. sorry - forgot about this - no - don't know about any other loaders > other than what's in E cvs (in the imlib2 src tree and the imlib2_loaders src > tree for externally built/shipped loaders). Right ... I knocked up this http://www.thegestalt.org/simon/exr/loader_exr.cpp yesterday. And I don't think it's even being loaded by Imlib2. Presumably because I needed to use C++ because that's what the OpenEXR library is in :( Any tips? Download the whole caboodle from http://www.thegestalt.org/simon/exr/imlib2_exr_loader-0.01.tar.gz Simon |
From: Simon W. <si...@th...> - 2004-01-08 15:48:49
|
On Thu, Jan 08, 2004 at 03:17:40PM +0000, Simon Wistow said: > On Wed, Jan 07, 2004 at 09:30:10AM +0900, Carsten Haitzler said: > > aaah yeah. sorry - forgot about this - no - don't know about any other loaders > > other than what's in E cvs (in the imlib2 src tree and the imlib2_loaders src > > tree for externally built/shipped loaders). > > Right ... I knocked up this > > http://www.thegestalt.org/simon/exr/loader_exr.cpp Hmm. Just realised that I need to whack a few extern "C" { }; round the functions which at least makes the symbols appear in nm but still no joy. |
From: Carsten H. (T. R. <ra...@ra...> - 2004-01-09 05:54:38
|
On Thu, 8 Jan 2004 15:48:43 +0000 Simon Wistow <si...@th...> babbled: > On Thu, Jan 08, 2004 at 03:17:40PM +0000, Simon Wistow said: > > On Wed, Jan 07, 2004 at 09:30:10AM +0900, Carsten Haitzler said: > > > aaah yeah. sorry - forgot about this - no - don't know about any other > > > loaders other than what's in E cvs (in the imlib2 src tree and the > > > imlib2_loaders src tree for externally built/shipped loaders). > > > > Right ... I knocked up this > > > > http://www.thegestalt.org/simon/exr/loader_exr.cpp > > Hmm. Just realised that I need to whack a few > > extern "C" { }; > > round the functions which at least makes the symbols appear in nm but > still no joy. yes! :) heheheheh -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) ra...@ra... 熊耳 - 車君 (数田) ra...@de... Tokyo, Japan (東京 日本) |
From: Carsten H. (T. R. <ra...@ra...> - 2004-01-09 05:54:38
|
On Thu, 8 Jan 2004 15:17:40 +0000 Simon Wistow <si...@th...> babbled: > On Wed, Jan 07, 2004 at 09:30:10AM +0900, Carsten Haitzler said: > > aaah yeah. sorry - forgot about this - no - don't know about any other > > loaders other than what's in E cvs (in the imlib2 src tree and the > > imlib2_loaders src tree for externally built/shipped loaders). > > Right ... I knocked up this > > http://www.thegestalt.org/simon/exr/loader_exr.cpp > > yesterday. And I don't think it's even being loaded by Imlib2. > Presumably because I needed to use C++ because that's what the OpenEXR > library is in :( put the imlib2 functions in an extern "C" {} section so imlib2 can load the loader and find the symbols - then form there u can call out to anything else in the C++ code. > Any tips? > > Download the whole caboodle from > http://www.thegestalt.org/simon/exr/imlib2_exr_loader-0.01.tar.gz > > Simon -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) ra...@ra... 熊耳 - 車君 (数田) ra...@de... Tokyo, Japan (東京 日本) |
From: Simon W. <si...@th...> - 2004-01-09 12:10:42
|
On Fri, Jan 09, 2004 at 02:53:22PM +0900, Carsten Haitzler said: > > round the functions which at least makes the symbols appear in nm but > > still no joy. > > yes! :) heheheheh Curiouser and curouser - I've tracked the failure down to __imlib_ProduceLoader and in particular l->handle = lt_dlopenext(file); in that l->handle isn't set. lt_dlerror reports 'file not found' which is just weird. From a quick search around I think this is mostly because the error reporting is cack rather than it really not being found. Oh, christ. I am 8so* stupid. I was failing to link in the OpenEXR libs properly. As the ever eloquent Mark Jason Dominus once said "You can't just make shit up and expect the computer to know what you mean, Retardo!" Ok, now it's loading the loader. It's just not laoding the image. But that's my problem. Apologies for continually bothering y'all with this. It's pissing *me* off and I have a vested interest. Lord knows what it's doing to you. |
From: Simon W. <si...@th...> - 2004-01-09 18:41:21
|
On Fri, Jan 09, 2004 at 12:10:38PM +0000, Simon Wistow said: > Ok, now it's loading the loader. It's just not laoding the image. But > that's my problem. Et voila. In between bouts of Maya wrangling ... it's all done. http://www.thegestalt.org/simon/exr/imlib2_exr_loader-0.1.tar.gz I'll try and get the company to Open Source this next week. It's pretty nifty and copes with mixed type channels although it's quite naive and I've got a feeling that the loop to translate the buffer could be refactored - there seems to be entirely too much duplicate code so I'll have a look at that next week and also try and knock up a Cineon loader which should hopefully be much easier. A bit of automake question though - I want some juju that, unless a --prefix has been passed into configure uses the output of imlib2-config --prefix but I can't seem to figure it out. Any ideas? Thanks for all the help, Simon |
From: Mike F. <va...@ge...> - 2004-01-09 20:54:52
|
On Friday 09 January 2004 13:41, Simon Wistow wrote: > I'll try and get the company to Open Source this next week. sexified > A bit of automake question though - I want some juju that, unless a > --prefix has been passed into configure uses the output of perhaps the configure.in from many of the EFL libs could help ... in the evas one for example, there are tests to setup bindir based on whether --prefix or --exec-prefix was used -mike |