Active Topics

 


Reply
Thread Tools
Mike Fila's Avatar
Posts: 412 | Thanked: 480 times | Joined on Feb 2011 @ Bronx, NY
#11
^ this is exactly what came to mind when I saw this thread.
 
Estel's Avatar
Posts: 5,028 | Thanked: 8,613 times | Joined on Mar 2011
#12
Originally Posted by qole View Post
Berndt at Dreamchip has been working on such a thing for years now, and he has a little box called xbounds that can do this over WiFi for Maemo and Android. Don't know when they're actually planning to release it, it has been "in production" for so long now... I saw a demo on the N900 back in Summer 2010 and it was really good, but I guess he didn't want to release it for the N900 since it is discontinued...
Quite interesting info - thanks for sharing. Yet, considering WiFi bandwidth limitation, I don't believe it's true "mirroring" (especially in case of videos decoded via N900 dsp) - it's too much for USB, not to mention WiFi.

Anyway, fortunately, using Raspberry Pi we should be able to achieve that with FOSS components, so we're not FCKD up, if some random guy decide, that he's not going to support Maemo. Not to mention, that I bet my left shoe, that his toy would be priced 2-3x of what we need to pay for Raspberry Pi.

/Estel
__________________
N900's aluminum backcover / body replacement
-
N900's HDMI-Out
-
Camera cover MOD
-
Measure battery's real capacity on-device
-
TrueCrypt 7.1 | ereswap | bnf
-
Hardware's mods research is costly. To support my work, please consider donating. Thank You!
 

The Following User Says Thank You to Estel For This Useful Post:
Estel's Avatar
Posts: 5,028 | Thanked: 8,613 times | Joined on Mar 2011
#13
Updated first post to reflect current status of project.
__________________
N900's aluminum backcover / body replacement
-
N900's HDMI-Out
-
Camera cover MOD
-
Measure battery's real capacity on-device
-
TrueCrypt 7.1 | ereswap | bnf
-
Hardware's mods research is costly. To support my work, please consider donating. Thank You!
 

The Following User Says Thank You to Estel For This Useful Post:
Posts: 915 | Thanked: 3,209 times | Joined on Jan 2011 @ Germany
#14
I believe this might be one part of the I/O solution:
http://superuser.com/questions/67659...rk/70657#70657
I guess the mouse could be forwarded just the same way the keyboard is forwarded there. The rest is simple X-forwarding.

However, this would require to set up an actual network connection between the two devices, not just a mass storage connection. I'm sure that's possible via USB somehow (I haven't checked). Edit: We have everything in house: http://wiki.maemo.org/N900_USB_networking /Edit

Any other interfaces wouldn't be really useful since all of them (Bluetooth, IrDA and (W)LAN) require additional hardware.

It would also require to intercept the inputs that are intended for the Raspberry before they accidentally do any funny things on the N900. But I guess that's no real issue. We'd need an extra application (that grabs all the inputs) anyway to control the Raspberry desktop since we need a mouse and the first thing that comes into mind is to use the N900's screen as a touchpad.


another idea:
The Raspberry PI model B comes with 256MB of RAM. A minimal Debian with X-Server and a lightweight WM (opebox, fluxbox, icewm etc) would leave us approximately 200MB of free memory. Assuming that we don't stream any data to our Raspberry that gives us additional 200MB of RAM connected via a 20-25MB/s USB interface. No idea if that would actually be faster than the swap partition when routed via an additional TCP interface and it should certainly be used with a lot of caution but I think it's worth a try.

Last edited by sulu; 2012-01-09 at 15:50.
 

The Following User Says Thank You to sulu For This Useful Post:
Posts: 362 | Thanked: 426 times | Joined on Nov 2010 @ Italy, Lombardia
#15
Originally Posted by Estel View Post
Quite interesting info - thanks for sharing. Yet, considering WiFi bandwidth limitation, I don't believe it's true "mirroring" (especially in case of videos decoded via N900 dsp) - it's too much for USB, not to mention WiFi.

Anyway, fortunately, using Raspberry Pi we should be able to achieve that with FOSS components, so we're not FCKD up, if some random guy decide, that he's not going to support Maemo. Not to mention, that I bet my left shoe, that his toy would be priced 2-3x of what we need to pay for Raspberry Pi.

/Estel
Bandwidth is not a problem since I suppose that external hw only receive a video stream like a film.
So 2-3mbit (H264) could be sufficient for an 800x480 video stream

I think that Apple's AirPlay works in the same manner, and we can try do it only on software (since it is only software even on Ipad2).

We need to record Omap gfx framebuffer with at least 30fps and encode that stream with a fast cpu based encoder (i.e. MJPEG to use low cpu) or with a dsp based encoder.

If you stream by WiFi what is displayed on N900's lcd, the external player (VLC on PC, Rasberry connected to TV, SmartTV ...etc) becomes like a Wireless HDMI for N900

A starting point: http://talk.maemo.org/showpost.php?p...01&postcount=9

Last edited by Fabry; 2012-01-09 at 22:06.
 

The Following User Says Thank You to Fabry For This Useful Post:
Estel's Avatar
Posts: 5,028 | Thanked: 8,613 times | Joined on Mar 2011
#16
Originally Posted by sulu View Post
However, this would require to set up an actual network connection between the two devices, not just a mass storage connection. I'm sure that's possible via USB somehow (I haven't checked). Edit: We have everything in house: http://wiki.maemo.org/N900_USB_networking

another idea:
The Raspberry PI model B comes with 256MB of RAM. A minimal Debian with X-Server and a lightweight WM (opebox, fluxbox, icewm etc) would leave us approximately 200MB of free memory. Assuming that we don't stream any data to our Raspberry that gives us additional 200MB of RAM connected via a 20-25MB/s USB interface. No idea if that would actually be faster than the swap partition when routed via an additional TCP interface and it should certainly be used with a lot of caution but I think it's worth a try.
Yea, USB networking is behind the main idea written in post 1 - mass storage mode was just mentioned in context of playing videos from N900, with would be more effective in a way that Raspberry Pi plays (decode) them, reading from N900 memory - due to bandwidth limitations.

As for using Raspberry RAM as faster swap, using X display forwarding on some pleasant resolution, would consume a part of said bandwidth. Still, it *should* be faster, ho ever, I agree than it require practical investigation. BTW, using superfast RAM over USB makes me - somehow - sad

Originally Posted by Fabry View Post
Bandwidth is not a problem since I suppose that external hw only receive a video stream like a film.
So 2-3mbit (H264) could be sufficient for an 800x480 video stream

I think that Apple's AirPlay works in the same manner, and we can try do it only on software (since it is only software even on Ipad2).

We need to record Omap gfx framebuffer with at least 30fps and encode that stream with a fast cpu based encoder (i.e. MJPEG to use low cpu) or with a dsp based encoder.

If you stream by WiFi what is displayed on N900's lcd, the external player (VLC on PC, Rasberry connected to TV, SmartTV ...etc) becomes like a Wireless HDMI for N900

A starting point: http://talk.maemo.org/showpost.php?p...01&postcount=9
General idea behind using X export display (and listening for it in Raspberry Pi), is that we get *real* display/desktop, not just a "video" of what is happening on N900. This way, we can change resolution (for example, on 1280x800 monitor, use it's native resolution), and don't suffer from all remote desktops pains.

Also, it seems that all (or 99%) tools to achieve it are already available. Of course, your suggestion got sense and I'm thankful for it - yet, it generates high additional overhead (generating quasi-video stream on N900 is resource intensive), and much less efficient than "real" display. So, IMO, virtual desktop like-solutions should be left as fallback, in case of lethal problems with exporting display.

/Estel
__________________
N900's aluminum backcover / body replacement
-
N900's HDMI-Out
-
Camera cover MOD
-
Measure battery's real capacity on-device
-
TrueCrypt 7.1 | ereswap | bnf
-
Hardware's mods research is costly. To support my work, please consider donating. Thank You!

Last edited by Estel; 2012-01-09 at 23:02.
 
Posts: 298 | Thanked: 197 times | Joined on Dec 2009 @ Norway
#17
TurboVNC or TigerVNC. I've played games smoothly over these protocols.
The best bet is to compile TigerVNC.
I dare you. If you have a VirtualGL server, like a Linux desktop, you can play all 3D games from there. On a large screen.
 
Estel's Avatar
Posts: 5,028 | Thanked: 8,613 times | Joined on Mar 2011
#18
OK, remote desktops are fine, but we're talking here about *true* display exporting. In a way, that things displayed by Raspberry Pi on screen connected to it through HDMI, are an additional "screen" of N900. Not clone, not copy, just another X display. With custom set resolution (not up/down scaled like in remote desktops), with 100% real time, with same possibilities that you have when You connect your notebook to external desktops, and choose to use something like dual-view (independent resolutions etc in both displays).

At the same time - I say it again at *same* time, i.e. while exporting display, Pi may be used as ethernet to USB adapter, faster swap through Pi RAM and remaining USB network bandwidth (unconfirmed, but nice idea by sulu), or plentora of other purposes.

and all of this for 25$ or 35$, depending on ordered version of Pi. Somehow, I'm a little surprised, that this idea isn't echoing in the community as much, as I've hoped it will. It seems to me, that people either don't understand what opportunities this gives, or aren't acknowledging it yet. For me, this is at least as important project, as Hostmode used to be.

I think it will gather more interest, after actual proof-of-concept examples/videos using actual Pi. That's why I called here for knowledgeable people help, cause I'm total noob when it comes to exporting X display (heck, it wasn't even my original idea, SpeedEvil proposed it during IRC talk - I just had idea to use Raspberry Pi *somehow* to to achieve things I've described, and was pleasantly surprised, that it should be actually possible using (mostly) existing FOSS tools).

Yet, I'm definitely going to test it myself no matter what - even if it's going to take ages, until I educate myself enough to have working results.

/Estel
__________________
N900's aluminum backcover / body replacement
-
N900's HDMI-Out
-
Camera cover MOD
-
Measure battery's real capacity on-device
-
TrueCrypt 7.1 | ereswap | bnf
-
Hardware's mods research is costly. To support my work, please consider donating. Thank You!
 

The Following User Says Thank You to Estel For This Useful Post:
dr_frost_dk's Avatar
Posts: 1,503 | Thanked: 2,688 times | Joined on Oct 2010 @ Denmark
#19
Can we get a guide to try it on the home linux boxes (i run nothing else )

A guide to how to hock up N900 to a computer and the X display "commands"

EDIT:
And for the Record i do grasp the many functions that are available with using the PI with our N900.
This is without a doubt the most awesome Addon to date
 

The Following User Says Thank You to dr_frost_dk For This Useful Post:
Posts: 362 | Thanked: 426 times | Joined on Nov 2010 @ Italy, Lombardia
#20
Originally Posted by Estel View Post
General idea behind using X export display (and listening for it in Raspberry Pi), is that we get *real* display/desktop, not just a "video" of what is happening on N900. This way, we can change resolution (for example, on 1280x800 monitor, use it's native resolution), and don't suffer from all remote desktops pains.

Also, it seems that all (or 99%) tools to achieve it are already available. Of course, your suggestion got sense and I'm thankful for it - yet, it generates high additional overhead (generating quasi-video stream on N900 is resource intensive), and much less efficient than "real" display. So, IMO, virtual desktop like-solutions should be left as fallback, in case of lethal problems with exporting display.

/Estel
I have replied with xBounds (or Apple's AirPlay) in mind, which I think it works as my solution.

Your solution is ok and probably low resource consuming, but it needs a linux-box (or a Pi) as receiver and will it work with Hw Accelerated effects or 3D (games) ?

My solution (if possible) requires only a video player (TV, VLC/MPlayer on PC, XBox 360, PS3, AppleTV, ...etc) and teorically works with 2D/3D Hw accelerated grafx.

It can be used also for a second screen.
I suppose that it is possible to allocate a second framebuffer on Omap Gfx, a framebuffer which isn't displayed to internal lcd but of course it is hw assisted by GPU + DSP.

Apple's AirPlay can play games at 1920x1080p on Ipad2.
Since AppleTV (the endpoint of AirPlay) is not a 3D Gfx, I suppose that Apple's software allocate the graphic framebuffer on A5 gfx card memory, does all 3D operations on tablet, and at the end encodes the resulting framebuffer as video stream to send to AppleTV to display natively @ FullHD
In the meantime Ipad2's lcd shows another image/framebuffer (i.e. the radar for an aircraft game).

Of course Ipad2 is much more powerful than N900, but I think that something can be done on N900 itself also

Last edited by Fabry; 2012-01-10 at 00:55.
 

The Following User Says Thank You to Fabry For This Useful Post:
Reply

Tags
dvi hdmi, external, monitor, raspberry pi, usb vga


 
Forum Jump


All times are GMT. The time now is 22:57.