mkChromecast on Ubuntu

It’s now possible to cast local video to Chromecast from the Ubuntu desktop.

The latest release of open-source Chromecast app Mkchromecast picks up the ability to stream video to any Chromecast equipped TV or Cast Ready speaker set.

We spotlighted Mkchromecast last year when we showed you how to cast desktop audio from Ubuntu (which, thanks to a handy tray applet, is super easy).

But if you’ve been wanting to know how to cast video to Chromecast from Ubuntu with mkChromecast well, read on to get set-up and streaming with the latest release.

What’s New in MKChromecast 0.3.7

Mkchromecast is a simple desktop program to cast system audio (and now video) to your Google Cast devices.

The latest version of this compact Chromecast tool comes with a crop of bug fixes, performance improvements and a few minor UI tweaks, including:

  • ALSA device configuration in Preferences.
  • Support for gstreamer capturing audio.
  • ALSA device can be set from system tray applet
  • Support for 192000Hz sampling rate
  • Video cast support
  • node is now a supported backend for streaming video
  • Sonos speakers support
  • FLAC codec supports bitrate

As you can see in the change-log above, latest version lets you cast local video files and online video to a Chromecast from macOS and Linux.

Download Mkchromcast for Ubuntu

There are multiple versions of Mkchromecast available for Ubuntu. The one you choose to use depends entirely on your set-up. In general, for most users, the catch-all installer linked below should work just fine.

Download Mkchromecast 0.3.7 for Ubuntu

Install Mkchromecast through Ubuntu Software. This ensures all of the dependencies (and there are a few) are installed at the same time, including python-pychromecast, the core library that powers this app.

If you plan on also casting audio streams from desktop apps you will need to install pavucontrol.

Builds for macOS are available from the project Github page.

Cast Video to Chromecast on Ubuntu

Mkchromecast 0.3.7 adds video cast support meaning that you can finally cast videos from your computer to a nearby TV. Video casting works both with node and ffmpeg backends.

Now for the ‘drawback’ bit: video cast support is a CLI feature. There’s (currently) not GUI for it.

The good news is that it’s deliciously straight forward to use.

First: make sure you have paired your Chromecast with Mkchromecast using the Mkchromecast tray applet, but make sure to quit the tray applet before trying to cast video or you’ll get conflicts, and things may screw up.

To cast video from Ubuntu to your Chromecast you just need to pop open a new Terminal window and run:

mkchromecast --video -i "/path/to/file.mp4"

You can specify a specific backend to process the video file (should you need to):

mkchromecast --video -i "/path/to/file.mp4" --encoder-backend ffmpeg

Want to cast video with subtitles? No problem; pass --subtitles flag and point the app to a matching .srt file:

mkchromecast --video -i "~/Videos/Example.mkv" --subtitles ~/Videos/Example.srt

If you want to cast a video file available from an online source you can do use the --source-url flag:

mkchromecast --source-url http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4 -c mp4 --volume --video

You can even cast YouTube Videos too — but be aware that this will download the YouTube video to your computer and then cast the local file to your TV:

mkchromecast -y https://www.youtube.com/watch?v=NxD_kWK8A5M --video

That’s pretty much it. Until VLC finally rolls out its native Chromecast support in desktop builds this remains one of the easiest ways (if not the only way) to cast video from Ubuntu to Chromecast.