Re: TODO list

From: kwlee (kwlee88@tpts5.seed.net.tw)
Date: Sun Oct 29 2000 - 17:55:13 PST

  • Next message: Herdegen: "Re: TODO list"

     Hi,

    >
    > this is the current version of the TODO list. Please check and comment.
    >
    Any chance to add new functions here for next release like
    Warmup time, H/W jpeg scanning & S/W decoding...

    Best Regards,
    kw

    > Bye,
    > Henning
    >
    > TODO (2000-10-29)
    >
    > ******** 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>
    > - sane-pie (Pacific Image Electronics series of ScanAce SCSI
    > scanners, and the Devcom 9636/9630 BlackWidow)
    > http://www.munton.demon.co.uk/sane
    >
    > * use DBG(...) instead of fprintf(stderr, ...)
    > - microtek
    > - microtek2
    >
    > * 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)
    >
    > * 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
    >
    > * 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. At
    > least the frontend shouldn't crash or produce invalid pnm files when
    > it gets a length of -1.
    >
    > * 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: Rewrite to use libtool ltdl library
    >
    > * For 3-pass scanners, xscanimage doesn't update the scan progress
    > bar properly between scans; the scanner seems to be faster than
    > xscanimage can write to disk (problem: seek for every byte). This
    > doesn't happen as GIMP-plugin. It doesn't happen in blocking mode
    > either.
    >
    > * 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?
    >
    > * Adapt xscanimage to new GIMP API. Try to make it backwards compatible
    > with old GIMP versions if possible.
    >
    > 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 .
    >
    > * 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 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
    >
    > ******** done ********
    >
    > * 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
    >
    > --
    > Source code, list archive, and docs: http://www.mostang.com/sane/
    > To unsubscribe: echo unsubscribe sane-devel | mail majordomo@mostang.com

    --
    Source code, list archive, and docs: http://www.mostang.com/sane/
    To unsubscribe: echo unsubscribe sane-devel | mail majordomo@mostang.com
    



    This archive was generated by hypermail 2b29 : Sun Oct 29 2000 - 17:54:54 PST