blob: d626941495d9c38aac2b5e935a3c7fd03e6368db [file] [log] [blame]
#!/bin/sh
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
# We might need to call this for YTLB as well for V4
verify_drm_state()
{
# If the certificate has changed we must remove all drm files
[ -e /user/drm/drmcert ] && read drmcert </user/drm/drmcert
# Bruno's sha1sum doesn't have check support
fscert=$(sha1sum /usr/local/licenses/playready.bin)
if [ "$drmcert" != "$fscert" ]; then
echo Certificate doesn\'t match current state, clearing files
rm -rf /user/drm/*
echo $fscert > /user/drm/drmcert
fi
}
read appname opts </tmp/runappold
hdsd_mode=1
# Use same output resolution as miniclient was using
case $VIDEO_RESOLUTION in
1920x1080p@24*) res=1080p ;;
1920x1080p@60*) res=1080p ;;
1920x1080i@60*) res=1080i ;;
720x480p@60*) res=480p ;;
720x480i@60*) res=480i; hdsd_mode=0 ;;
*) res=720p ;;
esac
echo "res='$res'"
export hdsd_mode
export DFBARGS="linux-input-ir-only,no-sighandler,mode=1280x720,res=$res"
# Install DFB /dev/input/event nodes
/usr/local/bin/directfb/1.4/rundfb.sh install
# Verify if we need to clear any activation data
[ -e /rw/sage/deactivate_netflix ] && /app/client/clear-app netflix
[ -e /rw/sage/deactivate_vudu ] && /app/client/clear-app vudu
[ -e /rw/sage/deactivate_youtube ] && /app/client/clear-app youtube
if [ "$appname" != "waitpower" ]; then
echo "Starting activity $appname"
start_time=`date +%s`
fi
case $appname in
netflix)
cd /usr/local/bin/netflix
export PATH=$PWD:$PATH
export sw_picture_decode=y
chmod 755 /user/netflix/nrd
verify_drm_state
netflix $opts 2>&1 | logos netflix
;;
vudu)
cd /usr/local/bin
export PATH=$PWD:$PATH
vudu $opts 2>&1 | logos vudu
;;
youtube)
cd /usr/local/bin/webkitGl2
[ -z "$opts" ] && opts='https://www.youtube.com/tv'
./start $opts 2>&1 | logos youtube
;;
waitpower)
echo 1 > /tmp/poweroff
;;
*)
echo "Unknown application." >&2
exit 1
;;
esac
if [ "$appname" != "waitpower" ]; then
echo "Exited activity $appname after $(( `date +%s` - $start_time )) seconds"
fi