Author Topic: event-osd r112 Released / now works with media library  (Read 19916 times)

June 01, 2009, 06:05:33 PM
Read 19916 times

elmarweber

  • Hero Member

  • Offline
  • *****

  • 500
    • WDTV Tools
The second release of event-osd is out. event-osd is a notification system for the WDTVs GUI that allows you to modify the OSD on the fly.

This release works with the media library enabled and should now work on all WDTVs with ext3-boot 0.9.2 and WDLXTV >= 0.5.2.

Besides the main bugfix some smaller changes have been made: app.event files are now converted with dos2unix, so if the file has Windows file endings it still works. Furthermore some system calls have been optimized so that there is less overhead when the directory changes.

You can download the new release from http://sourceforge.net/project/downloading.php?group_id=261153&filename=event-osd-r112-wdtv.zip.

As always, the documentation for developers is available at the Wiki at http://apps.sourceforge.net/trac/wdtvtools/wiki/event-osd.

June 01, 2009, 08:42:41 PM
Reply #1

ruffjustice

  • Newbie

  • Offline
  • *

  • 9
 HELLO, AND WHERE DO YOU LOAD THE UPGRADE SOFTWARE I TRY SETUP ORGINAL 1.08.8 SECTION AND NOTHING  ?

June 02, 2009, 12:01:55 AM
Reply #2

Dojo

  • Newbie

  • Offline
  • *

  • 2
Hey Elmar,
i was wondering if there is a possibility of modifying this app, so that it changes the covers and the text, if you select another movie. Currently the cover and the description stay the same.
This would be an awsome feature to improve the GUI for movie librarys.

June 02, 2009, 03:32:52 AM
Reply #3

Akeron

  • Newbie

  • Offline
  • *

  • 28
Wonderful! I'll try this evening.

By any chance, in the future, could we also have a trigger when we return to the directory that triggered the script?

I'm asking this, because currently my script calls another script in the background to set back the original wallpaper and xml after 2 seconds (as you recommended). So, when I've finished watching a movie or even if I stop the movie, I'm back with the original wallpaper and not the custom wallpaper... I would like to capture this event. Or maybe capture when we go back to the parent directory. I can then call the another script to set back the softlink to my original files, instead of always calling it from the triggered script...

Thanks! Great work.

June 02, 2009, 06:34:24 AM
Reply #4

elmarweber

  • Hero Member

  • Offline
  • *****

  • 500
    • WDTV Tools
HELLO, AND WHERE DO YOU LOAD THE UPGRADE SOFTWARE I TRY SETUP ORGINAL 1.08.8 SECTION AND NOTHING  ?

hm .. sure this is the right thread?

June 02, 2009, 06:47:09 AM
Reply #5

elmarweber

  • Hero Member

  • Offline
  • *****

  • 500
    • WDTV Tools
Hi Dojo,

Hey Elmar,
i was wondering if there is a possibility of modifying this app, so that it changes the covers and the text, if you select another movie. Currently the cover and the description stay the same.
This would be an awsome feature to improve the GUI for movie librarys.

just so I understand it correctly: you mean when navigating UP / DOWN in the current directory?

If that's what you mean: that's not possible with the same approach that event-osd uses because the OSD does not reload any XML files when the user changes the selection and I could not find any part in the memory where the currently selected file is stored.

However, you can get the current file (with some error margin) by monitoring the remote control (as AirSeb has done it). I'm in the process of writing an alternative to irset that would allow this and then integrate it into event-osd.

However, there are some limitations: you would not be able to change any text, only images. but since you can render text as an image its not a real problem.

ciao,
elm

June 02, 2009, 06:50:27 AM
Reply #6

elmarweber

  • Hero Member

  • Offline
  • *****

  • 500
    • WDTV Tools
By any chance, in the future, could we also have a trigger when we return to the directory that triggered the script?

I'm asking this, because currently my script calls another script in the background to set back the original wallpaper and xml after 2 seconds (as you recommended). So, when I've finished watching a movie or even if I stop the movie, I'm back with the original wallpaper and not the custom wallpaper... I would like to capture this event. Or maybe capture when we go back to the parent directory. I can then call the another script to set back the softlink to my original files, instead of always calling it from the triggered script...

As with the support for a notification in case of a file selection change (see post above) it would require a monitoring of the remote.

However, you can achieve what you do by simply changing the wallpaper URL in the file. Generate a (random) filename for your background image and then change the line

Code: [Select]
<page background="image/welcome_background_bg.jpg" type="basic">
to point to your new image. Since the OSD caches the XML for each directory, it loads always your old image if you navigate back.

ciao,
elm


June 02, 2009, 11:10:07 AM
Reply #7

NOKIA_LMT

  • Newbie

  • Offline
  • *

  • 5
I'm sorry to ask so stupid question, but... Is there is any tool for creating (or editing) XML files (movie info), required for this ISD-mod? Or all process is done manually?

P.S. Will be great to see somewhere a least mini-version of How-To, because at the moment all I know about this mod is only that I LIKE IT VERY MUNCH! :)

June 02, 2009, 01:06:17 PM
Reply #8

Akeron

  • Newbie

  • Offline
  • *

  • 28
However, you can achieve what you do by simply changing the wallpaper URL in the file. Generate a (random) filename for your background image and then change the line

Code: [Select]
<page background="image/welcome_background_bg.jpg" type="basic">
to point to your new image. Since the OSD caches the XML for each directory, it loads always your old image if you navigate back.

ciao,
elm

Clever trick! I didn't thought about this. I think it will indeed correct my problem. The XML caching is saving me ^^

Thanks!

June 02, 2009, 05:03:49 PM
Reply #9

elmarweber

  • Hero Member

  • Offline
  • *****

  • 500
    • WDTV Tools
I'm sorry to ask so stupid question, but... Is there is any tool for creating (or editing) XML files (movie info), required for this ISD-mod? Or all process is done manually?

Depends on what you mean by editing. You can modify the files by hand with any editor you want. If you're looking for a visual editor, something like Photoshop just for the OSD files, there is currently no such thing.
Or did you mean something else?

ciao,
elm


June 02, 2009, 05:05:12 PM
Reply #10

elmarweber

  • Hero Member

  • Offline
  • *****

  • 500
    • WDTV Tools
I reworked the how to into a more descriptive tutorial that shows you in a step by step introduction how to display the current directory name on the GUI:

http://wdtv.elmarweber.org/index.php/2009/event-osd-tutorial-available

June 02, 2009, 10:58:20 PM
Reply #11

LaurentG

  • Full Member

  • Offline
  • ***

  • 175
Hello elmarwaber.

Brad introduced in version 0.5.3.x of his firmware a mechanism to change dynamically the OSD when a variable is changed through config_tool. Then I use this mechanism to propose other dynamic changes, relying on exactly the same mechanism.

In few words, here is how it works: you have these files:
basic_browse_video_thumb.xml
basic_browse_video_thumb.8.xml
basic_browse_video_thumb.4.xml
When changing THUMBNUM to 8 for example, a "mount -o bind" is run to replace basic_browse_video_thumb.xml by basic_browse_video_thumb.8.xml

2 questions (I have not yet tested this mode with event-osd):
- do we need to do these changes now in /apps/event-osd/osd-backup insted of /osd when event-osd is here ?
- will the "mount -o bind" work well in /apps/event-osd/osd-backup ?

June 03, 2009, 01:47:21 AM
Reply #12

Akeron

  • Newbie

  • Offline
  • *

  • 28
Hi Elmar,

I've tried the release 112 with media library ON and now the event-osd process stops running after boot. The same environment worked with release 100 without media library OFF.

Currently, to avoid flashing too much, I'm FTPing my development scripts after a reboot of the WDTV, so the script triggered by event-osd does not exist when event-osd starts. This way, r100 stays alive but r112 not. Any idea? Or do I have to create my *.app.bin in order to do the development and have my triggered script copied before event-osd starts?

Thanks!

June 03, 2009, 04:59:26 AM
Reply #13

elmarweber

  • Hero Member

  • Offline
  • *****

  • 500
    • WDTV Tools
Hi Akeron ,

Hi Elmar,

I've tried the release 112 with media library ON and now the event-osd process stops running after boot. The same environment worked with release 100 without media library OFF.

Currently, to avoid flashing too much, I'm FTPing my development scripts after a reboot of the WDTV, so the script triggered by event-osd does not exist when event-osd starts. This way, r100 stays alive but r112 not. Any idea? Or do I have to create my *.app.bin in order to do the development and have my triggered script copied before event-osd starts?

Thanks!


no, that's not necessary, there is no check whether a script exists at startup. If it still does not exist when event-osd tries to execute it only an error is logged.

Can you post the /apps/event-osd/event_osd_fs.log file here? It'll make error analysis easier.

ciao,
elm
« Last Edit: June 03, 2009, 05:15:03 AM by elmarweber »

June 03, 2009, 05:14:41 AM
Reply #14

elmarweber

  • Hero Member

  • Offline
  • *****

  • 500
    • WDTV Tools
Hi LaurentG,

2 questions (I have not yet tested this mode with event-osd):
- do we need to do these changes now in /apps/event-osd/osd-backup instead of /osd when event-osd is here ?
- will the "mount -o bind" work well in /apps/event-osd/osd-backup ?

Yes, currently I'd recommend to make these changes in /apps/event-osd/osd-backup. You can do them in /osd too, but it could result in invoking a registered script with event-osd with a bogus path parameter. This will be fixed in a future version because then even-osd will check if the process that accesses the files is dmaosd and only then invoke the event listeners.
But there maybe another problem depending on when the binding occurs. When is this done during startup (in init or in an init.d script)?

mount -o bind works in  /apps/event-osd/osd-backup too, you can consider /apps/event-osd/osd-backup to be /osd because event-osd is simply a layer between the /apps/event-osd/osd-backup and /osd directory. Think of it like mount --bind with a fancy logging system and a few annoyances.

ciao,
elm