Active Topics

 



Notices


Reply
Thread Tools
Posts: 39 | Thanked: 51 times | Joined on Oct 2009
#31
The camera sub system for the OMAP 3 processors does allow for raw and a few other things.

The link below is to TI's omap35x camera subsystem manual. I would assume that the two camera subsystems would be very similar if not the same.
http://focus.ti.com/lit/ug/sprufa2b/sprufa2b.pdf

This manual suggests the following features are in hardware:
- custom white balance
- Colour filter
- noise reduction
- Programmable color correction (RGB to RGB)
- Programmable gamma correction: 1024 entries for each color
- Programmable color conversion (RGB to YCbCr 4:4:4)
-Color subsampling (YCbCr 4:4:4 to YCbCr 4:2:2)
- Luminance enhancement (non-linear)
- Resizing

These features should be accessible from camera drivers as I would assume they are the same drivers that are used for the OMAP35x processors.

Other features could be implemented in software.
 

The Following 5 Users Say Thank You to cocayden For This Useful Post:
Apoc's Avatar
Posts: 73 | Thanked: 79 times | Joined on May 2009 @ Virginia
#32
Originally Posted by cocayden View Post
The camera sub system for the OMAP 3 processors does allow for raw and a few other things.

The link below is to TI's omap35x camera subsystem manual. I would assume that the two camera subsystems would be very similar if not the same.
http://focus.ti.com/lit/ug/sprufa2b/sprufa2b.pdf

This manual suggests the following features are in hardware:
- custom white balance
- Colour filter
- noise reduction
- Programmable color correction (RGB to RGB)
- Programmable gamma correction: 1024 entries for each color
- Programmable color conversion (RGB to YCbCr 4:4:4)
-Color subsampling (YCbCr 4:4:4 to YCbCr 4:2:2)
- Luminance enhancement (non-linear)
- Resizing

These features should be accessible from camera drivers as I would assume they are the same drivers that are used for the OMAP35x processors.

Other features could be implemented in software.
Wow thanks so much! That includes a surprisingly handy and comprehensive list of everything the camera module can do and how to use it. Also reading it's abilities reminds me that I should add live histograms to the list of features for this.

Anyone care to confirm that this is the same set of drivers (or similiar to) for the OMAP34x processors?

If they are that confirms a lot of things that an advanced camera app could do on here.
 
Posts: 39 | Thanked: 51 times | Joined on Oct 2009
#33
it appears the same driver is used for all of the omap 3 series.
The link below mentions N900 support.
http://gitorious.org/omap3camera/pages/Home
The link below is to the git repo for the omap3 camera drivers which also contains the n900 driver(RX-51) branch.
http://gitorious.org/omap3camera

I am not sure about the specific camera sensor for the n900 so I am not sure which modes it operates in(the camera sub system module manual shows different modes for sensors). The mode shouldn't effect what you are looking at doing and the drivers probably answer the question of what mode it operates in. I have seen some camera sensor modules that actually put out JPEG by default and need to be reconfigured to output RAW.

Depending on how the drivers are configured(unfortunately i do not have time to have a look and find out atm) changing settings may be as easy as unloading the driver and reloading the driver with parameters. Now the only problem would be how the camera is switch and changes with the driver parameters would effect the other camera(the same input on the ISP is used for both cameras).
 

The Following 4 Users Say Thank You to cocayden For This Useful Post:
Apoc's Avatar
Posts: 73 | Thanked: 79 times | Joined on May 2009 @ Virginia
#34
Originally Posted by cocayden View Post
it appears the same driver is used for all of the omap 3 series.
The link below mentions N900 support.
http://gitorious.org/omap3camera/pages/Home
The link below is to the git repo for the omap3 camera drivers which also contains the n900 driver(RX-51) branch.
http://gitorious.org/omap3camera

I am not sure about the specific camera sensor for the n900 so I am not sure which modes it operates in(the camera sub system module manual shows different modes for sensors). The mode shouldn't effect what you are looking at doing and the drivers probably answer the question of what mode it operates in. I have seen some camera sensor modules that actually put out JPEG by default and need to be reconfigured to output RAW.

Depending on how the drivers are configured(unfortunately i do not have time to have a look and find out atm) changing settings may be as easy as unloading the driver and reloading the driver with parameters. Now the only problem would be how the camera is switch and changes with the driver parameters would effect the other camera(the same input on the ISP is used for both cameras).
Thanks again for taking the time to find that out. Perhaps when the camera app is closed, the old drivers get reloaded since it's unlikely you'd be using both cameras at the same time. Still that's a bridge we'll have to cross once we get the actual program running.

Now to find someone who actually knows how to code this thing.
 
Posts: 39 | Thanked: 51 times | Joined on Oct 2009
#35
You would be using the v4l(video for linux) framework for the application.
There should be a fair few resources out there and a number of applications that you could probably use as a base.
 

The Following User Says Thank You to cocayden For This Useful Post:
Posts: 39 | Thanked: 51 times | Joined on Oct 2009
#36
There is a camera example for maemo that comes with the maemo sdk image called example_camera.c that is an example on how to use the camera and take images use v4l framework. It also has a bit of information on how everything works.

From my brief look it does not offer any of the functionality that the manual for the ISP suggests is possible. That means that the features and settings will need to be changed via driver parameters.

The example_camera.c could be a good base for taking pictures and the unloading and reloading of drivers with parameters could occur when the program is loaded.
 

The Following User Says Thank You to cocayden For This Useful Post:
SpeedEvil's Avatar
Posts: 70 | Thanked: 410 times | Joined on Sep 2009 @ Fife, Scotland.
#37
Originally Posted by cocayden View Post
Now the only problem would be how the camera is switch and changes with the driver parameters would effect the other camera(the same input on the ISP is used for both cameras).
Annoyingish.
I had a couple of apps in mind that would use both at once.
Using the front camera to shoot video, while the back camera shoots stills, with the front camera acting as a 'optical mouse' - to give relative position for the stills.

mplayer indeed won't play from both cameras, saying busy.
 

The Following 2 Users Say Thank You to SpeedEvil For This Useful Post:
Posts: 61 | Thanked: 77 times | Joined on Dec 2009 @ Lancaster
#38
I opened a new thread on vdieo4linux drivers with an objective to gain access to more control over users camera.

http://talk.maemo.org/showthread.php...736#post430736

Any help will be gratefully appreciated.

Klen
 

The Following User Says Thank You to klen For This Useful Post:
Posts: 182 | Thanked: 540 times | Joined on Aug 2009 @ Finland
#39
N900 camera is capable to produce RAW output. However, v4l2camsrc does not give it by default to an application, you need to do tricks outlined in camerabin example in gstreamer.

Another problem is that V4L2 is not very useful for controlling still photography. It lacks certain things and giving large set of control points (80+ ioctls with many sub-controls), all asking for reorganization... For example, it is not possible to get per-frame information about parameters this frame was taken with, even though main camera on N900 is capable to return this information as part of its data flow.

Maker Note contains some information about the parameters but it is encrypted and encoded and currently algorithm for decoding it is not public.

It would be relatively simple (example code is there, in camerabin examples in gstreamer) to write a gstreamer plugin that saves RAW frame data in parallel to shooting and processing JPEG image. It will work with Nokia-provided camera as well, user would need to modify some settings in the configuration file. Perhaps Christmas time would give me some space to write up a summary of what is published on maemo.gitorious.org already.
 

The Following 2 Users Say Thank You to abbra For This Useful Post:
msa's Avatar
Posts: 909 | Thanked: 216 times | Joined on Nov 2009 @ Bremen, Germany
#40
Originally Posted by qole View Post
The camera also has a "rolling shutter", causing some very interesting effects to occur:

what camera has a rolling shutter? the n900-camera???
if so, how do you "use" it on purpose?

judging by the comments and tags this was shot with a n900...
 
Reply

Tags
camera, interface, manual, n900, slr


 
Forum Jump


All times are GMT. The time now is 14:55.