Re: Some questions about mr97310 controls (continuing previous thread on mr97310a.c)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On Thu, 16 Apr 2009, Thomas Kaiser wrote:

Hello Theodore

My answers/comments inline .....

Mine, too. I will also cut out some currently non-interesting parts, in the interest of saving space.



On 04/16/2009 01:59 AM, Theodore Kilgore wrote:


Thomas,

A few questions in the text below.


On Thu, 5 Mar 2009, Thomas Kaiser wrote:

Hello Theodore

kilgota@xxxxxxxxxxxxxxxxxxxxxx wrote:

 From usb snoop.
FF FF 00 FF 96 64 xx 00 xx xx xx xx xx xx 00 00
and
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

as I said, this signifies the image format, qua compression algorithm in use, or if 00 then no compression.

On the PAC207, the compression can be controlled with a register called "Compression Balance size". So, I guess, depending on the value set in the register this value in the header will show what compression level is set.

One of my questions:

Just how does it work to set the "Compression Balance size"? Is this some kind of special command sequence? Are we able to set this to whatever we want?

It looks like. One can set a value from 0x0 to 0xff in the "Compression Balance size" register (reg 0x4a). In the pac207 Linux driver, this register is set to 0xff to turn off the compression. While we use compression 0x88 is set (I think the same value like in Windoz). Hans did play with this register and found out that the compression changes with different values.

I wonder how this relates to the mr97310a. There is no such register present, that I can see.


Hans, may you explain a bit more what you found out?

(Yes, please.)

2. xx: this is the actual pixel clock

So there is a control setting for this?

Yes, in the PAC207, register 2. (12 MHz divided by the value set).

Again, I wonder how this might translate for the mr97310a ...

The following is pretty much the same, it seems.

3. xx: this is changing according light conditions from 0x03 (dark) to
0xfc (bright) (center)
4. xx: this is changing according light conditions from 0x03 (dark) to
0xfc (bright) (edge)
5. xx: set value "Digital Gain of Red"
6. xx: set value "Digital Gain of Green"
7. xx: set value "Digital Gain of Blue"


Varying some old questions: Precisely what is meant by the value of "Digital Gain for XX" where XX is one of Red, Green, or Blue? On what scale is this measured? Is is some kind of standardized scale? Or is it something which is camera-specific? Also what is does "set" mean in this context? This last in view of the fact that this is data which the camera provides for our presumed information, not something which we are sending to the camera?

When I recall correctly, I just saw that this fields in the header have the same value which I set in the "digital gain of Red/Green/Blue" registers. Therefor, I called it "set" value. But I don't remember if a change of these registers had any impact on the picture.

Hmmm. My experience is that these settings depend purely on the frame, and whether the camera is pointed at something bright or something dark, that kind of thing. Thus my idea was to try to use the information, somehow, in a constructive way. It never occurred to me, actually, that it is possible to "set" these things by issuing commands to a camera. But what do I know?


The range for these registers is from 0x0 to 0xff but as I don't know what they do, I don't know any more :-(

Yes, that I can understand.

Theodore Kilgore
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux