Wykres commitów

10 Commity (master)

Autor SHA1 Wiadomość Data
Artur Shepilko 86bb976ad6 xerox_mfp: When scanning from ADF, do not stop the device at page completion
- Stopping and releasing the device causes the ADF to purge any remaining pages,
thus only the first page gets properly scanned (observed with Samsung
SCX-4729FW).
- Instead, when sourcing from the ADF, at each page's completion it should
continue and issue "OBJECT POSITION" command to proceed to the next page.
- Once all pages have been processed, the subsequent "OBJECT POSITION" command
returns the proper "CHECK CONDITION" status  (ADF is empty) and triggers the
device stop and release.
- Additionally, the status of the ADF (loaded/empty) needs to be requeried
at the `sane_start()` for proper handling of the "Auto" mode. Otherwise,
the scanning session retains the ADF state from the start of the session,
even though ADF will become empty. Thus the "Auto" mode will not properly
switch to Flatbed as intended in the client application (observed in
Simple-Scan).

> NOTE: the initial "READ" command in `sane_start()` is extraneous and
> appears to always return STATUS_BUSY (indeed, the scanner is usually
> busy loading the page). The actual READ is correctly done in
> `dev_acquire()`. It may appear benign in a single page scan mode, however,
> it becomes malfunctioning in the mutipage ADF mode. The initial READ,
> when successful, will cause the skipping of the read block from processing,
> as the actual processing is tied to content read from `dev_acquire()`.
>
> Therefore, the initial READ command in the `sane_start()` is removed.
2024-01-25 17:20:03 -06:00
Andrew Sayers a336f5ed2f xerox_mfp: make JPEG compression user-configurable
JPEG compression improves scan time, and some scanners require it
for high DPI values.  But it loses some data, and we already support
toggling it at compile-time.

Add an advanced option so users can decide at scan-time.
2021-12-30 20:34:05 +02:00
Alex Belkin 7e7f02773e xerox_mfp: Fix crash in test mode
Do not decode JPEG into output buffer if it's NULL.
Also, I add assert() for `dev->decData` size, which is never
checked anywhere. Thanks to Michal Nowak for report and
testing. Fixes #128.

References:
  https://gitlab.com/sane-project/backends/issues/128

Tested-by: Michal Nowak <Mno-hime@gitlab>
2019-11-15 23:04:43 +03:00
Alex Belkin 226c2b9deb Update header and copyright statements for xerox_mfp. 2016-11-06 21:50:06 +03:00
Alex Belkin 83bbcfe7d5 Run indent: astyle -A8 -U -H -k3 -W3 -o xerox_mfp.[ch]
This is purely indent commit w/o any code changes.
To prove run `git diff -w`.
2016-11-06 20:24:02 +03:00
Alex Belkin 926bfade54 Color scanning for Samsung models, which support JPEG Lossy compression.
Patch is submitted by Laxmeesh Onkar Markod <m.laxmeesh@samsung.com>

Patch to code is applied almost verbatim, except, insignificant
formatting fixes and making new functions static.

Also, new USB ids added and scanner support is changed as reported.
2016-05-07 22:33:03 +03:00
Alex Belkin 842c98d204 Added Samsung SCX-4500W scan over network support for xerox_mfp backend (by Alexander Kuznetsov).
autoconf and automake reconfigure.
2010-09-30 15:11:56 +04:00
Alessandro Zummo b39c12dd7b Define MM_PER_INCH once for all 2009-06-18 15:54:49 +02:00
Alex Belkin 133d37e4e4 Proper handling of parameters (to fix xsane crash) 2009-02-02 18:29:08 +00:00
Alex Belkin 61f85eeea7 xerox_mfp backend base files 2008-12-15 18:31:55 +00:00