K, I think I'm satisfied with this.
http://www.2shared.com/file/1Tdn1jkD/mlbhls-nhltar.html
http://www.2shared.com/file/e9Rw4J89/plu...-mlbt.html
extract plugin.video.nhl-gamecenter-mlb.tar.gz to your addons directory as you would a normal script.
extract mlbhls-nhl.tar.gz somewhere and compile it (you need the libraries that are included below, i.e. config, curl, crypto and math).
apokalypse@destruction:~/temp$ cd mlbhls-nhl
apokalypse@destruction:~/temp/mlbhls-nhl$ make
gcc -O2 mlb.c utils.c output.c -lm -lcurl -lcrypto -lconfig -o mlbhls
mlb.c: In function 'mlb_refresh_playlists_thread':
mlb.c:345: warning: format '%lld' expects type 'long long int', but argument 2 has type 'size_t'
apokalypse@destruction:~/temp/mlbhls-nhl$ ./mlbhls
Usage: ./mlbhls [options] -B <base64> -o <output_file>
Required:
-B, --base64 base64 url
-o, --ouput File to output to
Options:
-V, --verbose Verbose output (big V, use multiple times to increase verbosity)
then, as root, copy 'mlbhls' to /usr/bin or somewhere in your $PATH.
Changes
Two different links show up for Home and Away feeds. You can stream the game in it's entirety '(start)', or by selecting the '(stream)'. The start will skip the first 50 minutes worth of video, as most streams start 50-60 minutes before the broadcast feed kicks in. I'd only recommend streaming from the start if you are going to tune in right as the game is about to start.
If you select stream, it'll buffer the last 20 seconds (2 URLs) worth of video. This is hardcoded in the addLinkExt() calls with the '2' at the end.
It'll sleep for about 5 seconds before launching the player, so don't freak out. It's just giving the mlbhls program enough time to download from the streams and write to disk. The download file is written to /tmp/output, and cleaned up afterwards. There's also a log for mlbhls written to /tmp/hls.log.