From: Hans de Goede <hdegoede@redhat.com>
To: Trent Piepho <xyzzy@speakeasy.org>
Cc: kilgota@banach.math.auburn.edu, Hans Verkuil <hverkuil@xs4all.nl>,
Adam Baker <linux@baker-net.org.uk>,
linux-media@vger.kernel.org,
Jean-Francois Moine <moinejf@free.fr>,
Olivier Lorin <o.lorin@laposte.net>,
Mauro Carvalho Chehab <mchehab@infradead.org>,
linux-omap@vger.kernel.org
Subject: Re: [RFC] How to pass camera Orientation to userspace
Date: Mon, 23 Feb 2009 09:23:46 +0100 [thread overview]
Message-ID: <49A25D12.4040302@redhat.com> (raw)
In-Reply-To: <Pine.LNX.4.58.0902221603410.24268@shell2.speakeasy.net>
Trent Piepho wrote:
> On Mon, 23 Feb 2009, Hans de Goede wrote:
>> Trent Piepho wrote:
>>> On Sun, 22 Feb 2009, Hans de Goede wrote:
>>>> Trent Piepho wrote:
>>>>> On Sun, 22 Feb 2009, Hans de Goede wrote:
>>>>>> Yes that is what we are talking about, the camera having a gravity switch
>>>>>> (usually nothing as advanced as a gyroscope). Also the bits we are talking
>>>>>> about are in a struct which communicates information one way, from the camera
>>>>>> to userspace, so there is no way to clear the bits to make the camera do something.
>>>>> First, I'd like to say I agree with most that the installed orientation of
>>>>> the camera sensor really is a different concept than the current value of a
>>>>> gravity sensor. It's not necessary, and maybe not even desirable, to
>>>>> handle them in the same way.
>>>>>
>>>>> I do not see the advantage of using reserved bits instead of controls.
>>>>>
>>>>> The are a limited number of reserved bits. In some structures there are
>>>>> only a few left. They will run out. Then what? Packing non-standard
>>>>> sensor attributes and camera sensor meta-data into a few reserved bits is
>>>>> not a sustainable policy.
>>>>>
>>>>> Controls on the other card are not limited and won't run out.
>>>>>
>>>> Yes but these things are *not* controls, end of discussion. The control API is
>>>> for controls, not to stuff all kind of cruft in.
>>> All kind of cruft belongs in the reserved bits of whatever field it can be
>>> stuffed in?
>> Not whatever field, these are input properties which happen to also be pretty
>> binary so putting them in the input flags field makes plenty of sense.
>>
>>> What is the difference? Why does it matter? Performance? Maintenance?
>>> Is there something that's not possible? I do not find "end of discussion"
>>> to be a very convincing argument.
>> Well they are not controls, that is the difference, the control interface is
>> for controls (and only for controls, end of discussion if you ask me). These
>> are not controls but properties, they do not have a default min and max value,
>
> Camera pivot sensor ranges from 0 to 270. How is that not a min and max?
>
>> they have only one *unchanging* value, there is nothing the application can
>
> Camera sensors don't have an unchanging value.
>
> And who says scan order can't change? Suppose the camera returns raw bayer
> format data top to bottom, but if you request yuv then an image processing
> section needs to kick in and that returns the data bottom to top.
>
Yes, because hardware designers like throwing away lots of transistors to
memory so they are going to put memory in the controller to buffer an entire
frame and then scan out the memory buffer in different order then the sensor
gave them the data, so they cannot do FIFO, so they will actually need 2 frames
of memory.
If the sensor is soldered upside down on the PCB that is a very much unchanging
value, and an input property if you ask me.
So new proposal: use 2 bits in the input flags to indicate if the input is
hardwired vflipped and/or hflipped.
Create a new class of controls for querying possible changing camera properties
like pivoting and aperture.
Regards,
Hans
next prev parent reply other threads:[~2009-02-23 8:25 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-18 0:30 [RFC] How to pass camera Orientation to userspace Adam Baker
2009-02-18 2:10 ` DongSoo(Nathaniel) Kim
2009-02-18 14:36 ` Hans de Goede
2009-02-18 20:45 ` Dongsoo Kim
2009-02-21 11:53 ` Hans Verkuil
2009-02-22 11:17 ` Hans de Goede
2009-02-22 11:53 ` Hans Verkuil
2009-02-22 12:21 ` Hans de Goede
2009-02-22 18:42 ` kilgota
2009-02-22 18:58 ` Hans de Goede
2009-02-22 20:01 ` kilgota
2009-02-22 21:57 ` Hans de Goede
2009-02-22 22:47 ` kilgota
2009-02-22 22:51 ` Trent Piepho
2009-02-22 22:54 ` Hans de Goede
2009-02-22 23:12 ` Trent Piepho
2009-02-22 23:27 ` Hans de Goede
2009-02-23 0:19 ` Trent Piepho
2009-02-23 8:23 ` Hans de Goede [this message]
2009-02-22 23:24 ` Hans Verkuil
2009-02-22 23:56 ` Trent Piepho
2009-02-23 7:34 ` Hans Verkuil
2009-02-23 11:30 ` Mauro Carvalho Chehab
2009-02-22 21:46 ` Adam Baker
2009-02-23 11:07 ` Mauro Carvalho Chehab
2009-02-23 22:37 ` Adam Baker
2009-02-24 0:51 ` kilgota
2009-02-24 20:23 ` Mauro Carvalho Chehab
2009-02-25 0:38 ` kilgota
2009-02-25 0:53 ` Mauro Carvalho Chehab
2009-02-25 2:12 ` kilgota
2009-02-25 3:16 ` Mauro Carvalho Chehab
2009-02-25 6:27 ` kilgota
2009-02-25 3:03 ` Thomas Kaiser
2009-02-25 6:19 ` kilgota
2009-02-25 13:11 ` Thomas Kaiser
2009-02-25 7:40 ` Hans de Goede
2009-03-01 23:45 ` [PATCH] libv4lconvert support for SQ905C decompression 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=49A25D12.4040302@redhat.com \
--to=hdegoede@redhat.com \
--cc=hverkuil@xs4all.nl \
--cc=kilgota@banach.math.auburn.edu \
--cc=linux-media@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux@baker-net.org.uk \
--cc=mchehab@infradead.org \
--cc=moinejf@free.fr \
--cc=o.lorin@laposte.net \
--cc=xyzzy@speakeasy.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox