Hi, thanks for the response!
Good call on the error check. It's reporting:
err after ImageInput::create() failure was: Unsupported compression type
Not sure what type it is yet, but that's an excellent clue.
Sorry I was unclear on the message, I just found it in the code itself in
the version (1.8.12) I'm upgrading from and thought it might be related,
but it doesn't seem to be.
bool
DDSOutput::open (const std::string &name, const ImageSpec &userspec,
OpenMode mode)
{
error ("DDS writing is not supported yet, please poke Leszek in the "
"mailing list");
return false;
}
-- Alex
On Wed, Nov 16, 2022 at 6:02 PM Larry Gritz <[email protected]> wrote:
> We don't support DDS for output, it's true.
>
> I don't see that error message anywhere in the source code (either at the
> current head, or at v2.3.16.0), so I'm not sure where that's coming from. I
> can believe it was there at some point. Is that a message from the much
> older OIIO version you are converting FROM?
>
> As far as the input, that call should work. What is the value of
> inputFile?
>
> ImageInput::open() returns an open II, but ImageInput::create just creates
> an II capable of being opened for that format -- i.e., it doesn't try to
> open the file. So I'm curious as to what could be broken, unless your OIIO
> is built with support for DDS disabled?
>
> After the failed
>
> OIIO::ImageInput::unique_ptr in = OIIO::ImageInput::create(inputFile);
>
> what happens with this:
>
> if (! in) {
> std::string err = OIIO::geterror();
> std::cout << "err after ImageInput::create(" << inputFile <<
> ") failure was: " << err << "\n";
> }
>
> Is that where you're seeing the message about Leszek? Or do you see a
> different error message?
>
>
> On Nov 16, 2022, at 5:29 PM, Alex Suter <[email protected]> wrote:
>
> Heya,
>
> Judging by the docs this isn't a preferred format, so I apologize.
>
> I'm upgrading some code from an older OIIO to 2.3.16 and the unit test
> that reads in some example dds files is failing as:
>
> OIIO::ImageInput::unique_ptr in = OIIO::ImageInput::create(inputFile);
>
> seems to return a nullptr. Other formats read fine. Looking at the header
> ImageInput::create reports that it will return an empty pointer if the
> required writer was not able to be created which might be what's happening.
>
> ddsoutput code says, "DDS writing is not supported yet, please poke Leszek
> in the mailing list."
>
> I don't actually need DDS writing, but am I doing something wrong in the
> create() call so as to get the nullptr in recent versions of OIIO? Or is
> reading dds through the create interface ddeprecated and there's a better
> way?
>
> Thanks,
> Alex
>
> --
> |o| Alex Suter |o| R&D SF |o|
> _______________________________________________
> Oiio-dev mailing list
> [email protected]
> http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org
>
>
> --
> Larry Gritz
> [email protected]
>
>
>
>
>
> _______________________________________________
> Oiio-dev mailing list
> [email protected]
> http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org
>
--
|o| Alex Suter |o| R&D SF |o|
_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org