Opening up WizTV for 3rd party development
Opening up WizTV for 3rd party development
I wanted to share some of my WizTV code, so that other developers can have a go at building things. I got an OK from Beyonwiz.
I'm not quite ready to make a release yet, but I would like to get "something" out there before Christmas. Here is a brief outline of what makes up WizTV:
Client side
Software in the Beyonwiz PVR consists of an engine that uses HTTP to download and parse a custom XML interface description. The user interface can contain text and JPG/PNG images. There are some simple layout mechanisms and some control over the theming of the controls. Resources are limited.
Server side
The server is a Linux machine running Apache 2 and PHP 5. Developers will need to provide their own server that is compatible, so having previous experience will be a bonus.
At this stage I would be interested in finding out who is interested in having a play and what you propose to build. Knowing about your skill set and previous experience would also be interesting, but this is certainly not a job interview.
My initial thoughts are that I would like to share what I have learned and allow others to learn and have a go at producing something. I really do not have resources to provide much support. You also need to realise that this is not an official or supported development platform from Beyonwiz. Anyway, I just thought I throw the idea out there and see what the interest is and what talent pool looks like.
I'm not quite ready to make a release yet, but I would like to get "something" out there before Christmas. Here is a brief outline of what makes up WizTV:
Client side
Software in the Beyonwiz PVR consists of an engine that uses HTTP to download and parse a custom XML interface description. The user interface can contain text and JPG/PNG images. There are some simple layout mechanisms and some control over the theming of the controls. Resources are limited.
Server side
The server is a Linux machine running Apache 2 and PHP 5. Developers will need to provide their own server that is compatible, so having previous experience will be a bonus.
At this stage I would be interested in finding out who is interested in having a play and what you propose to build. Knowing about your skill set and previous experience would also be interesting, but this is certainly not a job interview.
My initial thoughts are that I would like to share what I have learned and allow others to learn and have a go at producing something. I really do not have resources to provide much support. You also need to realise that this is not an official or supported development platform from Beyonwiz. Anyway, I just thought I throw the idea out there and see what the interest is and what talent pool looks like.
- tonymy01
- Uber Wizard
- Posts: 6373
- Joined: Fri Jun 01, 2007 15:25
- Location: Sydney, Australia DP-S1-1TB, DP-P2-2TB, DP-T4-2TB, DP-T4-BB... too many!
- Contact:
I was thinking it would be great to create various apps for the Wiz, but the biggest issue with application writing is there is no way of inputting anything, and no way of getting the output onto the screen, so using WizTV might be the way around this.
e.g. an ntp client that tells you the date/time adjustments
Wizremote error log or some other kind of logs
timer display screen (with different info to the WIz timer list), filelist display screen with filesizes etc etc. Essentially have WizTV (well, WizPeterU_TV) be a gui into third party applications that run on the Wiz (a bit like TAPs on the Topfield 5K).
But it may be a tad difficult still, the server essentially has to keep tabs on the status to provide stuff to feed back to the Wiz in order to display it. An odd way of going about things, but perhaps the only way of getting a user interface into potential applications that can run on the Wiz (given we have a compiler which is quite adequate in being able to compile stuff that can run on the Wiz).
Regards
e.g. an ntp client that tells you the date/time adjustments
Wizremote error log or some other kind of logs
timer display screen (with different info to the WIz timer list), filelist display screen with filesizes etc etc. Essentially have WizTV (well, WizPeterU_TV) be a gui into third party applications that run on the Wiz (a bit like TAPs on the Topfield 5K).
But it may be a tad difficult still, the server essentially has to keep tabs on the status to provide stuff to feed back to the Wiz in order to display it. An odd way of going about things, but perhaps the only way of getting a user interface into potential applications that can run on the Wiz (given we have a compiler which is quite adequate in being able to compile stuff that can run on the Wiz).
Regards
Tony
Hey Peter,
I'd be interested in having a look. Been a programmer for longer than I care to remember but also a family man, the two don't mix real well so no commitments from my end
Are there any plans to build a client side API at this stage? I'd imagine that custom tags within your current serverside API could be coded on the client end to expose 'useful' information and rudimentary functionality. As these tags etc mature I'd imagine that it'd be possible for XML files (usually pulled from the server) could be hosted locally, thus giving non internet types a degree of expandability.
Not sure if you're familiar of what TEAC/netgem have done previously in this area.
I'd be interested in having a look. Been a programmer for longer than I care to remember but also a family man, the two don't mix real well so no commitments from my end
Are there any plans to build a client side API at this stage? I'd imagine that custom tags within your current serverside API could be coded on the client end to expose 'useful' information and rudimentary functionality. As these tags etc mature I'd imagine that it'd be possible for XML files (usually pulled from the server) could be hosted locally, thus giving non internet types a degree of expandability.
Not sure if you're familiar of what TEAC/netgem have done previously in this area.
I should point out that all development is server side. The client side capabilities are fixed and provided by Beyonwiz Korea as part of the firmware. There is currently no API to execute any code on the client or to store any data on the client.
When I say that resources are limited, I really mean limited. We are talking about a maximum 256kB footprint!
BTW: I am familiar with a number of approaches to doing IPTV, EPGs, dynamic user interfaces and metadata driven presentation layers. (I've been designing these things for a couple of decades.) The Beyonwiz way is not conventional.
When I say that resources are limited, I really mean limited. We are talking about a maximum 256kB footprint!
BTW: I am familiar with a number of approaches to doing IPTV, EPGs, dynamic user interfaces and metadata driven presentation layers. (I've been designing these things for a couple of decades.) The Beyonwiz way is not conventional.
- tonymy01
- Uber Wizard
- Posts: 6373
- Joined: Fri Jun 01, 2007 15:25
- Location: Sydney, Australia DP-S1-1TB, DP-P2-2TB, DP-T4-2TB, DP-T4-BB... too many!
- Contact:
Peter, my ideas would be to put apps onto the Wiz HDD, and launch them (somehow), and then the I/O can be from app to HDD (or a daemon simply listening to requests on the network), then the PC server (via SMB, WizPNP, ftp or something similar) get the I/O (output file) from the WizHDD and then push the output via WizPeterU_TV.
The only issue is getting apps onto the WizHDD (pretty easy to do this bit) and to launch the apps (not so easy unless telnet, and then this defeats the purpose of having this scheme in the first place).
But the first app I would write would be to display all the files on the HDD with channel info and filesize, as I have been wishing for for eternity with this Wiz
Perhaps each file can be clickable, and this tells the PC server to delete the file, or rename the file etc, which I think is entirely possible also (could be renamed from server side like I would do in telnet, or simply the server gives instructions to a daemon... the same one giving the I/O out to the HDD or network... to do the job).
Regards
The only issue is getting apps onto the WizHDD (pretty easy to do this bit) and to launch the apps (not so easy unless telnet, and then this defeats the purpose of having this scheme in the first place).
But the first app I would write would be to display all the files on the HDD with channel info and filesize, as I have been wishing for for eternity with this Wiz
Perhaps each file can be clickable, and this tells the PC server to delete the file, or rename the file etc, which I think is entirely possible also (could be renamed from server side like I would do in telnet, or simply the server gives instructions to a daemon... the same one giving the I/O out to the HDD or network... to do the job).
Regards
Tony
- NigelSenior
- Master
- Posts: 130
- Joined: Tue Sep 11, 2007 12:52
- Location: North Coburg
I'm interested. I've no experience with Apache & PHP - but I've recently been teaching myself Google App Engine, Python, HTML & CSS (I am otherwise a C++ programmer).
I would like to do an app which enables access to Picasa Web albums (so my parents can see my photos). You would configure a User ID on the client, and then the WizTV server would get the RSS feed, and translate into a WizTV page. The client would access each image directly from the Picasa Web server (I assume that image URLs don't need to be served by WizTV).
This application could be run on the client - but as you say there are limited resources. Keep in mind that the Picasa Web server can handle resizing images to the client screen resolution.
I guess the initial target app would be to display a "slideshow" of images - where you click for next. It can probably be made stateless - if the next image "URL" sends an index to the server, and it downloads the RSS feed again (or accesses a cached copy).
Anyway, that said I've got a wife & kid, and other projects with no time on my hands. Hey, but I'd like to give it a go.
I would like to do an app which enables access to Picasa Web albums (so my parents can see my photos). You would configure a User ID on the client, and then the WizTV server would get the RSS feed, and translate into a WizTV page. The client would access each image directly from the Picasa Web server (I assume that image URLs don't need to be served by WizTV).
This application could be run on the client - but as you say there are limited resources. Keep in mind that the Picasa Web server can handle resizing images to the client screen resolution.
I guess the initial target app would be to display a "slideshow" of images - where you click for next. It can probably be made stateless - if the next image "URL" sends an index to the server, and it downloads the RSS feed again (or accesses a cached copy).
Anyway, that said I've got a wife & kid, and other projects with no time on my hands. Hey, but I'd like to give it a go.
This particular project has been on my radar for a while, I think it would be quite a practical application that does not sit in the geek territory.Scumbag wrote:I would like to do an app which enables access to Picasa Web albums (so my parents can see my photos).
If you grok C++ you'll have minimal trouble getting your head around PHP. Setting up an Apache + PHP server can be as easy as installing the free VMWare player and downloading an appliance image.
Re: Opening up WizTV for 3rd party development
Apache and PHP? How about a WizTV access to ToppyWeb? (just kidding)peteru wrote:Server side
The server is a Linux machine running Apache 2 and PHP 5. Developers will need to provide their own server that is compatible, so having previous experience will be a bonus
More seriously most worthwhile applications would need a Profile stored on the server (the Weather Favorite is a simple example of this). Profile management would in general be best done via the real web interface. An fairly simple example would be a "Weather Favourites" page instead of just a single Favourite.
What buttons on the remote can actually be sent to WizTV? Obviously OK, RECALL & FAV can but how many others?
Re: Opening up WizTV for 3rd party development
The supplied documentation is sparce but seems to suggest that all remote codes (referenced by name) can be used.j s wrote:What buttons on the remote can actually be sent to WizTV? Obviously OK, RECALL & FAV can but how many others?
cheers
DaveR
IceTV, T4, T3, T2, P2, S1, FV-L1(P1 fw), TRF-2460, HDR-7500 and Skippa
DaveR
IceTV, T4, T3, T2, P2, S1, FV-L1(P1 fw), TRF-2460, HDR-7500 and Skippa
-
- Wizard God
- Posts: 32714
- Joined: Tue Sep 04, 2007 13:49
- Location: Canberra; Black Mountain Tower transmitters
Re: Opening up WizTV for 3rd party development
Presumably the UP/DOWN/LEFT/RIGHT keys aren't sent, just used locally by the client.Dave? wrote:The supplied documentation is sparce but seems to suggest that all remote codes (referenced by name) can be used.j s wrote:What buttons on the remote can actually be sent to WizTV? Obviously OK, RECALL & FAV can but how many others?
Peter
T4 HDMI
U4, T4, T3, T2, V2 test/development machines
Sony BDV-9200W HT system
LG OLED55C9PTA 55" OLED TV
T4 HDMI
U4, T4, T3, T2, V2 test/development machines
Sony BDV-9200W HT system
LG OLED55C9PTA 55" OLED TV
Some buttons are intercepted at lower levels and their functionality can not be reassigned. From memory, exit, setup, mute and eject fall into that category.
None of the button presses are actually sent to the server - it will be revealed later. I'm still planning on releasing something in time for Christmas.
None of the button presses are actually sent to the server - it will be revealed later. I'm still planning on releasing something in time for Christmas.
Nope. It'd be handy, and save all the crashes and reboots. Developing a wiztv virtual development environment would take a lot of trial an error to replicate the undocumented behaviour of wiztv (including replicating all of the quirks and unexpected behaviour).glow wrote:Regarding the WizTv client side, is there a client that runs on a PC or in a web page so one doesn't have to tie up the TV?
cheers
DaveR
IceTV, T4, T3, T2, P2, S1, FV-L1(P1 fw), TRF-2460, HDR-7500 and Skippa
DaveR
IceTV, T4, T3, T2, P2, S1, FV-L1(P1 fw), TRF-2460, HDR-7500 and Skippa
- tonymy01
- Uber Wizard
- Posts: 6373
- Joined: Fri Jun 01, 2007 15:25
- Location: Sydney, Australia DP-S1-1TB, DP-P2-2TB, DP-T4-2TB, DP-T4-BB... too many!
- Contact:
yep. It wasn't me mind you, but a job very well done by the author.
I had some grand ideas about tapping into the local filesytem with it, but I think this is beyond its abilities (unless putting "tweaked" firmware in to run daemons in the background to look at WizTV output)... but last night had some ideas that would probably work, including providing an ICE Interactive interface to allow you to do interactive things from your couch rather than PC/Iphone/Smartphone.
Regards
I had some grand ideas about tapping into the local filesytem with it, but I think this is beyond its abilities (unless putting "tweaked" firmware in to run daemons in the background to look at WizTV output)... but last night had some ideas that would probably work, including providing an ICE Interactive interface to allow you to do interactive things from your couch rather than PC/Iphone/Smartphone.
Regards
Tony
Yeah, I'll take the credit for that (and blame for any bugs). Peteru extended it, and added the front-end.glow wrote:Was the hidden feature on the WizTV main menu a result of one of those takers?
I'm looking forwards to it being officially released, but they need to sort out the licensing and fine-print first.
The code is available for download. 'Though you'll need the Dev Kit to make use of it.
Excellent! WizTV is capable of setting timers so you could basically create your own epg (justepg style?). Or instead of clicking on a one-off program to send a msg to icetv.com.au to tell the wiz to set a timer next time it gets the timer list from icetv you could just set the one-off timer directly. You can even set weekly timers... though that defeats the purpose of interfacing with ice interactive.tonymy01 wrote:but last night had some ideas that would probably work, including providing an ICE Interactive interface to allow you to do interactive things from your couch rather than PC/Iphone/Smartphone.
cheers
DaveR
IceTV, T4, T3, T2, P2, S1, FV-L1(P1 fw), TRF-2460, HDR-7500 and Skippa
DaveR
IceTV, T4, T3, T2, P2, S1, FV-L1(P1 fw), TRF-2460, HDR-7500 and Skippa
- tonymy01
- Uber Wizard
- Posts: 6373
- Joined: Fri Jun 01, 2007 15:25
- Location: Sydney, Australia DP-S1-1TB, DP-P2-2TB, DP-T4-2TB, DP-T4-BB... too many!
- Contact:
That is me pontificating only. But it is possible, and I have the environment to set it up, and some of the knowledge to achieve it, and it won't require any wiz firmware hacking. So hang on just a bit longer (I have been promising to get out an official epg_uploader for the Topfield 5K for a while now, and now I have a bit of weekend time up my sleeve, might be able to get that one out the road and look at the wiz stuff from now on).
Tony
That's Peter's user name on dtvforums. Here and on the Toppy forum it's just download.diesel wrote:Who wrote JEPG for the Toppy....was it PGDownload?Dave? wrote: Excellent! WizTV is capable of setting timers so you could basically create your own epg (justepg style?).
Cheers
Gully
_____________
Beyonwiz U4
Logitech Harmony Elite
Google Pixel 6 Pro
Gully
_____________
Beyonwiz U4
Logitech Harmony Elite
Google Pixel 6 Pro
Yep. You could even ask the man himself.diesel wrote:However, is he the one that wrote JustEPG?
download's beyonwiz forum profile:
http://www.beyonwiz.com.au/phpbb2/profi ... file&u=954
download (aka Download on the toppy forum, aka PGDownload on the DTV forum, aka Peter Gillespie to the police ) wrote JustEPG, and a favourite of mine, DirLister, as well as being the inspiration behind my DialUpXML application.
cheers
DaveR
IceTV, T4, T3, T2, P2, S1, FV-L1(P1 fw), TRF-2460, HDR-7500 and Skippa
DaveR
IceTV, T4, T3, T2, P2, S1, FV-L1(P1 fw), TRF-2460, HDR-7500 and Skippa
I kept getting some error when trying to post.Gully wrote:Yes he is.diesel wrote:However, is he the one that wrote JustEPG?
(And stop trying to build up your post count with triplicate posts. )
BTW, I hooked up what was needed for the hidden feature to work on the other end - works nice except for as Tony pointed out, the loading screen popup. BTW, is there any way of doing a slideshow??
3TB T3 on 4.4.20160729FW
DP-P1 on .320FW & life support...
DP-P1 on .320FW & life support...
Yeah the board has been a bit flaky today so it can happen. Don't worry about it, just stirring.diesel wrote:I kept getting some error when trying to post.Gully wrote:Yes he is.diesel wrote:However, is he the one that wrote JustEPG?
(And stop trying to build up your post count with triplicate posts. )
Not so far.BTW, I hooked up what was needed for the hidden feature to work on the other end - works nice except for as Tony pointed out, the loading screen popup. BTW, is there any way of doing a slideshow??
Cheers
Gully
_____________
Beyonwiz U4
Logitech Harmony Elite
Google Pixel 6 Pro
Gully
_____________
Beyonwiz U4
Logitech Harmony Elite
Google Pixel 6 Pro