Casting to your ChromeCast in Chromium

I have a Google ChromeCast, it is an extremely convenient gadget to stream all sorts of audio and video to your television, regardless of its make or brand.
Today I learnt something new, so let me tell you about that. But an introduction first.

I have a media collection at home, stored on a big disk in my server, and I have a Universal Media Server (UMS) running on my Slackware LAN server to get access to my audio and video files.

Usually from my Android Smartphone (I have always only bought HTC phones and currently it’s a HTC 10) I connect to my movies using BubbleUPnP, a cool application for which I actually bought a license. BubbleUPnP is a UPnP controller, meaning it does not necessarily play video by itself, but it is able to connect a media source (the UMS server) and a media renderer (like a television) and control the playback as a ‘man in the middle’.
For this to work, your television must understand UPnP and be able to announce itself as such on your network, and act as a media renderer. Many of the ‘smart’ televisions sold today have this capability, but many older televisions need a bit of help.
Enter the ChromeCast, a smart Linux-powered device with a wireless network card which connects to your television’s HDMI port. Once connected to your Wi-Fi network, it acts as a UPnP media renderer which means you can stream audio and video to it. However dumb, your television receives the HDMI input from the ChromeCast and will ‘just’ play back what it receives.
The BubbleUPnP app on my phone manages this with great success, and other apps will suddenly also have an extra button on-screen. Such as your phone’s Netflix and Youtube apps, which allows you to watch Netflix or Youtube on a big tv-screen instead of your puny little phone screen.

Now on a laptop or desktop computer, it is a bit of a different story. Your application must be able to act as a UPnP client to allow it to find a ChromeCast and stream media to it. On Linux, I could not find many applications that will cast media to a UPnP renderer. VLC is one good example. Chromium is another good example.

Or so I thought, but I was unable to get Chromium to find my ChromeCast… I tried from time to time, and when it would not work, I would simply take my phone and stream from there. But today, I thought ‘I need to fix this’. So, some searching around on the Internet and I found the fix.

All that’s needed is to enable “chrome://flags/#load-media-router-component-extension“… just copy and paste that bold text into your Chromium URL entry field and you get this:

The default setting called “Default” obviously is not sufficient, so I set the value to “Enabled” and voila! My Chromium browser finds the ChromeCast and I can watch fullscreen movies from a browser tab.

I hope someone sometime searches for and finds this piece of information and benefits from it.

Eric

11 thoughts on “Casting to your ChromeCast in Chromium

  1. Pingback: Links 9/2/2019: Linux 4.4.174 and GTK+ No More (Now Just GTK) | Techrights






  2. This is as good a place to document it as anywhere else, so in case someone installs Universal Media Server (UMS) and has issues getting it to work with a LG Smart TV or with an Android device (in particular muxing external subtitles into the videostream and to solve the issue with LG WebOS that actually supports more formats), here are my patches for the renderer definitions:

    alien@hogan:$ diff  /usr/local/ums/renderers/LG-WebOS.conf{.orig,}
    44c44
    < Supported = f:mp4|m4v     v:h264|mp4                        a:aac-lc|he-aac                            m:video/mp4
    ---
    > Supported = f:mp4|m4v     v:h264|mp4                        a:aac-lc|he-aac|ac3                            m:video/mp4
    56c56
    < SupportedExternalSubtitlesFormats = SUBRIP,WEBVTT
    ---
    > SupportedExternalSubtitlesFormats = ASS,SUBRIP,WEBVTT
    alien@hogan:$ diff  /usr/local/ums/renderers/Google-Android.conf{.orig,}
    17a18,19
    > SupportedExternalSubtitlesFormats = SUBRIP,ASS,MICRODVD
    >

  3. # Default settings for chromium.
    # This file is sourced by /usr/bin/chromium

    # Options to pass to chromium:
    CHROMIUM_FLAGS=”–load-media-router-component-extension=1″

    place in ‘/etc/chromium/00-default.conf’



  4. lupox,
    Instead of editing ‘/etc/chromium/00-default.conf’ which is part of the chromium package and can be overwritten during upgrade, you should create your own file in ‘/etc/chromium/’ with file-extension ‘.conf’. In that file, add:
    CHROMIUM_FLAGS=”$CHROMIUM_FLAGS -–load-media-router-component-extension=1″

    Or, simply change the configuration like I showed. Less hassle if you ask me.



Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.