sane-project-website/old-archive/2000-09/0146.html

314 wiersze
15 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
"http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>
<TITLE>sane-devel: TODO list</TITLE>
<META NAME="Author" CONTENT="Henning Meier-Geinitz (hmg-ml@gmx.de)">
<META NAME="Subject" CONTENT="TODO list">
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>TODO list</H1>
<!-- received="Sat Sep 16 11:05:33 2000" -->
<!-- isoreceived="20000916180533" -->
<!-- sent="Sat, 16 Sep 2000 20:14:10 +0200" -->
<!-- isosent="20000916181410" -->
<!-- name="Henning Meier-Geinitz" -->
<!-- email="hmg-ml@gmx.de" -->
<!-- subject="TODO list" -->
<!-- id="20000916201410.A26192@hmg1.vortex.swb.de" -->
<STRONG>From:</STRONG> Henning Meier-Geinitz (<A HREF="mailto:hmg-ml@gmx.de?Subject=Re:%20TODO%20list&In-Reply-To=&lt;20000916201410.A26192@hmg1.vortex.swb.de&gt;"><EM>hmg-ml@gmx.de</EM></A>)<BR>
<STRONG>Date:</STRONG> Sat Sep 16 2000 - 11:14:10 PDT
<P>
<!-- next="start" -->
<LI><STRONG>Next message:</STRONG> <A HREF="0147.html">Ingo Wilken: "Re: SANE on Linux/x86 with SCSI ISA card"</A>
<UL>
<LI><STRONG>Previous message:</STRONG> <A HREF="0145.html">Henning Meier-Geinitz: "Re: scanimage always connects to /dev/video"</A>
<!-- nextthread="start" -->
<LI><STRONG>Next in thread:</STRONG> <A HREF="0154.html">Jochen Eisinger: "authorization support (TODO list)"</A>
<LI><STRONG>Reply:</STRONG> <A HREF="0154.html">Jochen Eisinger: "authorization support (TODO list)"</A>
<!-- reply="end" -->
<LI><STRONG>Messages sorted by:</STRONG>
<A HREF="date.html#146">[ date ]</A>
<A HREF="index.html#146">[ thread ]</A>
<A HREF="subject.html#146">[ subject ]</A>
<A HREF="author.html#146">[ author ]</A>
</UL>
<HR NOSHADE><P>
<!-- body="start" -->
<P>
Hi,
<BR>
<P>this is an update of the TODO-list from CVS.
<BR>
<P>TODO (2000-09-16)
<BR>
<P>******** todo ********
<BR>
<P>backends
<BR>
--------
<BR>
&nbsp;&nbsp;* add new backends (?)
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;- as6e <A HREF="http://as6edriver.sourceforge.net/">http://as6edriver.sourceforge.net/</A>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;- bh <A HREF="http://www.martoneconsulting.com/sane-bh.html">http://www.martoneconsulting.com/sane-bh.html</A>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;- Polaroid SprintScan 35 LE [should be included into microtek]
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dick Bruijn &lt;<A HREF="mailto:dick@wau.mis.ah.nl?Subject=Re:%20TODO%20list&In-Reply-To=&lt;20000916201410.A26192@hmg1.vortex.swb.de&gt;">dick@wau.mis.ah.nl</A>&gt;
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;- primax <A HREF="http://primax.sourceforge.net/">http://primax.sourceforge.net/</A>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;- hp4200 <A HREF="http://hp4200-backend.sourceforge.net/">http://hp4200-backend.sourceforge.net/</A>
<BR>
<P>&nbsp;&nbsp;* use DBG(...) instead of fprintf(stderr, ...)
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- microtek
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- microtek2
<BR>
<P>&nbsp;&nbsp;* use sanei_config_read() instead of fgets()
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- umax (will be fixed with the next backend release)
<BR>
<P>&nbsp;&nbsp;* use #include &quot;sane/...&quot; instead of #include &lt;sane/...&gt;
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;- umax (see above)
<BR>
<P>&nbsp;&nbsp;* check #include &lt;lalloca.h&gt; (is this a global system header
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;on any platform? Otherwise --&gt; &quot;lalloca.h&quot;)
<BR>
<P>&nbsp;&nbsp;* make authorization_callback work in net-backend and saned
<BR>
<P>&nbsp;&nbsp;* check net/saned
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;- net backend segfaults if saned isn't started
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;- don't just ignore the byte-order for the image data (needed to
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;support depths &gt; 8 bits/channel)
<BR>
<P>&nbsp;&nbsp;* mustek: for 3-pass scanners, it is said that xscanimage doesn't update
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;the scan progress bar properly between scans; it is said to stop at
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;90%, start the next pass, and once the next pass has started, it moves
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;on to 100% and the progress bar disappears at that point
<BR>
<P>&nbsp;&nbsp;* qcam: implement auto mode for brightness and black-level (don't
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;just advertise it!) Actually, implement an auto &quot;backend&quot; instead
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;that can be plugged in front of any backend with brightness/contrast
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;etc controls
<BR>
&nbsp;
<BR>
&nbsp;&nbsp;* qcam: figure out how/if to support bulb mode
<BR>
<P>doc
<BR>
<PRE>
---
* add sane manpage
- versioning system
- SANE API
<P> * add sane-usb manpage
<P> * Documentation for sanei API
- any ideas for this?
<P>frontends
---------
* Remove frontends (at least xscanimage/xcam) from distribution. Create
new package for frontends.
<P> * add new frondends (possibly to frontend package) (?)
- xsane
- scanadf
<P> * use #include &quot;sane/...&quot; instead of #include &lt;sane/...&gt;
- umax
<P> * add possibility to use external filters to xscanimage/xsane (?)
<P> * xscanimage/xcam: support depths &gt; 8 bits/channel
<P> * xscanimage: provide both scale and textentry for ranges (make new widget)
<P> * xcam: provide access to option doc strings
<P> * xscanimage: scanning of images whose heights is not known a priori is not
supported yet; this is going to be important for handheld scanners
<P> * xcam: add dithering and support for SANE depths other than 8 bit (test
with Mustek backend, for example)
<P> * xcam: add recording feature (e.g., GIF, JPG, or MPEG)
<P> * dll: make it robust against against it being listed in the configuration
file (currently bad things will happen if dll attempts to load itself)
* xscanimage: Fix &quot;Gtk-CRITICAL **: file gtkmain.c: line 534 ...&quot; bug
when no SANE devices found
<P>sanei
-----
* don't install sanei_* headers (?)
<P> * add sanei_authorize (function for all backends)
<P>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 &quot;bad hack&quot; which should be
reverted .
<P> * check DBG problems for non gcc compilers:
- no backend name output
- only global debug level
<P> * remove compiler warnings (&gt;400 warnings even in disable-warning mode!)
<P> * Update LEVEL2 file. Ideas:
- add support for buttons etc. on the scanner/camera
- Change of the version number system (the current standard version
system is not really used in the SANE distribution).
- add more frame types
- add alpha channel so that RGBI scanners like Nikon LS-20 can
send infra-red info back to gimp for post-processing
- Might be nice if arbitrarily defined multiple channels, were possible.
Some way of indicating the number of channels possible, and some
details (wavelength, bandwidth, ...)
- (see sane-devel archive for more ideas)
<P> * 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.
<P> * move .desc files for backends that are not included in SANE to
different directory (e.g. backends and external-backends)
<P> * add ADF and TA entries to .desc files
<P> * add alpha channel so that RGBI scanners like Nikon LS-20 can
send infra-red info back to gimp for post-processing
<P> * Add a check for installed sane versions.
<P> * Print a warning when already a sane version is installed.
* Maybe add script to detect and deinstall existing sane versions
<P> * 0 is white for sane
<P>******** done ********
<P>+ PREVIEW: maybe there should be an option to limit the preview
scan to the selected area? YES =&gt; 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 &gt; 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 &quot;Geometry Group&quot;
+ 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&amp;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 &quot;graph&quot; 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 &quot;Defaults&quot; 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) =&gt; bug in gtkstyle.c (patch submitted)
+ qcam: implement &quot;christmas light&quot; filter
+ xscan/qcam: after scanning a preview, the original scan area seems to
get lost somehow =&gt; bug in restoring the scan area settings
+ qcam: image always comes out black until the blacklevel has been modified;
why is this? =&gt; 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 =&gt; they're advanced options now
+ preview: modifying the scan area coordinates should update the selection
+ preview: should we allow saving the current preview image? =&gt; 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 &quot;pre-load&quot; 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 &amp; audio)
+ qcam: allow changing all parameters &quot;on-the-fly&quot; (while scanning)
+ qcam backend: implement sane_set_io_mode() and sane_get_select_fd()
+ make &quot;scan&quot; print current value of each option
+ make &quot;scan&quot; 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) =&gt; see sanei_constrain_value()
+ add support to &quot;scan&quot; for setting options to &quot;automatic&quot;
+ update documentation and convert to latex &amp; 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 =&gt; 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
<P>--
Source code, list archive, and docs: <A HREF="http://www.mostang.com/sane/">http://www.mostang.com/sane/</A>
To unsubscribe: echo unsubscribe sane-devel | mail <A HREF="mailto:majordomo@mostang.com?Subject=Re:%20TODO%20list&In-Reply-To=&lt;20000916201410.A26192@hmg1.vortex.swb.de&gt;">majordomo@mostang.com</A>
</PRE>
<P><!-- body="end" -->
<HR NOSHADE>
<UL>
<!-- next="start" -->
<LI><STRONG>Next message:</STRONG> <A HREF="0147.html">Ingo Wilken: "Re: SANE on Linux/x86 with SCSI ISA card"</A>
<LI><STRONG>Previous message:</STRONG> <A HREF="0145.html">Henning Meier-Geinitz: "Re: scanimage always connects to /dev/video"</A>
<!-- nextthread="start" -->
<LI><STRONG>Next in thread:</STRONG> <A HREF="0154.html">Jochen Eisinger: "authorization support (TODO list)"</A>
<LI><STRONG>Reply:</STRONG> <A HREF="0154.html">Jochen Eisinger: "authorization support (TODO list)"</A>
<!-- reply="end" -->
<LI><STRONG>Messages sorted by:</STRONG>
<A HREF="date.html#146">[ date ]</A>
<A HREF="index.html#146">[ thread ]</A>
<A HREF="subject.html#146">[ subject ]</A>
<A HREF="author.html#146">[ author ]</A>
</UL>
<!-- trailer="footer" -->
<HR NOSHADE>
<P>
<SMALL>
<EM>
This archive was generated by <A HREF="http://www.hypermail.org/">hypermail 2b29</A>
: <EM>Sat Sep 16 2000 - 11:06:16 PDT</EM>
</EM>
</SMALL>
</BODY>
</HTML>