Linux Crumbs
Simbiotic - A Cyberpunk Thriller Novel

Streaming City TV Shows not working with Firefox on Linux

Summary

This article describes the problem of streaming City TV shows not working on linux, and provides instructions on how to fix this issue.

Update 2017-10-04: Update instructions and streaming TV shows test results.

Update 2017-04-02: These steps were originally documented for (k)ubuntu 12.04, updated for (k)ubuntu 14.04, and most recently updated for (k)ubuntu 16.04.

Contents

Problem

When trying to stream City TV shows, the advertisements display properly, but only a blank (black) screen is displayed for the actual TV show.

Note: City TV is a Canadian television station that limits web site viewing to IP addresses in Canada.

Root Cause

The reason this occurs is because either the use of the Flash Player has been deprecated, or the Flash Player fails to properly load the Adobe protected content module. Since City TV uses Brightcove.com to stream TV shows, and since these use Digital Restrictions Management, the TV shows will only display when the DRM content protection module is working properly.

Solution A - (New) Enable DRM in Firefox

With all the security issues that continue to arise with the Adobe Flash Player, many sites now discourage the use of Flash and instead implement a new form of DRM.

The fix to the City TV streaming problem requires enabling this new form of DRM in Firefox version 47 and higher.

The steps to fix this problem on Debian/Ubuntu are as follows:

  1. Ensure a recent version of Firefox and libavcodec is installed.

    If you keep your GNU/Linux distribution up-to-date then you can skip ahead to the next step.

    Check the version of firefox installed.
    dpkg -l | grep firefox
        
    Sample output follows:
    ii  firefox              56.0+build6-0ubuntu0.16.04.2    amd64    Safe and easy web browser from Mozilla
    ii  firefox-locale-en    56.0+build6-0ubuntu0.16.04.2    amd64    English language pack for Firefox
        
    At time of testing firefox v56.0 was installed.

    For Ubuntu 16.04:
        sudo apt-get update
        sudo apt-get install firefox libavcodec-extra
        
    For Ubuntu 14.04:
        sudo apt-get update
        sudo apt-get install firefox libavcodec-extra-54
        
    For Ubuntu 12.04:
        sudo apt-get update
        sudo apt-get install firefox libavcodec-extra-53
        
    Unfortunately on Ubuntu 12.04 I was unable to successfully stream City TV shows. Each time I tried, Firefox displayed the prompt "libavcodec may be vulnerable or is not supported, and should be updated to play video."

  2. Open Firefox menu and select Preferences.

    Edit -> Preferences.

    Firefox menu

  3. Select General on the left-hand-side, scroll down and enable Play DRM-controlled content.

    Firefox enable DRM

  4. Try to play TV shows from the City TV web site in your browser.

    These shows should now display properly.

    NOTE:   Streaming TV Shows Test

    On October 4, 2017 I successfully tested this native Linux solution with Firefox v56.0 by streaming shows from the following TV stations:

      City TV
      CBC
      CTV
      Global TV

    Unfortunately this solution might not work for streaming shows that require the Adobe Flash Player.

    Fortunately another solution exists.
    See Streaming CTV Shows not working with Firefox on Linux.


    TIP:   No Sound When Playing Video in Firefox?

    Firefox v52+ Goes PulseAudio Only, Leaves ALSA Users With No Sound

    To enable sound, install pulseaudio which can co-exist with alsa audio.

    sudo apt-get install pulseaudio


    You should now be able to watch City TV shows from Linux in Canada.

Solution B - (Old) Install HAL

Update 2017-04-02: This solution used to work, but with many sites discouraging the use of Adobe Flash Player, this solution no longer appears to work. This old solution has been kept in this article for historic purposes.

Update 2014-11-09: These steps were documented for (k)ubuntu 12.04. These steps will not work for (k)ubuntu 14.04. If you experience difficulties with streaming City TV shows on (k)ubuntu 14.04, see the solution for Streaming CTV Shows not working with Firefox on Linux.

On Linux the Flash Player requires the Hardware Abstraction Layer (HAL) to be able to properly load the Adobe protected content module.

The fix to the problem requires the installation of HAL and the removal of the ~/.adobe/Flash_Player/APSPrivateData2 directory.

The steps to fix this problem on Debian/Ubuntu are as follows:

  1. Open a terminal window.

    In the K Desktop Environment this can be done with the menu option: K --> System --> Konsole (Terminal).
  2. Remove the broken protected content module directory with the following command:
        rm -rf ~/.adobe/Flash_Player/APSPrivateData2
        
  3. Install HAL with the following command:
        sudo apt-get install hal
        

    NOTE:   Installing HAL requires root privilege.

    Prefixing the command with "sudo" will request root privileges.


    TIP:   The HAL daemon must be running for this solution to work.

    You can check if hald is running with the following command:

    ps -ef | grep hald

    If you do not see several output lines that include the word hald then you can start hald with the following command:

    sudo /usr/sbin/hald

    Please note that if hald does not automatically start on boot, then perform the following steps to ensure HAL starts on boot.

    Edit /etc/rc.local (for example using the kate text editor):

    sudo kate /etc/rc.local

    Locate the already existing line:

    exit 0

    And above this line add the following two lines:

    ---------- begin two lines ----------

    # Ensure HAL starts on boot
    /usr/sbin/hald

    ---------- end two lines ----------

    Save the file and exit the editor.


  4. Try to play TV shows from the City TV web site in your browser.

    These shows should now display properly.

    NOTE:   City TV shows still not working?

    If you still experience difficulty you might need to upgrade to a more recent version of the Adobe Flash Player. To do this try the following command in a terminal window:

              sudo apt-get install --reinstall flashplugin-installer
        

    UPDATE 2014-11-09: Recent Versions of Flash Player Work Again

    With the release of flashplugin 11.2.202.280, Adobe Protected Content ceased to work on my 64-bit kubuntu 12.04 GNU/Linux distribution. Fortunately more recent versions do work, such as flashplugin 11.2.202.411.

    For historical sake, the following instructions show how I fixed the problem back on May 3, 2013 by downgrading to flashplugin 11.2.202.275:

    1. Search the Internet for flashplugin-installer_11.2.202.275ubuntu0.12.04.1_amd64.deb
      and download the .deb file.
    2. Remove the existing flashplugin-installer package and manually install the .deb file.
          sudo apt-get remove --purge flashplugin-installer
          sudo dpkg -i flashplugin-installer_11.2.202.275ubuntu0.12.04.1_amd64.deb
        

    Streaming TV Shows Test

    On November 9, 2014 I successfully tested this native Linux solution by streaming shows from following TV stations:

      Global TV
      City TV
      CBC

    Unfortunately streaming shows did not work for the following TV station:

      CTV

    Fortunately another solution exists and also works for CTV. This other solution involves using wine. See Streaming CTV Shows not working with Firefox on Linux.


    You should now be able to watch City TV shows from Linux in Canada.

Background Information

I first encountered the problem of streaming City TV shows not working when I was building my first custom Personal Video Recorder (PVR) using Mythbuntu 11.04. The problem had me perplexed because my desktop running Kubuntu 11.04 worked perfectly.

Over many months I kept trying different things in an attempt to resolve this issue. The key came when I learnt that a basic Kubuntu 11.04 install did not work either. Hence something was different about my desktop install -- specifically that it had been upgraded from kubuntu 10.10.

What I discovered was that starting with Ubuntu 11.04 and higher (e.g., Ubuntu 11.10, 12.04, 12.10), HAL is no longer installed by default. As such fresh installs of these distributions will fail to play TV shows from City TV.

For me, diagnosing this City TV streaming problem was a drawn out and complicated process. While diagnosing the problem I found information in the following links to be valuable.

Brightcove Video Playback Troubleshooting

Brightcove Debugger

In the debugger, the relevant two lines that led me to the root cause were:

Handling DRM Metadata
Error: Error #3344 [3344] dispatched

Adobe Community: Unable to install the adobe protected content module

Adobe Community: Flash access support on linux (ubuntu)

troubleshoot Flash? -- This is where I originally posted my solution.

[#BOXEE-11347] citytv - black screen after commercials

[Extreme] Streaming CityTV on Rogers

Ads play, content does not

CITYTV won't work on Boxee Box?

[Cable] Citytv streaming?

CityTV not working

The Medusa Deception novel - free first in series
News   Documentation     Copyright (c) 2013-2024 Curtis Gedak

Get GParted at SourceForge.net. Fast, secure and Free
	Open Source software downloads Valid HTML 4.01! Correct CSS!