kopia lustrzana https://gitlab.com/sane-project/backends
396 wiersze
17 KiB
Plaintext
396 wiersze
17 KiB
Plaintext
TODO (2001-05-11)
|
|
|
|
******** todo ********
|
|
|
|
backends
|
|
--------
|
|
* Configuration problems:
|
|
- add options "--exec-prefix=...." and "--prefix=..." compareable
|
|
to gtk-config
|
|
|
|
- add warning when prefix dir is not listed in /etc/ld.so.conf on
|
|
linux systems may be there is a general way to test this if the
|
|
destination library directory is in the search path of the
|
|
linker. [The correct fix is to use -R (on Solaris) and -rpath
|
|
(on the rest?) to include the dynamic link path in the binaries
|
|
/ libraries. pere 2001-02-09]
|
|
|
|
* Add new backends (?)
|
|
- Polaroid SprintScan 35 LE [should be included into microtek]
|
|
Dick Bruijn <dick@wau.mis.ah.nl>
|
|
- primax http://primax.sourceforge.net/
|
|
- hp4200 http://hp4200-backend.sourceforge.net/
|
|
- v4l2 http://video.inodes.org/sane-v4l2/
|
|
- Relisys Scorpio Super 3 SCSI II
|
|
Mark Plowman <mplowman@wxs.nl>
|
|
- Linux Handscanner Ioctl Interface scanner by Harald
|
|
Bauer <bauer-h@web.de>
|
|
Update email in lhii.desc and/or add backend.
|
|
- viceo (Visioneer OneTouch 8600)
|
|
http://www.abaforum.es/martim/bird/otlinux.htm
|
|
- Mustek 1200 UB backend
|
|
ftp://ftp.mustek.com.tw/pub/driver/1200UB/Linux/
|
|
- bearpaw (Mustek BearPaw 1200 + maybe 2400)
|
|
Henning Meier-Geinitz <hmg@gmx.de>
|
|
- Genius Vivid Pro USB, Colorado USB 19200, Visioneer OneTouch 7600
|
|
IBM IdeaScan 2000 USB
|
|
http://homepages.paradise.net.nz/stevenel/scanner/
|
|
- Fujitsu M3091DCd support
|
|
Frederik Ramm <frederik@remote.org>
|
|
http://www.remote.org/frederik/projects/software/sane/
|
|
- Canon FB620S flatbed scanner and FS2710 film scanner
|
|
ftp://stthd0.pc.uni-koeln.de/pub/canon-1.08.tar.gz
|
|
Ulrich Deiters <ukd@xenon.pc.Uni-Koeln.DE>
|
|
|
|
* Update backends
|
|
- add additions/bug fixes to microtek2 from Karsten Festag
|
|
<karsten.festag@t-online.de> (partially done)
|
|
- include snapscan updates http://sourceforge.net/projects/snapscan
|
|
- Combine all the Fujitsu backends into one single backend
|
|
|
|
* Use DBG(...) instead of fprintf(stderr, ...) or printf
|
|
- microtek
|
|
|
|
* Check net/saned
|
|
- sometimes saned+net freezes right after a scan
|
|
- don't just ignore the byte-order for the image data (needed to
|
|
support depths > 8 bits/channel)
|
|
- Add keep-alive mechanism to avoid timeouts
|
|
|
|
* qcam: implement auto mode for brightness and black-level (don't
|
|
just advertise it!) Actually, implement an auto "backend" instead
|
|
that can be plugged in front of any backend with brightness/contrast
|
|
etc controls
|
|
|
|
* qcam: figure out how/if to support bulb mode
|
|
|
|
* qcam: convert to use sanei_pio functions instead of direct port
|
|
access.
|
|
|
|
* qcam: Check file handling in /tmp.
|
|
|
|
* dc210 and jpeg stuff: move sanei_* functions to sanei/ (if they are
|
|
necessary).
|
|
|
|
* nec: Remove references to sharp backend (grep for "JX").
|
|
|
|
* nec: Check for HAVE_SYS_SHM_H before including sys/shm.h and
|
|
disable shared memory support if necessary.
|
|
|
|
* v4l: Problems (crash) with more than one video card. It looks like
|
|
the two different cards are identified as the same card.
|
|
|
|
* Fix backends where sane_exit() do not release memory allocated by
|
|
sane_get_devices().
|
|
- abaton
|
|
- agfafocus
|
|
- apple
|
|
- artec
|
|
- as6e
|
|
- avision
|
|
- bh
|
|
- canon
|
|
- coolscan
|
|
- dmc
|
|
- epson
|
|
- m3096
|
|
- microtek
|
|
- microtek2 ?
|
|
- nec
|
|
- plustek
|
|
- qcam
|
|
- ricoh
|
|
- s9036
|
|
- sharp
|
|
- sp15c
|
|
- tamarack
|
|
- umax
|
|
- umax_pp
|
|
|
|
- etc?
|
|
|
|
* as6e: change :new status to :alpha, :beta, or :stable.
|
|
|
|
* add a contact address for each backend (in backend.desc).
|
|
|
|
* lines like "if (config_line[len - 1] == '\n')" can cause segfaults and
|
|
should be removed (removing "\n" is already done in sanei_config_read).
|
|
This ist just a fast grep. Check all backends!
|
|
- artec
|
|
- bh
|
|
- epson
|
|
- m3096g
|
|
- microtek2
|
|
- sp15c
|
|
- umax
|
|
|
|
doc
|
|
---
|
|
* Add sane-usb manpage
|
|
|
|
* Documentation for sanei API
|
|
- any ideas for this?
|
|
|
|
frontends
|
|
---------
|
|
* dll: Rewrite to use libtool ltdl library
|
|
|
|
* Add a check in the frontends if the backend delivers more data than
|
|
it announced by sane_get_parameters to avoid segfaults with bad
|
|
backends?
|
|
|
|
[the remaining entries have been moved to the sane-frontends package]
|
|
|
|
sanei
|
|
-----
|
|
|
|
|
|
misc
|
|
----
|
|
* Remove compiler warnings (>300 warnings even in disable-warnings mode,
|
|
>700 with --enable-warnings))
|
|
|
|
* Test SANE on different os/platforms, fix possible compilation problems
|
|
Test methods: scanimage -d pnm:0 --filename=file.pnm -T
|
|
scanimage -d net:localhost:pnm:0 --filename=file.pnm -T
|
|
(start saned by inetd or saned -d before testing)
|
|
xscanimage / gimp with xscanimage plugin (where available)
|
|
All the above with shared and static libraries.
|
|
|
|
* move .desc files for backends that are not included in SANE to
|
|
different directory (e.g. backends and external-backends)?
|
|
|
|
* Maybe add script to deinstall existing sane versions
|
|
- make uninstall
|
|
- install sane-uninstall script. Advantage: uninstall possible
|
|
without sourcecode
|
|
|
|
* Use #include "../include/sane/..." instead of #include <sane...>
|
|
|
|
* Use #include "../include/lalloca.h" instead of #include <lalloca.h>
|
|
|
|
* Check include/sane/config.h.in for unnecessary macros.
|
|
|
|
* Add configure option to enable only the net backend for users without
|
|
local scanners. Install only sane-dll/sane-net (or even only sane-net).
|
|
Maybe something like --network-client-only or --disable-local-devices.
|
|
|
|
* Add USB support for sane-find-scanner.
|
|
|
|
* check memory leaks (checked with purify and mtrace (from glibc)):
|
|
- sanei_wire.c: lots of leaks, e.g. lines 145 + 185
|
|
- sanei_scsi.c: line 1262
|
|
- most backends: sanei_get_devices?
|
|
|
|
* Check AIX/gcc shared lib loading problem: When starting scanimage,
|
|
only dll is loaded.
|
|
Backend libraries can't be loaded:
|
|
[dll] load: dlopen() failed (Symbol resolution failed for
|
|
/tmp/sane-bin/lib/sane/libsane-umax.so.1 because:
|
|
Symbol __eprintf (number 55) is not exported from dependent
|
|
module scanimage.
|
|
This happens in all libraries.
|
|
|
|
* Check Tru64 Unix compilation problems with u_int* types. They are already
|
|
defined in sys/bitypes.h but this file isn't checked with AC_CHECK_TYPE.
|
|
|
|
* Add installation procedure for translations of SANE backend's options.
|
|
|
|
******** done ********
|
|
* Add sane manpage (this is work in progress: Henning Meier-Geinitz
|
|
<henning@meier-geinitz.de>)
|
|
- versioning system?
|
|
- SANE API (maybe summary only?)
|
|
- point to backends and other information?
|
|
* Add backend UMAX 1220P/2000P & HP 320C http://umax1220p.sourceforge.net
|
|
* install all documentation that's available
|
|
* Add a check for installed sane versions.
|
|
- Print a warning when already a sane version is installed
|
|
- If SANE is installed at a different location, ask user to
|
|
remove old installation first
|
|
* epson: backend tries to detect usb scanners by default. This breaks with
|
|
non-epson scanners like the LM9831 bases Mustek Bearpaw 1200. The epson
|
|
backend freezes if such a scanner is plugged in. Try to make the test safe
|
|
or don't test without user interaction.
|
|
* pnm: add more options for testing (e.g. arrays and read-only options)
|
|
* sanei_scsi.c: OS/2: struct param breaks compilation with --enable-warnings.
|
|
(probably fixed by testing for os2.h in configure).
|
|
* Check all manpages for references to find-scanner (->sane-find-scanner).
|
|
* net.c doesn't compile on Irix because socklen_t isn't known
|
|
* Add new backends: bh http://www.martoneconsulting.com/sane-bh.html
|
|
* Add manpage for find-scanner.
|
|
* Should find-scanner be installed?
|
|
* net backend segfaults sometimes when connected to localhost. Enabling
|
|
debug output sometimes prevents segfaults. Cause of the problem:
|
|
Copying SANE_TYPE_STRINGs up to their maximum size in
|
|
SANE_Option_Descriptor (strings may be shorter then size).
|
|
* Compilation of most backends break with OS/2 and gcc because the
|
|
option -ansi doesn't seem to like sigset_t ?
|
|
* Check for shm.h in configure
|
|
* Add a global PATH_MAX macro somewhere (config.h ?) if it's not defined
|
|
by the system.
|
|
* sanei_scsi.c: Add patch from FreeBSD ports (sanei_scsi_find_devices)
|
|
(after 1.0.4).
|
|
* update libtool versioning system
|
|
- in /usr/local/lib/libsane.la "installed=no" is set, isn't
|
|
"installed=yes" the correct entry?
|
|
* plustek-share.h: remove //
|
|
* as6e: Check result of stat for errors to avoid false recognitions of the
|
|
as6edriver.
|
|
* artec: O_SYNC is not Posix. Breaks compilation on FreeBSD and (maybe) OS/2.
|
|
* use strchr() instead of index() in mustek_pp to avoid problems when
|
|
icluding strings.h or string.h.
|
|
* Add test for PTAL to acinclude.m4/configure.in
|
|
* build on Irix fails because of problems with the jpeg library. If this
|
|
is removed in configure, build works. It complains about functions like
|
|
(typename) functionname (). It doesn't like the brackets which result
|
|
from expanding the macros EXTERN(x), METHODDEF(x), and GLOBAL(x) to
|
|
(x). Defining something like EXTERN(x) x seems to work. Same for dc210.c
|
|
Something like --disable-jpeg for configure would be nice.
|
|
* addition to hp backend (support for SCL-based HP OfficeJets)
|
|
http://hpoj.sourceforge.net
|
|
* Libtool:
|
|
- -version-info is used but with the current version number system
|
|
-release should be used. (We should not change the version syntax
|
|
within an existing sane-standard, so we leave this)
|
|
- look for AIX problems (overwriting shared libs with eachother
|
|
because all libs are named libsane.so.1) (solved)
|
|
- look for Irix/cc problems (program searches for libsane.so.2 instead
|
|
of libsane.so.1). (Patch works for existing sane standard)
|
|
* getopt.c and umax.c seem to use gettext? Can cause crash if frontends
|
|
are linked to libintl, too.
|
|
* libdl is used in dll backend but -ldl is not added to LDFLAGS?
|
|
* use strchr() instead of index() in sanei_auth, scanimage, saned
|
|
to avoid problems when icluding strings.h or string.h.
|
|
* Remove frontends (at least xscanimage/xcam) from distribution.
|
|
* build on AIX does only work for static libraries. The shared libraries
|
|
seem to overwrite each other.
|
|
* add sanei_authorize (function for all backends)
|
|
* make authorization_callback work in net-backend and saned. Try to
|
|
avoid plain text passwords?
|
|
* Add as6e http://as6edriver.sourceforge.net/
|
|
* stiff.c: Tiff header not written correctly: "Jaeger, Gerhard"
|
|
<gjaeger@sysgo.de> writes: When writing the TIFF header, you have to
|
|
specify the TAG "BitsPerSample", which tells a reader how many bits each
|
|
sample has. The current version only specifies one value (8 or 16). This
|
|
is wrong, as we have to specify one value for each channel (i.e for a
|
|
24bit RGB pic we must specify 8,8,8, see TIFF6.0 spec, [...]
|
|
* don't install sanei_* headers
|
|
* Add sane-pie (Pacific Image Electronics series of ScanAce SCSI scanners, and
|
|
the Devcom 9636/9630 BlackWidow) http://www.munton.demon.co.uk/sane
|
|
* configure --without-x doesn't work (doesn't matter when frontends
|
|
are removed from package)
|
|
* Create new package for frontends.
|
|
* 0 is white for sane in lineart and halftone, however, 0 is black for
|
|
the other modes. Possible reason: pnm data format. The SANE standard
|
|
doesn't talk about this (added point to SANE standard)
|
|
* add ADF and TA entries to .desc files (not done, probably webpage gets
|
|
too wide)
|
|
* check DBG problems for non gcc compilers:
|
|
- no backend name output
|
|
- only global debug level
|
|
* dll: make it robust against it being listed in the configuration
|
|
file (currently bad things will happen if dll attempts to load itself)
|
|
* scanimage: add information about backend:devicename in the man
|
|
page and scanimage --help.
|
|
* scanimage: check if devicename starts with a / and print a warning
|
|
message
|
|
* scanimage: if no devices are detected print a message
|
|
* use sanei_config_read() instead of fgets()
|
|
* use #include "sane/..." instead of #include <sane/...>
|
|
* Update LEVEL2 file. Ideas:
|
|
* xscanimage: Fix "Gtk-CRITICAL **: file gtkmain.c: line 534 ..." bug
|
|
when no SANE devices found
|
|
+ PREVIEW: maybe there should be an option to limit the preview
|
|
scan to the selected area? YES => this will also make it easier
|
|
to avoid the scan area selection to get confused when the user
|
|
resizes the preview area in a way that changes the aspect ratio;
|
|
in essence we want to allow for the preview-image to be a subregion
|
|
of the preview-window (done in xsane)
|
|
+ xcam: allow disabling of advanced options and tooltips
|
|
+ man page for xcam
|
|
+ scanimage: support depths > 8 bits/channel
|
|
+ upgrade to GTK 1.2 (but stay backwards compatible to 1.0 if possible)
|
|
+ saned: check_host() consider using strncasecmp()
|
|
+ GTK: changing the length unit causes dirty pixels in the unit-labels
|
|
of the "Geometry Group"
|
|
+ preview: image data doesn't get preserved properly when changing
|
|
scan area size (reproducable by changing Mustek Scan source to TA)
|
|
+ preview: when popping up the preview window, the current scan area is
|
|
not visible
|
|
+ qcam: test b&w support (need volunteer!)
|
|
+ hp: convert to use pixel-unit commands only; HP 5P doesn't support
|
|
decipoint commands
|
|
+ mustek: the MFS-06000SP with firmware v3.12 does not seem to need any
|
|
line-distance correction at all!?!
|
|
+ scanimage/xscanimage: when a scanner is busy while probing for devices,
|
|
the device is dropped silently from the list of available devices; this
|
|
is confusing particularly when remote controlling a device; it should
|
|
be possible to distinguish between a device that's busy and one that's
|
|
absent
|
|
+ xscanimage: program crashes when preview window is popped down while
|
|
preview is being acquired!
|
|
+ Mustek backend crashes when invoked via xscanimage through the network
|
|
backend. It does not crash if there are no saved device settings.
|
|
+ gtkglue: support vectors (requires a "graph" widget; see gimp/app/curves.c)
|
|
+ xscan: make scrollbar wider
|
|
+ xscan: at startup or after rebuilding the dialog, the notebook widget
|
|
displays both the standard and advanced options simultaneously
|
|
+ xscan: pnm backend causes crash when hitting "Defaults" button
|
|
+ scan: add three pass scanning support
|
|
+ xscan: double-clicking selection should imply OK
|
|
+ xscan: enabling the gtk_rc_parse() code causes segfault when scanning in
|
|
three-pass mode (pnm backend) => bug in gtkstyle.c (patch submitted)
|
|
+ qcam: implement "christmas light" filter
|
|
+ xscan/qcam: after scanning a preview, the original scan area seems to
|
|
get lost somehow => bug in restoring the scan area settings
|
|
+ qcam: image always comes out black until the blacklevel has been modified;
|
|
why is this? => send dummy black-level after qc_reset()
|
|
+ xscan: provide access option doc strings
|
|
+ xscan: in GIMP mode, RED/GREEN/BLUE frames are not handled properly yet.
|
|
+ preview: bit-depth is currently ignored (makes lineart etc fail)
|
|
+ sanei: allow saving/restoring options on a per-device and per-user basis
|
|
+ xcam: replace ugly top-left/bottom-right corner coordinates with something
|
|
more useful => they're advanced options now
|
|
+ preview: modifying the scan area coordinates should update the selection
|
|
+ preview: should we allow saving the current preview image? => yes
|
|
+ xscan: make it possible to build with gtk alone (i.e., without gimp libs)
|
|
+ xscan: use same scan-logic as preview (select-based, if possible);
|
|
should be able to share most of the code
|
|
+ replace params.first_frame with params.last_frame---i don't know how to
|
|
use the former, the latter would be useful for xcam to implement support
|
|
for individual R/G/B frames
|
|
+ saned: add multi-host capabilities (selection-phase ... how ??).
|
|
+ saned: add authorization
|
|
+ ensure frontend never link sanei_*() functions dynamically
|
|
+ always define unique names in backends and define weak-aliases for
|
|
generic names where elf_alias is available---this should make it
|
|
easy to add "pre-load" support to dll.c (either for faster loading or
|
|
for systems that don't have dl*())
|
|
+ make install: don't overwrite existing configuration files
|
|
+ xcam: let user be able to type in a device string
|
|
+ mustek: make sane_close() hang around until sane_cancel() has finished
|
|
+ net: implement it: socket-based backend [Andy is working on this]
|
|
+ need a camera front end (to allow recording video & audio)
|
|
+ qcam: allow changing all parameters "on-the-fly" (while scanning)
|
|
+ qcam backend: implement sane_set_io_mode() and sane_get_select_fd()
|
|
+ make "scan" print current value of each option
|
|
+ make "scan" apply any options before printing help message
|
|
+ initialize backend debug level through environment variable (e.g.,
|
|
SANE_DEBUG_LEVEL)
|
|
+ allow abbreviating string values and make them case-insensitive (as long
|
|
as they're unique) => see sanei_constrain_value()
|
|
+ add support to "scan" for setting options to "automatic"
|
|
+ update documentation and convert to latex & html
|
|
+ add --width/--height support
|
|
+ update Mustek backend with new notion of inactive options
|
|
+ in verbose multibit mode print min/max graylevel value
|
|
+ Mustek segfaults after ctrl-C => need -Bsymbolic to ensure mustek backend's
|
|
references to sane_foo() get resolved within backend
|
|
+ test parsing of boolean options
|
|
+ --mode Gray causes segfault
|
|
+ change scan to use getopt_long
|
|
+ make Mustek backend work without having to first call get_devices()
|
|
+ implement meta backend
|
|
+ bring pnm backend up to speed
|