views:

191

answers:

3

Hi,

I want to code sth. that basically works like TiVo. Switch it on, you only see the menu or an output, so no underlying OS or anything else is directly visible to the user.

So I want to use Linux as base. Can you suggest a good base distribution?

  1. Can I code a frontend without having a window-manager up and running?
  2. If yes, is that possible with java-gnome or what language/gui-framework combination would you suggest?
  3. If no, what's the minimal window manager that can handle fancy menus, etc?
  4. What does it take to create video-overlays over a HD-stream? Are there some libraries I should take a look at?

Thanks

A: 
  1. Absolutely.
  2. I wouldn't count on Gnome itself working without a window manager. Other than that... language doesn't matter.
  3. Window managers only do window management. Menus and the like are the job of the widget toolkit. Anyways, Metacity.
  4. ... This one I have no clue about.
Ignacio Vazquez-Abrams
Your #1 is misleading. You can use GTK+ on DirectFB outside of X11, which obviously sidesteps the issue. But you can also use GTK+ (or probably any toolkit) just fine on X11 without a window manager.
Ken
Sure, but the window manager is *tiny* compared to Xorg itself. The trick is to get rid of X, not so much the window manager.
Ignacio Vazquez-Abrams
X is also not a big use of resources, most of what it uses are things that really belong to clients (like pixmaps) as for 4, look at GStreamer
Spudd86
+1  A: 

Minimalistic tiling window manages like Awesome, Ratpoison or XMonad may be useful as a base, otherwise you'll have to manage focus and window sizing yourself. It is normally fairly easy to make these invisible to the user.

Matthew S
+1  A: 
  1. Yes. If you only have one window you don't need a window manager. Using X you can start some application and set it's position and size from the commandline (making it fullscreen). You might want to take a look at xinit if this is what you want. This is likely the easiest why to get something working. But another option is skip X and use DirectFB. If you want to display several windows, on the other hand, you need some sort of window manager to manage them.

  2. As long as you run X there is no problem using java-gnome as framework if that's what you are confortable with. I guess you didn't mean to run the stock gnome applications, but code everything visible to the user yourself.

  3. This very much depends on what you mean with fancy menus. If you mean transparancy and such you need a composite manager (if you don't just render everything yourself inside your application window). I'm not sure about this but I think you can run a composite manager independent from a window manager if you find that suitable. Again, this is if you run X. Using DirectFB transparency and such are done in a more simple way.

  4. If you intend to write your own media player you should take a look at GStreamer. It can stream, decode and display video and also add video-overlays (among other things) and is extremly easy to use.

Grim
thanks for the detailed answer!
ShoX