OSDServer provides VDR OSD access to external programs and scripts through a
TCP/IP socket connection, just like an X server does. The connection protocol
is designed for easy interpretation by script languages and shell scripts.
OSDServer allows scripts to show messages, menus, and configuration dialogs, with lots of user interaction.
The examples folder contains a hello world sample in perl and an identical one in shell script
using netcat. This is the initial OSD of the sample:
This is the console output, where ">" is the communication from the script to OSDServer,
and "<" is the reply of OSDServer:
$ ./helloworld.pl
< 201 Welcome to OSDServer version 0.0.2, VDR version 1.5.5.
> Version 0.1
< 200 Ready.
> menu=New Menu 'Hello world'
< 200 Ready.
> menu.SetColorKeyText -blue 'Help'
< 200 Ready.
> menu.SetColumns 15
< 200 Ready.
> menu.EnableEvent keyBlue close
< 200 Ready.
> menu.AddNew OsdItem -unselectable '--- What do you think? --------------------'
< 200 Ready.
> opt1=menu.AddNew OsdItem 'This is awesome!'
< 200 Ready.
> opt1.SetCurrent
< 200 Ready.
> opt1.EnableEvent keyOk
< 200 Ready.
> opt2=menu.AddNew OsdItem 'You ain\'t seen nothing yet'
< 200 Ready.
> opt2.EnableEvent keyOk
< 200 Ready.
> opt3=menu.AddNew OsdItem 'All your OSD are belong to us'
< 200 Ready.
> opt3.EnableEvent keyOk
< 200 Ready.
> opt4=menu.AddNew OsdItem 'User comment: OSDServer is cool'
< 200 Ready.
> opt4.EnableEvent keyOk keyRed focus blur
< 200 Ready.
> menu.Show
< 200 Ready.
> menu.SleepEvent
The example script reacts on selection of the last menu item by setting the red button to "Edit", allowing to open a sub-menu where this menu item can be edited. By pressing OK, one item gets selected, and the script reacts by showing a matching message.
- 2011-08-1948kbvdr-osdserver-0.1.3.tgz
- Fix for VDR 1.7.20+
- Updates for Makefiles, warnings, etc.
- 2008-10-0447kbvdr-osdserver-0.1.2.tgz
- Fix for VDR 1.5.11+, string edit didn't work
- New: experimental OSDServer perl module bindings
- 2008-06-0841kbvdr-osdserver-0.1.1a.tgz
- Fix for VDR 1.5.15+, previously available as patch
- 2007-10-0741kbvdr-osdserver-0.1.1.tgz
- Fix stupid bug with menu.GetCurrent
- 2007-10-0641kbvdr-osdserver-0.1.0.tgz
- Local variable contexts
- _Focus pseudo variable referring to current menu
- osdserverhosts.conf and configurable port number
- Bug-fixes
- 2007-07-2138kbvdr-osdserver-0.0.2.tgz
- Input dialogs for text, numers and lists
- sub-menus, columns and color keys
- More complex event system
- 2006-11-2227kbvdr-osdserver-0.0.1.tgz
- Milestone 1 - very basic menus and messages