[screensaver] alternatives to the default screensaver

xyz321

Well-Known Member
How about the 1970s British Rail digital clock screensaver? Can we tinker with that at all?
It might be possible to do something with the screensaver. It just displays a sequence of png graphics files containing the numbers at various brightness levels. They could possibly be replaced with say all black versions or some other design.
 
I have just been trying a few experiments. I tried copying the pngs for '3' to '0'. It seems that the directory of images is read in by the app. at boot time. Also if I have a bind mount active to replace the original image directory then the TSR buffer stops working.

Edit: I'm not sure why the TSR buffer stops working - it now occurs with the original images. Probably something to do with the way I am restarting the app.
 
It might be a bit of a problem to implement in practice. The hard disk controller can only be turned on by the app. so the images would have to be stored elsewhere. There is not enough space on the writeable flash drive partitions.
 
Edit: I'm not sure why the TSR buffer stops working - it now occurs with the original images. Probably something to do with the way I am restarting the app.
Running the app from the command line by hand always breaks TSR. It turns off the DLNA server too such that it needs re-enabling in the menus in case that's relevant to you

It might be a bit of a problem to implement in practice. The hard disk controller can only be turned on by the app. so the images would have to be stored elsewhere. There is not enough space on the writeable flash drive partitions.
If it's just one small black image that needs binding over all of the screensaver ones then that could probably live in flash..
(personally I quite like it and can always turn the TV screen off through its power-saving options)
 
Running the app from the command line by hand always breaks TSR. It turns off the DLNA server too such that it needs re-enabling in the menus in case that's relevant to you
So it does, thanks for the heads up.
If it's just one small black image that needs binding over all of the screensaver ones then that could probably live in flash..
(personally I quite like it and can always turn the TV screen off through its power-saving options)
It might be three or four of different sizes but we could end up with something like 76 bind mounts though.

I quite like it too but it might be useful to turn the TV off when I fall asleep;)
 
It seems that the png files do not have to be in place before the humax app. is started. They are loaded by the app. when the screensaver first appears. This makes it easier since we are not limited by the available space on the flash drive.
 
I created a set of five alternative 'No. 2s' and tried to copy them to the /opt/share/images/blue directory but although each directory in the path seems to have R/W permissions, It keeps getting bounced with 'read only file system' error :-

Code:
humax# pwd
/opt/share/images/blue
humax# touch dummy-file.txt
cannot touch `dummy-file.txt': Read-only file system
humax#
 
Make a directory on the hard disk, say /mod/img. Then copy all the files in /opt/share/images/blue into that directory. Then you can bind mount that directory on top of the original 'blue' directory with:
Code:
mount --bind /mod/img /opt/share/images/blue
You can then make changes to /mod/img.
 
O.K. I created /mod/img and copied /opt/share/images/blue/* into it, replaced 5 files with my version and then entered mount --bind /mod/img /opt/share/images/blue which was accepted, but the screensaver did not show my numbers, I did not re-boot as that would lose the mount --bind so do I have to put the mount --bind into an /etc/init.d/S10mynumbers file and then re-boot before the Humax will use my numbers?
 
Yes, because the application seems to load the files the first time the screensaver appears and the only way to force a reload is to reboot. It should be fine to use /mod/etc/init.d/S10mynumbers
 
O.K. I created a file called /mod/etc/init.d/S15my-numbers containing mount --bind /mod/img /opt/share/images/blue and chmod 700 S15my-numbers, but when I re-booted the Humax the 5 replacement numbers in /tmp/img had been over-written with the originals ones e.g. /mod/img was an exact copy of /opt/share/images/blue/ again
 
I tried the same thing again and it worked, (can't explain why). The colours have changed as my original was red on Yellow, but hey, it did work


my-numbers.jpg
 
I have made a black screen saver, it seems to work pretty well apart from an occasional ficker on the TV's LED backlight. I have probably now reached the limit of my drawing abilities. :)
 
I have packaged up the black screensaver but it also includes a framework for including and selecting other screensavers. It is telnet only at the moment. To activate a different scrensaver type 'screensaver' and then choose one from the menu. The box may then need rebooting to finally make it active. Perhaps at some point we may be able to make a version for the web interface.

To add a new screensaver; create a package which contains the screensaver files in the directory /mod/screensaver/<name>. The screensaver command creates symlinks in /mod/img to the selected screensaver in /mod/screensaver/<name>. Normally this is a one-to-one mapping but if you require something different (e.g. the Black screensaver has 76 links mapping on to 4 png files) then create an 'install.sh' script in the /mod/screensaver/<name> directory. The new package should also contain a 'postinst' script which includes 'screensaver "<name>"' and a 'prerm' script containing 'screensaver "Humax Default"'. Finally the new package should include 'screensaver' in its list of dependecies.

Ezra if you are going to use this, before installation please make sure that the bind mount is not active and that /mod/img is empty or does not exist.

The new package should appear in the repository soon.

PS. Your neon screensaver is very nice.
 
Back
Top