sane-project-backends/TODO

241 wiersze
9.9 KiB
Plaintext
Czysty Zwykły widok Historia

TODO (2000-09-17)
******** todo ********
backends
--------
* add new backends (?)
- as6e http://as6edriver.sourceforge.net/
- bh http://www.martoneconsulting.com/sane-bh.html
- 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 by Tyler
Bindon <martica@martica.org>.
- Linux Handscanner Ioctl Interface scanner by Harald
Bauer <hbauer@online.de>
* use DBG(...) instead of fprintf(stderr, ...)
- microtek
- microtek2
* use sanei_config_read() instead of fgets()
- umax (will be fixed with the next backend release)
* use #include "sane/..." instead of #include <sane/...>
- umax (see above)
* check #include <lalloca.h> (is this a global system header
on any platform? Otherwise --> "lalloca.h")
* make authorization_callback work in net-backend and saned
* check net/saned
- net backend segfaults if saned isn't started
- don't just ignore the byte-order for the image data (needed to
support depths > 8 bits/channel)
* mustek: for 3-pass scanners, it is said that xscanimage doesn't update
the scan progress bar properly between scans; it is said to stop at
90%, start the next pass, and once the next pass has started, it moves
on to 100% and the progress bar disappears at that point
* 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.
doc
---
* add sane manpage
- versioning system
- SANE API
* add sane-usb manpage
* Documentation for sanei API
- any ideas for this?
frontends
---------
* Remove frontends (at least xscanimage/xcam) from distribution. Create
new package for frontends.
* add new frondends (possibly to frontend package) (?)
- xsane
- scanadf
* use #include "sane/..." instead of #include <sane/...>
- umax
* add possibility to use external filters to xscanimage/xsane (?)
* xscanimage/xcam: support depths > 8 bits/channel
* xscanimage: provide both scale and textentry for ranges (make new widget)
* xcam: provide access to option doc strings
* xscanimage: scanning of images whose heights is not known a priori is not
supported yet; this is going to be important for handheld scanners
* xcam: add dithering and support for SANE depths other than 8 bit (test
with Mustek backend, for example)
* xcam: add recording feature (e.g., GIF, JPG, or MPEG)
* dll: make it robust against against it being listed in the configuration
file (currently bad things will happen if dll attempts to load itself)
* dll: Rewrite to use libtool ltdl library
sanei
-----
* don't install sanei_* headers (?)
* add sanei_authorize (function for all backends)
misc
----
* update libtool versioning system
- -version-info is used but with the current version number system
-release should be used.
- look for AIX problems (overwriting shared libs with eachother
because all libs are named libsane.so.1)
- look for Irix/cc problems (program searches for libsane.so.2 instead
of libsane.so.1). This was fixed by a "bad hack" which should be
reverted .
* check DBG problems for non gcc compilers:
- no backend name output
- only global debug level
* remove compiler warnings (>400 warnings even in disable-warning mode!)
* 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
(not possible if I'm not root on the system)
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)
* add ADF and TA entries to .desc files
* add alpha channel so that RGBI scanners like Nikon LS-20 can
send infra-red info back to gimp for post-processing
* Add a check for installed sane versions.
* Print a warning when already a sane version is installed.
* Maybe add script to detect and deinstall existing sane versions
* 0 is white for sane
******** done ********
2000-08-12 15:08:47 +00:00
* Update LEVEL2 file. Ideas:
* xscanimage: Fix "Gtk-CRITICAL **: file gtkmain.c: line 534 ..." bug
when no SANE devices found
2000-08-12 15:08:47 +00:00
+ PREVIEW: maybe there should be an option to limit the preview
1999-08-09 18:05:39 +00:00
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
2000-08-12 15:08:47 +00:00
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
1999-08-09 18:05:39 +00:00
+ 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