Reply
Thread Tools
Posts: 124 | Thanked: 213 times | Joined on Dec 2009
#1
I would like to create a diagnostic app that shows the output from both the /dev/video0 and /dev/video1 cameras simultaneously.

To keep things simple, I'm using the gst_parse_launch( "v4l2src device=/dev/videoX ! xvimagesink", NULL ) method to get a pipeline. I make two calls, where X is "0" or "1".

However, only the first call works...the second always fails with a "cannot open /dev/video1 for reading or writing" error. If I reverse the calls, obviously the error refers to /dev/video0.

I understand that I cannot open the *same* device in two separate applications, but why can I not open two *different* devices within the same app? Do I need to write some device_open code at a lower level perhaps?
 
Posts: 1 | Thanked: 3 times | Joined on Jun 2010
#2
According to the wiki, http://wiki.maemo.org/N900_Hardware_Camera_Sensor, the answer is obvious: The camera is used by several applications, including the built in camera application. It is connected via a multiplexor to the single camera bus on the CPU, along with the front camera. The two cannot be used at once.
 

The Following 3 Users Say Thank You to chia0418 For This Useful Post:
Posts: 124 | Thanked: 213 times | Joined on Dec 2009
#3
Good pointer. That kills that bright idea stone dead
 
noobmonkey's Avatar
Posts: 3,203 | Thanked: 1,391 times | Joined on Nov 2009 @ Worthing, England
#4
Yeah - i am also trying similar - but kinda bodgejobbing it (Less framerate) - and seeing if i can make it look like i am doing it at the same time :P - kinda works - but nothing mega successful to share yet!
__________________
----------- Follow me on Twitter here
----------- My Photography Website and Blog is here
----------- Author of the N900 Health Check Application ----------- New Version in Extras Devel (Dec 2010 - 2.9.10)
----------- Are you on the N900 World Map? - http://pininthemap.com/maemo - masterpin: shotgun
----------- What apps do you want to see on the n900 or in MeeGo in the future? -
 

The Following User Says Thank You to noobmonkey For This Useful Post:
Posts: 124 | Thanked: 213 times | Joined on Dec 2009
#5
How are you attempting this, noobmonkey?

Are you just creating/closing pipelines alternately, and overlaying the incoming frames as fast as you can? In C, of course

That would seem to be the only available approach, unless deeper hackery can expose a better trick...
 

The Following User Says Thank You to Dak For This Useful Post:
Posts: 182 | Thanked: 540 times | Joined on Aug 2009 @ Finland
#6
I can confirm, both front-side and main cameras are connected to the same bus that is exclusive, you cannot drive two devices through the bus simultaneously. Reconfiguring the bus takes time. It has nothing to do with multiple applications, this is pure hardware limitation.
 
Posts: 124 | Thanked: 213 times | Joined on Dec 2009
#7
Is there a way I can grab the kernel source without using scratchbox?

A simple link to a repository?

I don't want to build the kernel - not yet, anyway - but rather simply inspect the code to better understand what is happening...

EDIT : I'm a dingus....I found the place...

http://repository.maemo.org/pool/mae...free/k/kernel/

Last edited by Dak; 2010-06-01 at 14:49.
 
qwerty12's Avatar
Posts: 4,274 | Thanked: 5,358 times | Joined on Sep 2007 @ Looking at y'all and sighing
#8
Originally Posted by Dak View Post
Is there a way I can grab the kernel source without using scratchbox?

A simple link to a repository?

I don't want to build the kernel - not yet, anyway - but rather simply inspect the code to better understand what is happening...
If you're running Debian or similar: dget -ux http://repository.maemo.org/pool/fre...101501+0m5.dsc

Else, just grab http://repository.maemo.org/pool/fre...28.orig.tar.gz and the diff from the same folder
 

The Following User Says Thank You to qwerty12 For This Useful Post:
noobmonkey's Avatar
Posts: 3,203 | Thanked: 1,391 times | Joined on Nov 2009 @ Worthing, England
#9
Originally Posted by Dak View Post
How are you attempting this, noobmonkey?

Are you just creating/closing pipelines alternately, and overlaying the incoming frames as fast as you can? In C, of course

That would seem to be the only available approach, unless deeper hackery can expose a better trick...
Using python and failed with threading pipelines quickly - so trying qtmultimedia when i can get the a7se of a thing to work!
__________________
----------- Follow me on Twitter here
----------- My Photography Website and Blog is here
----------- Author of the N900 Health Check Application ----------- New Version in Extras Devel (Dec 2010 - 2.9.10)
----------- Are you on the N900 World Map? - http://pininthemap.com/maemo - masterpin: shotgun
----------- What apps do you want to see on the n900 or in MeeGo in the future? -
 
Posts: 2 | Thanked: 0 times | Joined on Sep 2010
#10
Hi,

has there been any progress on getting both cameras to work at the same time? It's really unfortunate that both cameras share a single bus, for cost reasons obviously...

I just wonder if anyone can finally confirm that we are on a dead end road with the N900 concerning the simultaneous usage of both cameras...

Regards...
 
Reply


 
Forum Jump


All times are GMT. The time now is 10:36.