Minimum Roku Video Channel


This is a minimum Roku channel that shows up on Roku TV home screen and plays HLS video.

Screen shot: http://riowing.net/p/MiniChannel2.mp4

Folder structure:

source/
main.brs is the only source file, in BrightScript language.
images/
two .png files. one as home screen tile, one as spalash screen when entering channel.
manifest: some meta data such as title and resolution.

A typical channel would have a components/ folder with .xml and .brs files. I moved the essential components into the main.brs file to keep the channel to minimum.
mian.brs: Main() is the entry point to create screen, which in turn creates Scene, which in turn creates Video, which has a ContentNode with HLS URL property.
Installation process: make a zip file and post it to HTTP plugin_install API of the Roku device.
All files can be downloaded from http://riowing.net/p/MinimumVideo.zip

 

Advertisements

Hulu is now a Disney company with 2/3 ownership


Hulu ownership was divided evenly between Disney, Fox, and Comcast, then ATT 10%
But now, Disney bought 21st Century Fox, and ATT sold its shares
Reference: https://www.theverge.com/platform/amp/2019/4/15/18312068/disney-hulu-att-sells-stake-comcast-control-streaming

vi going away


It will no longer be part of the base installs of GNU/Linux, retiring after 40 years of service.
The replacement is Visual Studio Code, or VsCode.
I am a big fan of VsCode:

Feels similar to Visual Studio, but open source.
Remote debugging: it can even remote debug Brightscript runninng on TV.
Portable: no setup.exe, no install
Cross platform

Reference: https://hackaday.com/2019/04/01/bye-bye-vi-gnu-linux-distros-drop-support

Safe Bool Idiom


How to allow if(myType), but disallow bool b = myType;
C++11’s solution is keyword “explicit” like so:
explicit operator bool() const;
This still allows if(myType) by taking advantage of the fact that there is already an explicit cast to bool with if.
This disallows implicit cast to bool, therefore disallows operation such as comparison and arithmetic operations.