All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Kaiser <v4l@kaiser-linux.li>
To: kilgota@banach.math.auburn.edu
Cc: Jean-Francois Moine <moinejf@free.fr>,
	Kyle Guinn <elyk03@gmail.com>,
	linux-media@vger.kernel.org
Subject: Re: MR97310A and other image formats
Date: Fri, 20 Feb 2009 20:05:08 +0100	[thread overview]
Message-ID: <499EFEE4.50306@kaiser-linux.li> (raw)
In-Reply-To: <alpine.LNX.2.00.0902201234090.8350@banach.math.auburn.edu>

kilgota@banach.math.auburn.edu wrote:
> 
> 
> On Fri, 20 Feb 2009, Thomas Kaiser wrote:
> 
>> kilgota@banach.math.auburn.edu wrote:
>>>
>>>
>>> On Fri, 20 Feb 2009, Thomas Kaiser wrote:
>>>
>>>> kilgota@banach.math.auburn.edu wrote:
>>>>>
>>>>>
>>>>> On Thu, 19 Feb 2009, Thomas Kaiser wrote:
>>>>>
>>>>>> kilgota@banach.math.auburn.edu wrote:
>>>>>>> Yes, what you quote is the SOF marker for all of these cameras. 
>>>>>>> The total header length, including the SOF marker ought to be 12 
>>>>>>> bytes. On all of the mr97310 cameras that I have dealt with, the 
>>>>>>> last 5 bytes are obviously related somehow to the image 
>>>>>>> (contrast, color balance, gamma, whatever).  I have no idea how 
>>>>>>> to interpret those values, but we can hope
>>>>>>> that someone will figure out how.
>>>>>>
>>>>>> Two of them are luminance values (middle and edge) for the PAC207.
>>>>>
>>>>> Which two, and how do those numbers translate into anything relevant?
>>>>
>>>> Looks like I had some off list (private) email conversation about 
>>>> the frame header of PAC207 with Michel Xhaard. I just paste the 
>>>> whole thing in here:
>>>>
>>>> michel Xhaard wrote:
>>>>> Le Samedi 18 Fe'vrier 2006 12:16, vous avez e'crit :
>>>>>
>>>>>> michel Xhaard wrote:
>>>>>>
>>>>>>> Le Samedi 18 Fe'vrier 2006 10:10, vous avez e'crit :
>>>>>>>
>>>>>>>> Hello Michel
>>>>>>>>
>>>>>>>> michel Xhaard wrote:
>>>>>>>>
>>>>>>>>> Le Mercredi 15 Fe'vrier 2006 12:43, vous avez e'crit :
>>>>>>>>> Just relook the snoop, the header is always 16 bytes long starting 
>>>> with:
>>>>>>>>> ff ff 00 ff 96 64 follow
>>>>>>>>> xx 00 xx xx xx xx  64 xx 00 00
>>>>>>>>> let try to play poker with the asumption the R mean G0 mean B 
>>>>>>>>> mean G1
>>>>>>>>> mean is encoded here.
>>>>>>>>> Not sure about the 64 can you look at your snoop?
>>>>>>>>
>>>>>>>> I never thought about that. So, you see I have not experience with
>>>>>>>> webcams.
>>>>>>>>
>>>>>>>> Anyway, here are my observations about the header:
>>>>>>>> In the snoop, it looks a bit different then yours
>>>>>>>>
>>>>>>>> FF FF 00 FF 96 64 xx 00 xx xx xx xx xx xx 00 00
>>>>>>>> 1. xx: looks like random value
>>>>>>>> 2. xx: changed from 0x03 to 0x0b
>>>>>>>> 3. xx: changed from 0x06 to 0x49
>>>>>>>> 4. xx: changed from 0x07 to 0x55
>>>>>>>> 5. xx: static 0x96
>>>>>>>> 6. xx: static 0x80
>>>>>>>> 7. xx: static 0xa0
>>>>>>>>
>>>>>>>> And I did play in Linux and could identify some fields :-) .
>>>>>>>> In Linux the header looks like this:
>>>>>>>>
>>>>>>>> FF FF 00 FF 96 64 xx 00 xx xx xx xx xx xx F0 00
>>>>>>>> 1. xx: don't know but value is changing between 0x00 to 0x07
>>>>>>>> 2. xx: this is the actual pixel clock
>>>>>>>> 3. xx: this is changing according light conditions from 0x03 
>>>>>>>> (dark) to
>>>>>>>> 0xfc (bright)
>>>>>>>> 4. xx: this is changing according light conditions from 0x03 
>>>>>>>> (dark) to
>>>>>>>> 0xfc (bright)
>>>>>>>> 5. xx: set value "Digital Gain of Red"
>>>>>>>> 6. xx: set value "Digital Gain of Green"
>>>>>>>> 7. xx: set value "Digital Gain of Blue"
>>>>>>>>
>>>>>>>> Regards, Thomas
>>>>>>>
>>>>>>> Thomas,
>>>>>>> Cool good works :) so 3 and 4 are good candidate . To get good 
>>>>>>> picture
>>>>>>> result there are 2 windows where the chips measure the ligth 
>>>>>>> condition.
>>>>>>> Generally one is set to the center of the image the other are set 
>>>>>>> to get
>>>>>>> the background light. At the moment my autobrightness setting 
>>>>>>> used simple
>>>>>>> code and only one windows of measurement (the center one) .
>>>>>>
>>>>>> Some more info, 3 is the center one.
>>>>>
>>>>> :)
>>>>>
>>>>>>> Did you want i try to implement these feature ? or maybe you can 
>>>>>>> have a
>>>>>>> try :) the only problem i see is between interrupt() context and 
>>>>>>> process
>>>>>>> context. I have set up a spinlock for that look at the code how 
>>>>>>> to use it
>>>>>>> ( spca5xx_move_data() )
>>>>>>
>>>>>> Yes, please. Because I have no idea how to do this :-(
>>>>>> I am good in investigating :-)
>>>>>
>>>>> I know, but can be very good in code to, as you know the hardware 
>>>>> :) now 
>>>> let try to look at 1
>>>>                         ^^ What does this mean?
>>>>> is there the black luma level ?
>>>> I don't get it. What is the black luma level?
>>>>
>>>> Regards, Thomas
>>>>
>>>>
>>>> -- 
>>>> http://www.kaiser-linux.li
>>>>
>>>>
>>>>> By any chance, you do not have a JL2005B or JL2005C or JL2005D 
>>>>> camera among them, do you? AFAICT they all use the same compression 
>>>>> algorithm (in stillcam mode), and it appears to me to be a really 
>>>>> nasty one. Any help I could get with that algorithm is welcome indeed.
>>>>
>>>> I have to check. Please send me the USB ID.
>>>
>>>     0x0979 is the Vendor ID from Jeilin.
>>>     0x0227 is the Product ID of the JL2005B/C/D cameras
>>>     (yes, all three of them have the same ID)
>>>>
>>>> Thomas
>>>
>>> Thanks for the information. But this is an old letter. What is 
>>> happening with Michel Xhaard these days? Do you know? I miss him.
>>
>> Yes, I know it is an old letter, but these info are still valid for 
>> the PAC207 chipset!
>>
>> I don't know what happened to Michel. I didn't exchange mails with him 
>> for a long time.
> 
> I believe you that the information is valid. The comment about the age 
> of the letter related to the fact that I have not heard from Michel for 
> approximately that long, myself. As to the information, though, what I 
> would really like to see is a collection started which lists the known 
> compression algorithms for the PAC family and, at least, their code 
> bytes. So far, we have 0x00 (no compression) and 0x20, 0x50, 0xd0, and 
> what else? For example, what is the next byte after the FF FF 00 FF 96 
> for the PAC207? That would probably be good to know, but if anyone has 
> recorded that information I have missed it.
> 
> Theodore Kilgore

Hello Theodore

At this time I wrote this letter, I had a lot of email conversation with 
  Michel. I got a cam with PAC207 chip and he got an other some weeks 
later. Together, we could implement the PAC207 into spca5xx -> gspca.

For the next byte after FF FF 00 FF 96:
FF FF 00 FF 96 64 xx 00 xx xx xx xx xx xx F0 00
1. xx: don't know but value is changing between 0x00 to 0x07

As far as I can remember (at the time I did this), the cam did 
compresses sometimes and sometimes not during streaming.

So, I guess 0x07 means a compressed PAC207 frame!?

Actually, I got some frames where some lines were compressed and the 
rest was raw. The line marker tells you if the line is compressed or 
not. So, it doesn't make a lot of sense to send this information in the 
frame header. But may be 0x07 means "you can get compressed lines"?

Thomas

  reply	other threads:[~2009-02-20 19:05 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-02-17 19:09 MR97310A and other image formats Jean-Francois Moine
2009-02-17 19:35 ` Thomas Kaiser
2009-02-18  9:25   ` Jean-Francois Moine
2009-02-18 12:58     ` Thomas Kaiser
2009-02-18 19:17       ` Jean-Francois Moine
2009-02-17 19:43 ` Thomas Kaiser
2009-02-18  1:07 ` Kyle Guinn
2009-02-19  0:40   ` kilgota
2009-03-04  0:12   ` RFC on proposed patches to mr97310a.c for gspca and v4l kilgota
2009-03-04  2:50     ` Kyle Guinn
2009-03-04  5:21       ` kilgota
2009-03-04  8:41         ` Thomas Kaiser
2009-03-04  8:54           ` Thomas Kaiser
2009-03-04 19:01             ` kilgota
2009-03-05 13:02               ` Thomas Kaiser
2009-03-05 18:29                 ` kilgota
2009-03-05 19:19                   ` Thomas Kaiser
2009-03-05 19:45                     ` kilgota
2009-03-05 20:29                       ` Thomas Kaiser
2009-03-05 20:55                         ` kilgota
2009-03-05 20:51                           ` Thomas Kaiser
2009-04-15 23:59                 ` Some questions about mr97310 controls (continuing previous thread on mr97310a.c) Theodore Kilgore
2009-04-16 16:10                   ` Thomas Kaiser
2009-04-16 22:50                     ` Theodore Kilgore
2009-04-17  8:36                       ` Hans de Goede
2009-05-02  1:47                   ` Progress with the MR97310A "CIF" cameras Theodore Kilgore
2009-04-16  5:14           ` RFC on proposed patches to mr97310a.c for gspca and v4l Kyle Guinn
2009-04-16 18:22             ` Theodore Kilgore
2009-04-17  4:33               ` Kyle Guinn
2009-04-17 17:50                 ` Theodore Kilgore
2009-04-18  0:04                   ` Kyle Guinn
2009-04-18  0:43                     ` Theodore Kilgore
2009-04-21  1:18                     ` RFC on proposed patches to mr97310a.c for gspca and v4l (headers) Theodore Kilgore
2009-04-21  2:44                       ` Theodore Kilgore
2009-05-15 22:31             ` Preliminary results with an SN9C2028 camera Theodore Kilgore
2009-05-19  7:56               ` Hans de Goede
2009-05-19 18:18                 ` Theodore Kilgore
2009-03-04  8:39       ` RFC on proposed patches to mr97310a.c for gspca and v4l Hans de Goede
2009-03-04 18:46         ` kilgota
2009-03-05  1:33         ` Kyle Guinn
2009-03-05  7:01           ` Hans de Goede
2009-03-04  8:35     ` Hans de Goede
2009-03-05  2:49     ` Kyle Guinn
2009-03-05  4:34       ` kilgota
2009-03-05  5:54         ` Kyle Guinn
2009-03-05  6:47           ` kilgota
2009-03-05  7:00           ` Hans de Goede
2009-03-05 19:08             ` kilgota
2009-03-05 19:07               ` Hans de Goede
2009-03-05 20:42                 ` kilgota
2009-03-05 20:40                   ` Hans de Goede
2009-03-05 20:58                     ` kilgota
2009-03-06  1:21                       ` Kyle Guinn
2009-03-06  1:57                         ` kilgota
2009-03-28 22:42                         ` [PATCH] to add new camera in gspca/mr97310a.c Theodore Kilgore
2009-02-19 18:17 ` MR97310A and other image formats kilgota
2009-02-19 19:17   ` Thomas Kaiser
2009-02-19 21:54     ` kilgota
2009-02-19 22:45       ` Thomas Kaiser
2009-02-19 23:50         ` kilgota
2009-02-20  0:52           ` Thomas Kaiser
2009-02-20  1:32             ` kilgota
2009-02-20  8:00               ` Thomas Kaiser
2009-02-20 18:45                 ` kilgota
2009-02-20 19:05                   ` Thomas Kaiser [this message]
2009-02-20 20:26                     ` kilgota

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=499EFEE4.50306@kaiser-linux.li \
    --to=v4l@kaiser-linux.li \
    --cc=elyk03@gmail.com \
    --cc=kilgota@banach.math.auburn.edu \
    --cc=linux-media@vger.kernel.org \
    --cc=moinejf@free.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.