How can I set the live video feed from the ISS as my desktop background?

VLC has a wallpaper mode that allows to set any media it's currently playing as a wallpaper - the documentation mentions "DirectX" but I'm pretty sure that option exists on all platforms.

Now you need a way to open the stream directly inside VLC, unfortunately nothing is that easy and every streaming platform will do whatever they can to use their awful Flash-based solution.

However, they also need to provide streams for mobile devices that don't support Flash, and here's what this undocumented URL is for : http://iphone-streaming.ustream.tv/uhls/17074538/streams/live/iphone/playlist.m3u8.

Once you have the URL, you just need to put the VLC command line (with the wallpaper option) inside a shortcut in the Startup folder of your start menu.

Here's a preliminary command line I came up with, however it has several issues like not being fullscreen, so you'll have to tinker with the --zoom parameter (--width and --height have no effect unfortunately).

vlc --video-wallpaper --zoom 2 --no-osd --qt-start-minimized --qt-notification 0 --qt-system-tray http://iphone-streaming.ustream.tv/uhls/17074538/streams/live/iphone/playlist.m3u8

Open your Startup folder, you can just use copy/paste this path directly in your start menu to open it : %AppData%\Microsoft\Windows\Start Menu\Programs\Startup.

Create a new shortcut in that folder, it should point to vlc.exe, the path itself should be quoted and the options should be appended after the quoted path, like this :

"C:\Program Files\VideoLAN\VLC\vlc.exe" --video-wallpaper --zoom 2 --no-osd --qt-start-minimized --qt-notification 0 --qt-system-tray http://iphone-streaming.ustream.tv/uhls/17074538/streams/live/iphone/playlist.m3u8

Finally you can test your changes by clicking on the new entry you just created in your start menu (it's in the Startup folder), or log out and log back in.

Note that you have to enable display of the desktop icons, otherwise it won't work, not sure why.


There's an easier way that I found that involves downloading a screensaver that allows you to set html pages as your screensaver.

To get the feed to fill your entire screen, use the link for the pop-out rather than the channel. So for the ISS stream, you'd want to use:

http://www.ustream.tv/channel/live-iss-stream/pop-out

This method worked perfectly for me and required little set up.

EDIT: Just now realized he was looking for a solution to set it to the background, not a screensaver. However, I'll leave this up as it is extremely relevant.

Edit 2: Archive.org link since the website is now down.


Here is a way around using livestreamer. Se also this answer.

First step : installing livestreamer.

Install livestreamer

Simple HD stream with VLC :

This command displays High Definition Earth-Viewing System (HDEV) on full screen on wallpaper mode.

livestreamer http://ustream.tv/channel/iss-hdev-payload best --player 'vlc -I dummy --video-wallpaper --no-video-title-show --noaudio'

HD stream with Audio (crew/control conversations)

This displays the High Definition Earth-Viewing System (HDEV) and add sound from another stream, Live ISS, accompanied by audio of conversations between the crew and Mission Control.

livestreamer http://www.ustream.tv/embed/9408562?html5ui best --player "cvlc --no-video" & livestreamer http://ustream.tv/channel/iss-hdev-payload best --player 'vlc -I dummy --video-wallpaper --no-video-title-show --noaudio'

Bash ON/ OFF script (tested on Ubuntu)

#!/bin/bash
PS=`ps -ef`
if echo "$PS"|grep -q 'vlc -I dummy';
    then echo "off";
    kill $(ps aux | grep 'vlc -I dummy' | awk '{print $2}')
else echo "on";
    livestreamer http://www.ustream.tv/embed/9408562?html5ui best --player "cvlc --no-video" & livestreamer http://ustream.tv/channel/iss-hdev-payload best --player 'vlc -I dummy --video-wallpaper --no-video-title-show --noaudio'
fi

Improved bash script (Ubuntu specific)

(just select the path of a icon you want to be displayed with notifications, or delete the "Icon=" third line and both "-i $Icon" options)

#!/bin/bash
PS=`ps -ef`
Icon="/path/to/nasa_icon.png"

if echo "$PS"|grep -q 'vlc -I dummy';
    then notify-send -i $Icon "  ISS background OFF" \ "\"Houston, We've Got a Problem !\"";
    kill $(ps aux | grep 'vlc -I dummy' | awk '{print $2}')
else notify-send -i $Icon " ISS background ON" \ "Dowloading data from ISS...";
    livestreamer http://www.ustream.tv/embed/9408562?html5ui best --player "cvlc --no-video" & livestreamer http://ustream.tv/channel/iss-hdev-payload best --player 'vlc -I dummy --video-wallpaper --no-video-title-show --noaudio'
fi