[sane-devel] backend Kodak i260 Image depth 48 bits stream. How is coded?
Jose Guadalupe Osuna Chavez
jose.chaves at sat.gob.mx
Sat Aug 30 00:52:57 UTC 2008
Another weird thing about bit depth is as a result of the read_imageheader command I get values of: 2400 width, 2176 length with a total image bytes of 7833600. That doesn't match with an image of 2400 x 2176 x 6 bytes per pixel.
I'm just have watch on inquiry result a label with aFrontCameraYCCOutput:1 and aFrontCameraYRGBOutput:0. YCC is a Kodak image format, isn't?
Later I'll post an URL to a RAW image file scanned (without graphic format header).
Thanks a lot.
Jose Osuna
This is the result of inquiry command:
CMD : Inquiry
ARG : command/00 00 buffer/0x00118ba8 buflen/6 direction/0x1 mode:0
SRB : flags/0x01 cdblen/6
CDB : 12 00 00 00 06 00
MGR : 0x1,SRB_STATUS_SUCCESS
GET : 06 02 02 02 2a 00
STS : srbsts/0x01 hres/0x00000000 pcbActualData/6
Inquiry request (6-byte) succeeded...0
INQ : [9,9,9] = 0 < > < >
CMD : Inquiry
ARG : command/00 00 buffer/0x00118ba8 buflen/47 direction/0x1 mode:0
SRB : flags/0x01 cdblen/6
CDB : 12 00 00 00 2f 00
MGR : 0x1,SRB_STATUS_SUCCESS
GET :
06 02 02 02 2a 00 00 30 4b 4f 44 41 4b 20 20 20
69 32 30 30 20 53 63 61 6e 6e 65 72 20 20 20 20
30 32 30 35 30 35 01 01 01 2c 00 01 80 79 e0
STS : srbsts/0x01 hres/0x00000000 pcbActualData/47
Inquiry request succeeded...0
INQ : [9,9,9] = 0 <KODAK > <i200 Scanner >
DMP : sPeriph_dev_type: 6
DMP : sPeriph_qual: 0
DMP : sDev_type_qual: 2
DMP : sRmb: 0
DMP : sAnsi_ver: 2
DMP : sEcma_ver: 0
DMP : sIso_ver: 0
DMP : sResp_data_form: 2
DMP : sAenc: 0
DMP : sAdd_len: 42
DMP : sSft_rst: 0
DMP : sCmdque: 0
DMP : sLinked: 0
DMP : sSync: 1
DMP : sWbus16: 1
DMP : sWbus32: 0
DMP : sReladr: 0
DMP : sVend_id: <KODAK >
DMP : sProd_id: <i200 Scanner >
DMP : sProd_revis_lev: <0205>
DMP : aBuildNumber: <05>
DMP : aFrontCameraYCCOutput: 1
DMP : aFrontCameraGrayscalet:0
DMP : aFrontCameraColorPatch:0
DMP : aFrontCameraYRGBOutput:0
DMP : aFrontWhiteBackground: 0
DMP : aFrontCameraOutput: 0
DMP : aRearCameraYCCOutput: 1
DMP : aRearCameraGrayscale: 0
DMP : aRearCameraColorPatch: 0
DMP : aRearCameraYRGBOutput: 0
DMP : aRearWhiteBackground: 0
DMP : aRearCameraOutput: 0
DMP : aResolution: 300
DMP : aPlatenType: 0
DMP : aDaughterCardCount: 0
DMP : aRear_side_printer: 0
DMP : aDaughterCardCount: 0
DMP : aMemoryType: 1
DMP : aNullConfiguration: 0
DMP : aScannerType: 0
DMP : aLongDocument: 0
DMP : aContinuousDocument: 0
DMP : aSpecialDocument: 0
DMP : aRearSimplex: 1
DMP : aMaxImageLength: 31200
### MMX processor installed: 1
>>> CDatabase::SetCurrentLong(SCSIADAPTERTARGET)
-----Mensaje original-----
De: m. allan noah [mailto:kitno455 at gmail.com]
Enviado el: Jueves, 28 de Agosto de 2008 05:17 p.m.
Para: Jose Guadalupe Osuna Chavez
CC: sane-devel at lists.alioth.debian.org
Asunto: Re: [sane-devel] backend Kodak i260 Image depth 48 bits stream. How is coded?
On Thu, Aug 28, 2008 at 8:02 PM, Jose Guadalupe Osuna Chavez
<jose.chaves at sat.gob.mx> wrote:
>
> Allan:
>
> I didn't find anything about if multi-stream is supported by the scanner. I don't have a manual or something like that. I'm studying the information generated by kds logs on windows and there aren't any multi-stream options.
you can get lots of info from their website...
http://graphics.kodak.com/docimaging/US/en/Products/Document_Scanners/Departmental/i260_Scanner/index.htm
>
> The CompressionType byte on SetWindow command is set to 0, I think that means uncompressed.
>
> I'd find a couple of bytes with names like scan_method and scan_mode on SetConfig command. Normally with values of 01 and 02, I'll change it to another else, and will check what could happen.
>
> Curiously on Windows don't care what the image settings are; always scan to 48 bpp and might be converting the image to target afterwards.
their site mentions something about 40bit color, they could be padding to 48?
allan
>
>
>
> Thank you for you help, I'll post any result..
>
>
>
> Jose Osuna
>
>
> P.S. This is the SetConfig settings on windows and I did emulate on Linux.
>
> wr_cwirebase 2334 183 S5 CDB : 28 00 80 00 SC 00 00 59 00
> wr_cwirescsiscan 874 31 S5 MGR : 0x1,SRB_STATUS_SUCCESS
> wr_cwirebase 2503 183 S5 GET :
>
> 00 00 00 59 01 02 08 00 00 00 00 00 01 33 00 00
> 00 00 00 00 01 00 00 00 00 00 09 00 00 00 00 00
> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 00 00 00 00 00 00 00 00 00
>
> wr_cwirebase 2532 183 S5 STS : srbsts/0x01 hres/0x00000000 pcbActualData/89
> kdsprot 10564 183 S5 DMP : sizeof_AlienConfig: 89
> kdsprot 10565 183 S5 DMP : scan_method: 1
> kdsprot 10566 183 S5 DMP : continuous_doc_mode: 0
> kdsprot 10567 183 S5 DMP : special_doc_mode: 0
> kdsprot 10568 183 S5 DMP : scan_mode: 2
> kdsprot 10569 183 S5 DMP : transport_timeout: 8
> kdsprot 10570 183 S5 DMP : ultrasonic_detection_mode: 0
> kdsprot 10571 183 S5 DMP : length_detection_length: 0
> kdsprot 10572 183 S5 DMP : multipage_response: 0
> kdsprot 10573 183 S5 DMP : page_on_demand_count: 1
> kdsprot 10574 183 S5 DMP : platen_color_table_id: 3
> kdsprot 10575 183 S5 DMP : platen_window_zone_id: 3
> kdsprot 10576 183 S5 DMP : dp1_position: 0
> kdsprot 10577 183 S5 DMP : dp1_font: 0
> kdsprot 10578 183 S5 DMP : dp1_orientation: 0
> kdsprot 10579 183 S5 DMP : dp1_date_delimiter: 1
> kdsprot 10580 183 S5 DMP : dp1_count: 0
> kdsprot 10581 183 S5 DMP : dp1_count_format: 0
> kdsprot 10582 183 S5 DMP : dp1_count_width: 9
> kdsprot 10585 183 S5 DMP : dp1_message1: <>
> kdsprot 10588 183 S5 DMP : dp1_writesequence: <>
> kdsprot 10589 183 S5 DMP : patch_type: 0
> kdsprot 10590 183 S5 DMP : rear_output_switch: 0
> kdsprot 10591 183 S5 DMP : front_output_switch: 0
> kdsprot 6836 183 S5 >>> CDev::DeviceImageOrder(0)
>
>
> -----Mensaje original-----
> De: m. allan noah [mailto:kitno455 at gmail.com]
> Enviado el: Jueves, 28 de Agosto de 2008 01:14 p.m.
> Para: Jose Guadalupe Osuna Chavez
> CC: sane-devel at lists.alioth.debian.org
> Asunto: Re: [sane-devel] backend Kodak i260 Image depth 48 bits stream. How is coded?
>
> two options- 1. does the scanner have multi-stream support? if so, it
> might be scanning in duplex with all 4 heads at the same time.
>
> 2. i have a backend for the i1860 in development. it sets weird values
> in the bit depth field- depending on if it is in compression mode or
> not.
>
> allan
>
> 2008/8/28 Jose Guadalupe Osuna Chavez <jose.chaves at sat.gob.mx>:
>> Hi:
>>
>>
>>
>> I'm making a backend for a i260 kodak scanner on Linux, but now I'm
>> stuck trying to decode the image's stream.
>>
>>
>>
>> As a result of analyzing the driver's log on window, all appears to show
>> that the scanner only works with depth of 48 bits per pixel. Every time that
>> I'd send a SetWindow command with another pixel depth, an error occurs.
>>
>>
>>
>> The SetWindow command on window's log is the next:
>>
>>
>>
>> 01904 104543281 kdsprot 7703 183 S5 CMD : SetWindow
>>
>> 01905 104543281 kdsprot 7711 183 S5 DMP :
>> aWindowDescLength: 0
>>
>> 01906 104543281 kdsprot 7712 183 S5 DMP :
>> aWindowDataLength: 46
>>
>> 01907 104543281 kdsprot 7713 183 S5 DMP :
>> aWindowId: 3
>>
>> 01908 104543281 kdsprot 7714 183 S5 DMP :
>> aX_resolution: 200
>>
>> 01909 104543281 kdsprot 7715 183 S5 DMP :
>> aY_resolution: 200
>>
>> 01910 104543281 kdsprot 7716 183 S5 DMP :
>> aUpperLeft_X: 0
>>
>> 01911 104543281 kdsprot 7717 183 S5 DMP :
>> aUpperLeft_Y: 0
>>
>> 01912 104543281 kdsprot 7718 183 S5 DMP :
>> aWidth: 14400
>>
>> 01913 104543281 kdsprot 7719 183 S5 DMP :
>> aLength: 20400
>>
>> 01914 104543281 kdsprot 7720 183 S5 DMP :
>> aBrightness: 0
>>
>> 01915 104543281 kdsprot 7721 183 S5 DMP :
>> aThreshold: 0
>>
>> 01916 104543281 kdsprot 7722 183 S5 DMP :
>> aContrast: 0
>>
>> 01917 104543281 kdsprot 7723 183 S5 DMP :
>> aImageComposition: 5
>>
>> 01918 104543281 kdsprot 7724 183 S5 DMP :
>> aBitsPerPixel: 48
>>
>> 01919 104543281 kdsprot 7725 183 S5 DMP :
>> aHalftonePattern: 0
>>
>> 01920 104543281 kdsprot 7726 183 S5 DMP :
>> aPaddingType: 0
>>
>> 01921 104543281 kdsprot 7727 183 S5 DMP :
>> aRif: 0
>>
>> 01922 104543281 kdsprot 7728 183 S5 DMP :
>> aBitOrdering: 1
>>
>> 01923 104543281 kdsprot 7729 183 S5 DMP :
>> aCompressionType: 0
>>
>> 01924 104543281 kdsprot 7730 183 S5 DMP :
>> aCompressionArgument: 0
>>
>> 01925 104543281 kdsprot 7731 183 S5 DMP :
>> aImageOverscan: 0
>>
>> 01926 104543281 kdsprot 7732 183 S5 DMP :
>> aColorDropoutColor: 0
>>
>> 01927 104543281 kdsprot 7733 183 S5 DMP :
>> aColorDropoutBackground: 245
>>
>> 01928 104543281 kdsprot 7734 183 S5 DMP :
>> aColorDropoutThreshold: 175
>>
>> 01929 104543281 kdsprot 7735 183 S5 DMP :
>> aImageMagnificationFactor: 10
>>
>> 01930 104543281 kdsprot 1108 183 S5 >>>
>> KDSPROT::Escape(0x2a24,10891898,54,0)
>>
>> 01931 104543281 wr_cwirebase 2307 183 S5 ARG : command/2a 24
>> buffer/0x10891898 buflen/54 direction/0x0 mode:1
>>
>> 01932 104543281 wr_cwirebase 2314 183 S5 SRB : flags/0x00
>> cdblen/10
>>
>>
>>
>> 01933 104543281 wr_cwirebase 2374 183 S5 CDB : 24 00 00 00 00
>> 00 00 00 36 00
>>
>>
>>
>> 01934 104543281 wr_cwirebase 2437 183 S5 PUT :
>>
>> 00 00 00 00 00 00 00 2e 03 00 00 c8 00 c8 00 00
>>
>> 00 00 00 00 00 00 00 00 38 40 00 00 4f b0 00 00
>>
>> 00 05 30 00 00 00 00 01 00 00 00 00 00 00 00 00
>>
>> 00 00 00 f5 af 0a
>>
>>
>>
>>
>>
>> The scanner works fine, but after the ReadImage command I don't
>> understand the data stream of 48 bits. I'll like to convert this image to 8
>> bits grayscale and Bitonal after.
>>
>>
>>
>> Does anybody have any information about this image stream? Thank you
>>
>>
>>
>> The stream show two bytes with 80 80 every four, just like this on
>> linux.
>>
>>
>>
>> [kodak] sane_read: start
>>
>> [kodak] read_from_scanner: start
>>
>> [kodak] read_from_scanner: to:7920000 rx:0 re:7920000 bu:32766 pa:32766
>>
>> [kodak] do_cmd: start
>>
>> [kodak] cmd: writing 10 bytes
>>
>> [kodak] cmd: >>
>>
>> [kodak] 000: 28 00 00 00 00 00 00 7f fe 00 /* ReadImage
>> command */
>>
>> [kodak] in: reading 32766 bytes
>>
>> [kodak] in: <<
>>
>> [kodak] 000: 09 09 80 80 0b 0a 80 80 07 07 80 80 08 09 80 80 /* Image
>> stream */
>>
>> [kodak] 010: 09 09 80 80 0a 0b 80 80 0a 09 80 80 09 09 80 80
>>
>> [kodak] 020: 0b 0a 80 80 08 09 80 80 0b 0c 80 80 0a 09 80 80
>>
>> [kodak] 030: 0b 0a 80 80 09 0a 80 80 0b 0b 80 80 0b 09 80 80
>>
>> [kodak] 040: 08 07 80 80 08 0a 80 80 0c 0b 80 80 09 08 80 80
>>
>> [kodak] 050: 08 07 80 80 0a 0b 80 80 0b 0b 80 80 09 09 80 80
>>
>> [kodak] 060: 0b 0a 80 80 09 08 80 80 09 09 80 80 0a 0b 80 80
>>
>> ......
>>
>>
>>
>> Jose Osuna
>>
>> Coordinación Técnica
>>
>> CRDC Cd. Obregon
>>
>> Vangent de Mexico, S.A. de C.V.
>>
>>
>>
>> --
>> sane-devel mailing list: sane-devel at lists.alioth.debian.org
>> http://lists.alioth.debian.org/mailman/listinfo/sane-devel
>> Unsubscribe: Send mail with subject "unsubscribe your_password"
>> to sane-devel-request at lists.alioth.debian.org
>>
>
>
>
> --
> "The truth is an offense, but not a sin"
>
>
--
"The truth is an offense, but not a sin"
More information about the sane-devel
mailing list