PDA

View Full Version : [ANNOUNCE] Mirror


attila77
10-19-2009, 08:50 AM
Mirror is a simple utility that shows a real-time mirror image of the built-in user-facing camera. To call this an application is a bit of an overstatement, but it has been requested by several users in various threads, so, there. Comments welcome, just don't ask me to turn it into a a full-blow image processing thing, or to automatically remove skin blemishes :)

http://maemo.org/downloads/product/Maemo5/mirror/

Developers: https://garage.maemo.org/projects/mirrorapp/

Version 2 changelog: has zoom, can toggle between 16:9 (screen) and 4:3 (camera), can fullscreen, remembers it's settings, and, last but not least, stops when not in foreground.


EDIT: Special thanks to daperl for the original gstreamer chain idea/example. Sorry for the missing README :(

EDIT: Diablo version is on hold. I just remembered why I'm a Qt guy. There are just too many syntax changes in PyGTK/hildon between Maemo 4 and Maemo 5. Feel free to pick-up the code and adapt it to Maemo 4.x syntax if interested.

lcuk
10-19-2009, 09:05 AM
cannot install the gstreamer0.10-plugins-good package

go look at http://maemo.org/packages/package_instance/view/fremantle_nokia-applications_explicit_armel/gstreamer0.10-plugins-good-extra/0.10.15-git180-0maemo8+0m5/

kryptoniankid17
10-19-2009, 09:13 AM
Mirror is a simple utility that shows a real-time mirror image of the built-in user-facing camera. To call this an application is a bit of an overstatement, but it has been requested by several users in various threads, so, there. Comments welcome, just don't ask me to turn it into a a full-blow image processing thing, or to automatically remove skin blemishes :)

It's currently in Fremantle extras-testing, try it out, vote up if you find no problems so it could get into extras (and thus general users). I'll hack together a Diablo version for N8x0 users, too.

http://maemo.org/packages/package_instance/view/fremantle_extras-testing_free_armel/mirror/1.0-2

any screen shots?

lcuk
10-19-2009, 09:15 AM
any screen shots?

*facepalm*

kryptoniankid17
10-19-2009, 09:18 AM
would it be able to make the background look like the actual reflective surface of a mirror.

attila77
10-19-2009, 09:23 AM
any screen shots?

I'm not THAT pretty :D Seriously, it's a mirror, not exactly much to be seen from a screenshot.

would it be able to make the background look like the actual reflective surface of a mirror.

Background... you lost me there. Can you elaborate ?

kryptoniankid17
10-19-2009, 09:31 AM
I'm not THAT pretty :D Seriously, it's a mirror, not exactly much to be seen from a screenshot.



Background... you lost me there. Can you elaborate ?

theme or background. what your reflection apears in front of. now that i think about it. it could be almost like one of those photo booths.

attila77
10-19-2009, 09:47 AM
OK, I understand now. That would only be possible if the background would be single-colour and uniformly lit (like in the photobooth you mention). I guess it could be done, but that's not really the use-case for this 'app' (it sounds more like an extension/filter for the camera application).

thecursedfly
10-19-2009, 09:57 AM
kriptoniankid17, it doesn't really make sense what you're saying about this app.. the app displays what the front camera sees, so it shows your person and the background behind you. = mirror.

that photo booth stuff you talk about has nothing to do with this application, if I understood well what you mean.
[ example of Photo Booth effects (http://www.youtube.com/watch?v=PqnHXhlSi0I) ]
[ example of the effect you probably talk about (http://www.youtube.com/watch?v=opS0LG9bmDQ#t=144s) ]

kryptoniankid17
10-19-2009, 09:59 AM
OK, I understand now. That would only be possible if the background would be single-colour and uniformly lit (like in the photobooth you mention). I guess it could be done, but that's not really the use-case for this 'app' (it sounds more like an extension/filter for the camera application).

with this community though you never know. someone will pick up on it. But its great to know developers pay attention.

conny
10-19-2009, 10:05 AM
It was about time that someone uses the front camera for something - thanks a lot!

Just a few things:
- The window title is "gst-launch-0.10", maybe set it to "Mirror" :)
- When put into the background it is still using a lot of cpu power. I think it should stop processing/displaying the image.
- Same is when put into the dash board. On the outer left and right boarder of the screen there are artefacts. I think the best would be to stop everything if not the top most application.

I think the power saving in background thing is important to get it into extras.

Last thing a wish: How about putting it into fullscreen when tapping somewhere inside the window and leaving fullscreen wenn tapping again. Just like the image viewer.

Oh an another one (really the one): I have the feeling that the image is stretched or my head is very round ;)

Thanks for the good work!

aboaboit
10-19-2009, 10:09 AM
It's currently in Fremantle extras-testing, try it out, vote up if you find no problems so it could get into extras (and thus general users). I'll hack together a Diablo version for N8x0 users, too.


I installed it without problems but all I got was the spinning wheel of the application being started; after a few seconds it went back to the application manager. Tried a few times, then the application manager started acting funny (it was showing base and extra icons on top of each other) and I had to reboot.

gazza_d
10-19-2009, 10:19 AM
Does this actually need porting to diablo for N8x0s?

We have the camera application already On the N810, the camera faces the user anyway, and on the N800 we can rotate the camera as well. Only good thing about the camera resolution is that it is so poor that any spots, pimples etc probably won't be picked up!

Mind you whenever I've tried the camera application, it has been monumentally slow, resource hungry etc etc, and has been completely unusable.

attila77
10-19-2009, 10:22 AM
- The window title is "gst-launch-0.10", maybe set it to "Mirror" :)

Right :)

- When put into the background it is still using a lot of cpu power. I think it should stop processing/displaying the image.
- Same is when put into the dash board.

Noted.

On the outer left and right boarder of the screen there are artefacts. I think the best would be to stop everything if not the top most application.

I noticed this myself. This is definitely not my doing, it's either the cam readout process (=electronics) or something deep inside (=kernel level) as direct v4l2 readout also results in some artifacts.

Last thing a wish: How about putting it into fullscreen when tapping somewhere inside the window and leaving fullscreen wenn tapping again. Just like the image viewer.

Noted.

Oh an another one (really the one): I have the feeling that the image is stretched or my head is very round ;)

Yes, turns out the cam is not the same aspect ratio as the screen - again, noted :)

attila77
10-19-2009, 10:23 AM
I installed it without problems but all I got was the spinning wheel of the application being started; after a few seconds it went back to the application manager. Tried a few times, then the application manager started acting funny (it was showing base and extra icons on top of each other) and I had to reboot.

Hm. Try opening a console and starting manually (just type 'mirror') - does it give an error or something there ?

attila77
10-19-2009, 10:26 AM
Does this actually need porting to diablo for N8x0s?

We have the camera application already On the N810, the camera faces the user anyway, and on the N800 we can rotate the camera as well. Only good thing about the camera resolution is that it is so poor that any spots, pimples etc probably won't be picked up!

It does need a port... First, the device names have been swapped - the user-cam is /dev/video0 on N810 and /dev/video1 on the N900. Second, the N810 camera app is not a mirror :) Third, on the N800/N810 you probably want to go for 320x240 (instead of the current/max 640x480) as it gets choppy (esp in low-light conditions).

allnameswereout
10-19-2009, 12:12 PM
So what this does is horizontal flip?

That is one of the effects (http://projects.gnome.org/cheese/data/screenshots/cheese-2.28.0-effects.jpg) of Cheese (http://projects.gnome.org/cheese/tour).

Has anyone tried to port it?

attila77
10-19-2009, 12:15 PM
I see making a video of this in action is inevitable :) Yes, it's a horizontal flip, the point being in simplicity - you don't need to take a picture or start/apply anything extra. You start the app, you get a mirror, as easy as that.

attila77
10-19-2009, 12:16 PM
cannot install the gstreamer0.10-plugins-good package

go look at http://maemo.org/packages/package_instance/view/fremantle_nokia-applications_explicit_armel/gstreamer0.10-plugins-good-extra/0.10.15-git180-0maemo8+0m5/

Hm... I didn't do anything and the missing dependencies disappeared. There is some voodoo going on there... is it ok for you now ?

conny
10-19-2009, 12:45 PM
Hm... I didn't do anything and the missing dependencies disappeared. There is some voodoo going on there... is it ok for you now ?

Niels fixed it, so no voodo :) Didn't you get the email on the devel list?

Oops, this was a configuration mistake on my part. I didn't setup the
links between the repositories for nokia-applications and device root
filesystem.

It should look a lot better for you now?

attila77
10-19-2009, 01:13 PM
Hmm, we've got some email voodoo going on, too, I never got that message :( That explains a few things, though, I was starting to think I completely misunserstood how these repos worked. :)

conny
10-19-2009, 01:27 PM
I forwarded it to you, just in case that the archives need some time.

daperl
10-19-2009, 01:57 PM
Wow, not even a mention. Spooky.

Hogwash
10-19-2009, 02:00 PM
Wow, not even a mention. Spooky.

???

pad pad pad

attila77
10-19-2009, 02:32 PM
Wow, not even a mention. Spooky.

I'm sorry, FWIW I forgot to include the README in the package (also containing the icon's source and reference to your post). It's already fixed in the next version.
.

Nelson L. Squeeko
10-19-2009, 02:50 PM
I've always just used liqbase if I even required a mirror with my n810.

qole
10-19-2009, 03:27 PM
Wow, not even a mention. Spooky.

I'm just happy to see things like these getting into the repos! W00T!

But, hey, thanks daperl!

kryptoniankid17
10-19-2009, 03:57 PM
kriptoniankid17, it doesn't really make sense what you're saying about this app.. the app displays what the front camera sees, so it shows your person and the background behind you. = mirror.

that photo booth stuff you talk about has nothing to do with this application, if I understood well what you mean.
[ example of Photo Booth effects (http://www.youtube.com/watch?v=PqnHXhlSi0I) ]
[ example of the effect you probably talk about (http://www.youtube.com/watch?v=opS0LG9bmDQ#t=144s) ]

just a little overily excited. Lots of ideas.

kryptoniankid17
10-19-2009, 03:58 PM
hows the picture clarity so far?

RevdKathy
10-19-2009, 04:04 PM
Permission to bounce up and down in enthusiasm please? I don't actually have a device to test it on, but I was one of the people pushing for this one. :)

timsamoff
10-19-2009, 04:07 PM
...Cheese (http://projects.gnome.org/cheese/tour)...Has anyone tried to port it?
I actually tried to give (yes, give) an N810 to the Cheese developer a while back and he refused. :(

Tim

kryptoniankid17
10-19-2009, 04:13 PM
I actually tried to give (yes, give) an N810 to the Cheese developer a while back and he refused. :(

Tim

cheese would be killer on the n900. thanks for the link.

kryptoniankid17
10-19-2009, 04:16 PM
I actually tried to give (yes, give) an N810 to the Cheese developer a while back and he refused. :(

Tim

why do i see a ar seuss green eggs and ham scenario. lol

aboaboit
10-19-2009, 04:19 PM
Hm. Try opening a console and starting manually (just type 'mirror') - does it give an error or something there ?

/usr/bin/mirror: line 2: gst-launch-0.10: not found

daperl
10-19-2009, 04:22 PM
I'm sorry, FWIW I forgot to include the README in the package (also containing the icon's source and reference to your post). It's already fixed in the next version.
.

Thanks, I appreciate it.

Now, if I can just get credit for my flashlight idea...

pycage
10-19-2009, 04:26 PM
Wow, incredible! So many guys crowding around a girl's mirror.

SCNR :D

attila77
10-19-2009, 04:36 PM
/usr/bin/mirror: line 2: gst-launch-0.10: not found

Oops, that's a missing dependency. New version heading to the repos...

daperl
10-19-2009, 04:37 PM
Wow, incredible! So many guys crowding around a girl's mirror.

[even spookier]You're missing the point. It defaults to debug mode, which of course continues to run in the background and publishes everything, including sound, to youtube.[/even spookier]

allnameswereout
10-19-2009, 04:42 PM
I see making a video of this in action is inevitable :) Yes, it's a horizontal flip, the point being in simplicity - you don't need to take a picture or start/apply anything extra. You start the app, you get a mirror, as easy as that.This is awesome. Now I can stop using my iPod's glossy display to manage them pimples. :cool:

matteone
10-20-2009, 12:37 PM
Hi to all.

I installed everithing without any problem ... great.
And the program runs without any problem. But ... ... in the scree I see a darker band than the rest on the right side.
I tried on 2 N900 ... and the results is the same.
Is this a problem of the internal camera or ... what is this ?

Look at the screenschoot ( am I beautiful ? :-) ).

Thanks !

http://i38.tinypic.com/259e9m0.jpg

eiffel
10-20-2009, 01:08 PM
Thanks for that screenshot, matteone. It shows that the resolution of the front-facing camera may be the limiting factor.

To improve the quality of the image, perhaps the application can be modified to use the main camera. Of course the difficulty with that approach is that you can't see the screen while you're pointing the main camera at your face. But if you have a small mirror with you, you can position it so that you can see the N900 screen.

Regards,
Roger

daperl
10-20-2009, 01:13 PM
And the program runs without any problem. But ... ... in the scree I see a darker band than the rest on the right side.
I tried on 2 N900 ... and the results is the same.
Is this a problem of the internal camera or ... what is this ?

That looks close to 160 pixels. Try the following:

gst-launch-0.10 v4l2src device=/dev/video1 ! video/x-raw-yuv,width=640,height=480,framerate=30/1 ! ffmpegcolorspace ! videoflip method=4 ! autovideosink

qole
10-20-2009, 01:21 PM
Same problem as always, daperl:

...could not negotiate formate.... check your filtered caps, if any....

As soon as you try to tidy up the output of the camera, it gorks.

EDIT: Setting it to ... ! video/x-raw-yuv,width=640 ! ... works, but it looks exactly the same.

qole
10-20-2009, 01:36 PM
Ok this isn't stretched anymore, but it still has the dark band:

gst-launch-0.10 v4l2src device=/dev/video1 ! "video/x-raw-yuv,pixel-aspect-ratio=(fraction)1/1" ! ffmpegcolorspace ! videoflip method=4 ! xvimagesink force-aspect-ratio=true

attila77
10-20-2009, 01:40 PM
The dark band problem is deeper, either electronics or kernel driver level. It's there even I don't use gstreamer at all (=direct v4l2)

lcuk
10-20-2009, 01:50 PM
Thanks for that screenshot, matteone. It shows that the resolution of the front-facing camera may be the limiting factor.

To improve the quality of the image, perhaps the application can be modified to use the main camera. Of course the difficulty with that approach is that you can't see the screen while you're pointing the main camera at your face. But if you have a small mirror with you, you can position it so that you can see the N900 screen.

Regards,
Roger


just an observation.

you want to use a small mirror in your possession to hack together an app supposed to work as a mirror?

isn't that a little redundant ?

attila77
10-20-2009, 01:53 PM
In case some devs wants to track progress or make their own packages, I opened a garage project for this 'app' (talk about waste of resources :) ). The address is https://garage.maemo.org/projects/mirrorapp/

eiffel
10-20-2009, 01:56 PM
isn't that a little redundant ?
precisely! :D

(or, as they say on slashdot, "whoosh!")

attila77
10-20-2009, 02:00 PM
isn't that a little redundant ?

Ever tried to take a look at the back of your head with a single mirror ? Can get tricky ! :D The solution is simple though, use TWO N900s and display the main cam image on the OTHER unit. Now THAT is a PUSH project right there :D

qole
10-20-2009, 02:04 PM
Ok, so here's how to get rid of the dark band. Use "videocrop" to crop it away!

The new pipeline to produce a properly sized image with no dark band:

gst-launch-0.10 v4l2src device=/dev/video1 ! "video/x-raw-yuv,pixel-aspect-ratio=(fraction)1/1" ! ffmpegcolorspace ! videoflip method=4 ! videocrop right=122 ! xvimagesink force-aspect-ratio=true

anidel
10-20-2009, 02:22 PM
I just installed mirror 1.0-2 and it installed libspeex1 gstreamer0.10-plugins-good-extra, but when I run it I get:

/usr/bin/mirror: line 2: gst-launch-0.10: not found

something is missing?

anidel

EDIT: forgot to say that I've installed it via apt-get install mirror

daperl
10-20-2009, 02:35 PM
How about swapping out v4l2src for v4l2camsrc.

eiffel
10-20-2009, 02:41 PM
Ever tried to take a look at the back of your head with a single mirror ? Can get tricky ! :D The solution is simple though, use TWO N900s and display the main cam image on the OTHER unit. Now THAT is a PUSH project right there :D
Or use one N900, but have it plugged in to an external monitor.

daperl
10-20-2009, 02:55 PM
The dark band problem is deeper, either electronics or kernel driver level. It's there even I don't use gstreamer at all (=direct v4l2)

Does /dev/video0 have this problem?

Also, please try v4l2camsrc. I just looked at the source, it's plenty different than v4l2src.

qole
10-20-2009, 02:55 PM
Ok, last pipeline. This one crops the top and the bottom so it fills the whole mirror window:

gst-launch-0.10 v4l2src device=/dev/video1 ! "video/x-raw-yuv,pixel-aspect-ratio=(fraction)1/1" ! ffmpegcolorspace ! videoflip method=4 ! videocrop top=60 bottom=160 right=122 ! xvimagesink force-aspect-ratio=true

EDIT: v4l2camsrc looks identical to v4l2src :(

dmj726
10-20-2009, 03:12 PM
Can we add a zoom feature so you can dial into that pimple? (Perhaps the swirly zoom from the browser ;) )

attila77
10-20-2009, 03:18 PM
I just installed mirror 1.0-2 and it installed libspeex1 gstreamer0.10-plugins-good-extra, but when I run it I get:

something is missing?

anidel

EDIT: forgot to say that I've installed it via apt-get install mirror

yep, you're missing gstreamer-tools (fixed in 1.0-3)

attila77
10-20-2009, 03:20 PM
Does /dev/video0 have this problem?

No, video0 works just fine (and has a lot better quality)

anidel
10-20-2009, 05:31 PM
yep, you're missing gstreamer-tools (fixed in 1.0-3)

Thanks, some other update installed it, as it was already installed when I ran (now) apt-get install gstreamer-tools...

Anyway, it's working fine.
It's quite fast, but yes, the aspect ratio is to be fixed.

No way to take snapshots? :)

qole
10-20-2009, 06:17 PM
The zoom feature wouldn't be too hard, just crop the picture more and the remaining area will be hardware scaled to fill the screen.

mikec
10-20-2009, 06:23 PM
Guys

I'm sorry to report a Portrait use-case at last !!!:D

Mike C

daperl
10-20-2009, 06:53 PM
The zoom feature wouldn't be too hard, just crop the picture more and the remaining area will be hardware scaled to fill the screen.

If you're gonna zoom and stuff, I think it's time to wrap camerabin in a gui. If I had an n900, I would probably start with the attached gtk/gst Python script from here (http://talk.maemo.org/showthread.php?p=330520).

attila77
10-20-2009, 07:06 PM
I already started wrapping it in a pinch of python after connys remarks as a prospective v2, but will certainly take a look.

aboaboit
10-21-2009, 03:20 AM
just an observation.
you want to use a small mirror in your possession to hack together an app supposed to work as a mirror?
isn't that a little redundant ?

Redundant is bad. Recursive is divine ;)

attila77
10-21-2009, 09:07 AM
Good news everyone !

Apparently the vertical band problem was a firmware issue that is already fixed in the upcoming firmware, and is confirmed to work OK with mirror.

https://bugs.maemo.org/show_bug.cgi?id=5663

anidel
10-21-2009, 09:40 AM
If only we could get an OTA!!!

so many bug fixes and no more firmware updates :(

anidel
10-21-2009, 09:45 AM
Btw, you may also want to have a look at this interesting piece of code:

http://wiki.maemo.org/Documentation/Maemo_5_Developer_Guide/Using_Multimedia_Components/Camera_API_Usage

andrewfblack
10-21-2009, 09:50 AM
I guess this widget would be great also if you think you are being followed just hold the n900 a little to the left of you and so you can see behind you. Every spy needs this.

eiffel
10-21-2009, 10:38 AM
...if you think you are being followed just hold the n900 a little to the left of you and so you can see behind you...
As if to announce: "hey, suspicious person following me, here's a £500 device for you to grab".

daperl
10-22-2009, 10:38 AM
Btw, you may also want to have a look at this interesting piece of code:

http://wiki.maemo.org/Documentation/Maemo_5_Developer_Guide/Using_Multimedia_Components/Camera_API_Usage

I basically ported that to Python (http://talk.maemo.org/showthread.php?p=330515).

qole
10-22-2009, 02:52 PM
I was hoping to see some cropping in the latest version... I guess you can leave the dark band in there for now, since that will be fixed, but crop the top and bottom to match the screen's aspect ratio, so that the user's face isn't stretched.

attila77
10-22-2009, 03:24 PM
The next version will be a 2.0, which is a python script, so I can actually call it an app without blushing. It will contain all the mentioned goodies and hopefully please the testers so it has at least a remote chance of getting the 10 karma required for extras :)

daperl
10-22-2009, 04:13 PM
I've attached a compiled FREMANTLE_ARMEL version of the camerabin directory from gst-plugins-bad0.10-0.10.13-git209/tests/examples.

Inside the camera directory you should be able to type:

./gst-camera

It's a shell script that I think runs the gst-camera binary that's inside .libs.

Maybe one of you n900 guys could give it a try and let us know what you see.

EDIT:

Here's a screen shot from my hacked x86 version:

4476

I think the bottom slider is for zooming.

qole
10-22-2009, 05:32 PM
gunzip cb.gz just produces a file called cb...?

EDIT: Ok, it's a TAR. When I "tar xvf cb" it expands into a directory called "camerabin".

qole
10-22-2009, 05:53 PM
daperl: The script is designed to be run inside scratchbox, and it just doesn't like being run on a real device. I replaced a bunch of scratchbox-specific stuff, but it still doesn't work, and I can't figure out what's going on. It seems to delete .libs/lt-gst-camera and then attempts to run it. What's up with that?

kryptoniankid17
10-22-2009, 06:09 PM
The next version will be a 2.0, which is a python script, so I can actually call it an app without blushing. It will contain all the mentioned goodies and hopefully please the testers so it has at least a remote chance of getting the 10 karma required for extras :)

how short are u on karma?

daperl
10-22-2009, 06:16 PM
daperl: The script is designed to be run inside scratchbox, and it just doesn't like being run on a real device. I replaced a bunch of scratchbox-specific stuff, but it still doesn't work, and I can't figure out what's going on. It seems to delete .libs/lt-gst-camera and then attempts to run it. What's up with that?

Maybe just go inside the .libs directory and run the gst-camera executable.

cd .libs
./gst-camera

qole
10-22-2009, 06:45 PM
./gst-camera: line 1: syntax error: "(" unexpected

daperl
10-22-2009, 07:20 PM
./gst-camera: line 1: syntax error: "(" unexpected

Woops, I attached the i386 stuff by mistake. I'll get back to you.

daperl
10-22-2009, 07:28 PM
Here, try this one.

qole
10-23-2009, 01:57 AM
Well it kinda sorta works. The controls on the right work, nothing else does (including the focussing).

http://farm3.static.flickr.com/2747/4035994369_c2433ea726_o.png

daperl
10-23-2009, 03:00 AM
Thanks for trying. Does the console say anything interesting for the stuff that doesn't work?

attila77
10-23-2009, 08:31 PM
Okay folks, version 2.0-1 is in extras-devel. It finally knows it's own name, fullscreens, zooms, knows about 16:9 and almost everything that was mentioned in this thread. Those with extras-devel enabled, please take a peek before I promote to extras-testing (the black band is still there - it's officially a "fixed in Fremantle"). Image quality is still horrible, we'll work on that once the usability kinks are ironed out.

attila77
10-26-2009, 07:33 AM
Not much feedback, must mean everything works, eh ? :)

Anyway, people with extras-testing enabled, PLEASE take a look and thumb up/down so we could (finally) get this into extras. Thank you.

http://maemo.org/packages/package_instance/view/fremantle_extras-testing_free_armel/mirror/2.0-2/

qole
10-26-2009, 01:44 PM
Ok, it works, but here are some problems:

Icon is too big for desktop
Image is square, it should be cropped, top and bottom, to fill the whole screen
App starts windowed, it should start fullscreen
The quality of the image is terrible -- like UHF TV from a distant station.

kryptoniankid17
10-26-2009, 02:01 PM
Ok, it works, but here are some problems:

Icon is too big for desktop
Image is square, it should be cropped, top and bottom, to fill the whole screen
App starts windowed, it should start fullscreen
The quality of the image is terrible -- like UHF TV from a distant station.


from my experience with the n97, n95, and n96. this might be an issue with the camera as all of them have pretty grainy quality.

kryptoniankid17
10-26-2009, 02:03 PM
does any one know how many mp the front camera on the n900 has.

RevdKathy
10-26-2009, 02:04 PM
I'm not sure how big a problem that is: we're looking for something that will enable the application of a smear of lippy or ensuring the removal of spinach from the teeth, not a device to determine Who Is The Fairest Of Them All.

attila77
10-26-2009, 02:25 PM
Ok, it works, but here are some problems:
Icon is too big for desktop


Hmm. This is some hildon misunderstanding... the app provides all possible sizes (how do I influence which one is picked by the desktop ?).


Image is square, it should be cropped, top and bottom, to fill the whole screen


I take it you have not found 'toggle wide' in the menu :) BTW the cropped mode lowers resolution and thus makes noise look worse, that's why I chose chose the uncropped one as the default, but I'm not emotionally attached to it, so if you all say 'crop FTW' who am I to contradict :)


App starts windowed, it should start fullscreen


Hm. Sure ? I kind of thought people press it once to start, press the X to quit...

The quality of the image is terrible -- like UHF TV from a distant station.
[/LIST]

Alas, this one is out of my reach. It IS a 640x480 webcam with a chip size that nears the head of a pin... There should be SOME improvement via next firmwares but don't expect wonders. Alternatively, one could implement denoising and hot pixel removal filters, but that's heavy artillery outside the scope of this app...

attila77
10-26-2009, 02:26 PM
does any one know how many mp the front camera on the n900 has.

0.3mpix :) It's 640x480.

qole
10-26-2009, 02:35 PM
I take it you have not found 'toggle wide' in the menu :)


Ok, I found it. But your app stubbornly refuses to remember that I like "wide-and-low". If it remembered my preference, I'd be happy.

EDIT: Oh, and if you make a settings file, maybe have a "start fullscreen" setting too?

Alas, this one is out of my reach. It IS a 640x480 webcam with a chip size that nears the head of a pin... There should be SOME improvement via next firmwares but don't expect wonders. Alternatively, one could implement denoising and hot pixel removal filters, but that's heavy artillery outside the scope of this app...

Have you found a way to reduce the frames-per-second? Cutting the fps to 15 would probably improve the image dramatically, at the expense of some real-time motion responsiveness... Maybe another setting?

I notice that the screen flickers a lot; clearly, the device is trying to auto-adjust the brightness. It would be nice to kill that somehow. Hm. Someone who isn't as terrified of Bugzilla as I am should probably should post a bug about that.

attila77
10-26-2009, 02:41 PM
Ok, I found it. But your app stubbornly refuses to remember that I like "wide-and-low". If it remembered my preference, I'd be happy.

EDIT: Oh, and if you make a settings file, maybe have a "start fullscreen" setting too?


Deal.

Have you found a way to reduce the frames-per-second? Cutting the fps to 15 would probably improve the image dramatically, at the expense of some real-time motion responsiveness... Maybe another setting?

That can be set through gstreamer, I'll try and see whether it influences image quality.

I notice that the screen flickers a lot; clearly, the device is trying to auto-adjust the brightness. It would be nice to kill that somehow. Hm. Someone who isn't as terrified of Bugzilla as I am should probably should post a bug about that.

This one, however, is a lot deeper, we have no control over camera gain ATM.

koivjann
10-26-2009, 02:44 PM
0.3mpix :) It's 640x480.

The quality of the picture is terrible. On the right hand side there is some kind of darker bar about 1 cm wide. And the application goes off in about 1 minute.

Thank you for the first working application which uses the front camera. Now we know that it's working and exists.

Maybe this lead to something.

attila77
10-26-2009, 02:50 PM
I think I'll put up a startup notification bar that the image quality and the dark bar is not my doing :)

As for goes off... what do you mean ? The screen-save kicks in, the app crashes, or ?

koivjann
10-26-2009, 02:58 PM
I think I'll put up a startup notification bar that the image quality and the dark bar is not my doing :)

As for goes off... what do you mean ? The screen-save kicks in, the app crashes, or ?

I suppose it crashes by itself. If the screen saver goes on it comes on if you unlock screen saver. But there is no crash report alt ought I have reporter on.

I'm sorry not to recognize your startup notification

qole
10-26-2009, 03:14 PM
Yes, I noticed that too, the screen goes dark after a short period. Probably you should turn off screen blanking while your app is in the foreground...

mikkov
10-26-2009, 03:31 PM
It is killed after 2 min because .desktop file has X-Osso-Service=org.maemo.mirror, but program is not registered with libosso functions.

So remove X-Osso-Service from .desktop and it doesn't crash or use libosso. But because you are not using anything from libosso or dbus you can just remove it.

kryptoniankid17
10-26-2009, 05:22 PM
0.3mpix :) It's 640x480.

you would think nokia would of improved this by now. thats not much to work with.

attila77
10-26-2009, 10:00 PM
you would think nokia would of improved this by now. thats not much to work with.

Actually, there is little point going higher res, as there is no device that could display it (remember, this is the videocall cam - how many phones do you know that have significantly better than 640x480 displays ? :) ). It *could* have been a better quality one, though :(

koivjann
10-27-2009, 08:29 AM
The new version gives "much" better picture than earlier. That seems to depend on illumination :p Thanks

attila77
11-01-2009, 05:43 PM
Ok, I found it. But your app stubbornly refuses to remember that I like "wide-and-low". If it remembered my preference, I'd be happy.

EDIT: Oh, and if you make a settings file, maybe have a "start fullscreen" setting too?


Okay, new version 2.1 that does the above is out (http://maemo.org/packages/package_instance/view/fremantle_extras-testing_free_armel/mirror/2.1-1). Test and thumb, thank you.


Have you found a way to reduce the frames-per-second? Cutting the fps to 15 would probably improve the image dramatically, at the expense of some real-time motion responsiveness... Maybe another setting?

I tried lowering framerate, no noticeable image quality improvement :(

qole
11-02-2009, 02:37 PM
What about decreasing overall resolution? 320x240 (or whatever the actual resolution should be) might hide the noise better than 640x480...?

attila77
11-02-2009, 05:06 PM
Lowering resolution does not help image quality (only speed, the current 'default' seems to be a dumb n-th pixel readout) - unless I do it in software, with some sort of median/denoising filter. Or maybe figure out how to make a darkframe without bothering the user... (if you cover the camera with your finger you'll see there are plenty of hot pixels). At this point, though, I'd rather wait for final firmware and implement improvements based on that.

sarahn
11-05-2009, 12:25 PM
A serious suggestion:

People say that symmetry is what leads to beauty. Taking art I recall that we were supposed to look at our pictures in mirrors to make sure they were balanced.

I suggest being able to draw a line at an arbitrary point in the picture and have one side or the other mirrored along that line. Additionally, make the mirror semi-transparent (0 to 100 or whatever) so that one side of your face is superimposed on the other. Could be useful for makeup, either as a comparison or as a guide when you have done one side of your face and not the other.

attila77
11-05-2009, 06:00 PM
Interesting idea, but I'm afraid that surpasses my current GTK/GStreamer skills - volunteers welcome !

BTW Mirror is now officially part of extras (http://maemo.org/downloads/product/Maemo5/mirror/#) (=available to the general public, not just testers).

attila77
11-11-2009, 12:26 PM
Anyone with a 42-11 (=release) firmware ? I'd like to hear if the image quality is any better compared to the Summit 41-10's and confirm the demise of the right-side dark band.

jebba
12-06-2009, 07:56 PM
Anyone with a 42-11 (=release) firmware ? I'd like to hear if the image quality is any better compared to the Summit 41-10's and confirm the demise of the right-side dark band.

Sorry to tell you, but image quality still sucks and the band is still there. This is due to the firmware, not your program (as you well know).

It does the same thing in mplayer. Example (from my old mirror script for Eee):

mplayer \
-fs \
-v \
-fps 25 \
-nosound \
-ao null \
-nojoystick \
-nolirc \
-ontop \
-framedrop \
-stop-xscreensaver \
-nocache \
-vf-add mirror \
-vf-add crop=640:380 \
-vf-add hqdn3d \
-noslices \
-vo xv \
-tv brightness=0:contrast=0:hue=0:saturation=-0:gain=0:device=/dev/video1 \
tv://

None of the -tv options work on the front (mirror) camera. They work fine on /dev/video0 though.

-Jeff

bocaJ
12-08-2009, 03:45 PM
Do we know that the band on the front camera is actually do to firmware and not a hardware defect?

Psymastr
12-09-2009, 08:36 PM
Do we know that the band on the front camera is actually do to firmware and not a hardware defect?

Yes, and nokia already has a fix internally.

calnghia333
04-12-2010, 08:50 PM
i try to install mirror to my phone but it keeps telling me unable to install 'mirror' because CONFLICT WITHALLICATION PACKAGE: MAEMO 5..
can anyone show me how to install mirror to the phone.. thank you very much

attila77
04-14-2010, 10:36 AM
whoa, interesting. What version of the firmware do you have ? (settings->about product)

qole
06-01-2010, 05:53 PM
I just tried Mirror with PR 1.2 and it looks much, much better... except that everything is greenish. Is there a white balance that needs to be invoked now?

attila77
06-05-2010, 07:40 AM
Nice catch, I will play with it to get more natural results. Doesn't look white balance to me, more like something happening around the demosaicing phase (the CCD has twice as much green pixels than red or blue). Doubling red/blue or halving green component should help it...

PMaff
01-11-2011, 02:52 PM
Nice catch, I will play with it to get more natural results. Doesn't look white balance to me, more like something happening around the demosaicing phase (the CCD has twice as much green pixels than red or blue). Doubling red/blue or halving green component should help it...

I tried downloading mirror from
http://maemo.org/downloads/product/Maemo5/mirror/
but it says that "Error 404: Page Could Not Be Found"
for "/downloads/product/raw/raw/Maemo5/mirror/"

Anything broken there?

attila77
01-11-2011, 05:49 PM
When you say 'downloading', what exactly did you click on that page, and did you do it from a desktop computer or the N900 itself ?

PMaff
01-13-2011, 07:20 AM
When you say 'downloading', what exactly did you click on that page, and did you do it from a desktop computer or the N900 itself ?

Click on the green item on the page on my N900.
Afair this normally downloads/installs the application?
;-)