Problems making loaders for header-less images
- From: Magnus Bergman <magnusbe algonet se>
- To: GTK+ devel list <gtk-devel-list gnome org>
- Subject: Problems making loaders for header-less images
- Date: Fri, 23 Jun 2006 12:31:05 +0200
I've made a couple of gdk-pixbuf loaders for formats that cannot be
finger printed using a pattern, because they totaly lack some kind of
header or that information is located at the end of the file. This
has causes me the following problems:
* If one loader handles several (similar) formats that cannot be
distinguished from each other by looking at the first bytes. Then
gdk-pixbuf uses other means to distinguish between them (extension or
mime-type) but the information about what the match was based on is
unavailable to loader (or am I missing something). Can this be solved
is some way (except by making a different loader for each variant)?
Example:
There is an image format called pi1 (the most common format on the
Atari ST). It consists of one word telling about the resolution, the
palette and a copy of the screen memory. A variant of the format is
called pc1 and has the only difference that the screen memory image
is compressed. It is easy to distinguish between them using the
extension or by looking at the file size (pi1 has a fixed size of
32066 bytes while pc1 is always smaller).
* If a loader doesn't provide any fingerprinting pattern gdk-pixbuf
causes a segfault at runtime then trying to load a picture in any
format. Is the loader required to provide at least one pattern or is
this a bug?
* If the only thing that is known about the format is that it starts
with one or more zeros, then gdk-pixbuf-query-loaders will refuse to
register the loader because it considers the pattern to be empty.
This could be avoided to checking the length of the mask field
instead to the prefix field. A bug?
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]