Flash player (in Firefox) is unstable in 14.04

Solution 1:

Here's a script that installs the latest version of pepper flash on firefox. It might fix your problem. https://db.tt/rHEJ2e0l

to run it, open terminal, cd into the location where the script is and install type:

chmod +x freshplayer_maintainer.sh; ./freshplayer_maintainer.sh

and the rest should be self explanatory

Here is the code from Tatakai Wasumi's answer above, in case their dropbox link goes kaput.

#!/bin/bash
# ----------------------------------
# Author: Jonathan Soivilus
# This script facilitates the installation and maintenance of freshplayer plugin on Debian based systems
# Fresh player wrapper is mainly developed by i-rinat https://github.com/i-rinat/freshplayerplugin 
# Version 1.1
# To run this scrip, open the terminal type: chmod +x freshplayer_maintainer.sh; ./freshplayer_maintainer.sh


function install_plugin(){
  echo "Getting dependencies..."
  HWFILE=/opt/google/chrome/PepperFlash/libpepflashplayer.so;

  if [ -f $HWFILE ];then
     sudo apt-get install build-essential git cmake pkg-config libglib2.0-dev libasound2-dev libx11-dev libgl1-mesa-dev libgles2-mesa-dev liburiparser-dev libcairo2-dev libpango1.0-dev libpangocairo-1.0-0 libpangoft2-1.0-0 libfreetype6-dev libgtk2.0-dev libxinerama-dev libconfig-dev libevent-dev;
  else 
     sudo add-apt-repository -y ppa:skunk/pepper-flash;
     sudo apt-get update;
     sudo apt-get install --no-install-recommends pepflashplugin-installer;
     sudo apt-get install build-essential git cmake pkg-config libglib2.0-dev libasound2-dev libx11-dev libgl1-mesa-dev libgles2-mesa-dev liburiparser-dev libcairo2-dev libpango1.0-dev libpangocairo-1.0-0 libpangoft2-1.0-0 libfreetype6-dev libgtk2.0-dev libxinerama-dev libconfig-dev libevent-dev ragel;    
     sudo mkdir -p /opt/google/chrome/PepperFlash; 
     sudo ln -s /usr/lib/pepflashplugin-installer/libpepflashplayer.so /opt/google/chrome/PepperFlash;
  fi

  cd;

  git clone https://github.com/i-rinat/freshplayerplugin.git;

  cd freshplayerplugin; mkdir build; cd build; cmake ..; make; 

  echo ""

  while true
  do
  read -p "Install plugin system wide? [Y/N] " yn

    case "$yn" in
            y|Y)  sudo ln -s ~/freshplayerplugin/build/libfreshwrapper.so /usr/lib/mozilla/plugins
        break;;
            n|N)  mkdir -p ~/.mozilla/plugins; ln -s ~/freshplayerplugin/build/libfreshwrapper.so ~/.mozilla/plugins
        break;;
             * ) echo  -e $RED "Invalid Choice";;
    esac
  done

  echo ""
  echo "Installation complete!"
  echo ""

}

function uninstall_plugin(){
  rm -rf ~/freshplayerplugin;
  HWFILE=~/.config/freshwrapper.conf;
  FRESHFILE=/usr/lib/mozilla/plugins/libfreshwrapper.so;
  FRESHFILE2=~/.mozilla/plugins/libfreshwrapper.so;
  sudo rm -f $HWFILE $FRESHFILE $FRESHFILE2;
}

function update_plugin(){
  cd ~/freshplayerplugin; git pull; cd build; cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ..; make;
}
function enable_disable_hW(){
  HWFILE=~/.config/freshwrapper.conf;

  if [ -f $HWFILE ];
  then
     rm  $HWFILE;
    printf "Hardware acceleration DISABLED \n\n"
  else 
    echo exp_enable_3d = 1 > $HWFILE;
    echo "flash_command_line = \"enable_hw_video_decode=1,enable_stagevideo_auto=1\"" >>$HWFILE
    printf "Hardware acceleration ENABLED \n\n"

  fi
}


function enable_disable(){
  FILELOC1=~/freshplayerplugin/build/libfreshwrapper.so;
  FILELOC2=/usr/lib/mozilla/plugins/libfreshwrapper.so;
  FILELOC3=~/.mozilla/plugins/libfreshwrapper.so;


   if [[ -f $FILELOC2 || -f $FILELOC3 ]]; then
    sudo rm -f $FILELOC2 $FILELOC3;
    printf "fresh player plugin DISABLED \n\n"

  else 
  while true
   do
     read -p "Enable system wide or not [Y/N]: " yn
    case "$yn" in
            y|Y)sudo ln -s $FILELOC1 /usr/lib/mozilla/plugins 
        break;;
            n|N)  ln -s $FILELOC1 ~/.mozilla/plugins
        break;;
             * ) echo  -e $RED "Invalid choice";;
      esac
    done
    printf "fresh player plugin ENABLED \n\n"

  fi
}

k=1

clear

printf "Welcome to fresh player plugin Maintainer v1.1 \n\n"

PS3='Choose an option: '

options=("Install freshplayer plugin" "enable or disable hardware acceleration" "enable or disable plugin" "update plugin" "uninstall plugin" "Quit")

select items in "${options[@]}"

do
  case $items in
    "Install freshplayer plugin")
      install_plugin;
    ;;
    "enable or disable hardware acceleration")
      enable_disable_hW
    ;;
    "enable or disable plugin")
      enable_disable
    ;;
    "update plugin")
      echo "Updating fresh player plugin..."
      update_plugin
      echo ""
    ;;
    "uninstall plugin")
     echo "uninstalling plugin..."
      uninstall_plugin
     echo ""
     echo "fresh player plugin has been successfully removed from your system"
     echo ""
     ;;
    "Quit")
      break
    ;;
    *) echo  -e $RED "invalid option";;
  esac

  for i in "${options[@]}"
  do
    echo $((k++))")$i"

  done
  k=1;

done
clear

Solution 2:

These instructions will install Pepper flash player for Chromium and it will also be updated automatically. Because Google ended support for Chrome on 32-bit Linux in March, 2016, Pepper flash player can only be installed for 64-bit versions of Chromium.

To install flash player in Chromium web browser search the Dash for Software & Updates and open the Software & Updates window. Click the Other Software tab in the Software & Updates window and put a check mark in the checkbox to the left of where it says: Canonical Partners.

enter image description here

Click the Close button to close the Software & Updates window.

Open the terminal and type:

sudo apt remove pepperflashplugin-nonfree # remove pepperflashplugin-nonfree if it's installed
sudo apt-get update  
sudo apt-get install adobe-flashplugin   
sudo apt install browser-plugin-freshplayer-pepperflash # 16.04 and later   

Original answer

The more up-to-date Pepper Flash Player that can be installed together with Chromium Web Browser will run with fewer glitches (such as fullscreen doesn't work, buttons on video don't work, video hangs after pausing and then pressing the play button to resume, etc.) than Adobe Flash Player for many Flash videos.

You can install Chromium web browser together with the Pepper Flash Player in Ubuntu 14.04 from the Ubuntu Software Center. Open the Ubuntu Software Center and search for Chromium Web Browser and Pepper Flash Player - browser plugin and install them.

If a more recent version of Pepper Flash Player has been released and you want to update Pepper Flash Player to the latest version, you can do this from the terminal using the following command:

sudo update-pepperflashplugin-nonfree --install 

Pepper Flash Player cannot be updated with the following command anymore on 32-bit OSs since Google ended support for Chrome on 32-bit Linux in March, 2016. If you are using Ubuntu 32-bit were using Ubuntu 32-bit before March, 2016, you can update Pepper Flash Player to the latest version from the terminal using the following command:

sudo update-pepperflashplugin-nonfree:i386 --install

Either of these two commands will download the latest version of Google Chrome (the file is larger than 40MB) and then update only the Pepper Flash Player with the more recent version of Pepper Flash Player that comes with Google Chrome without installing Google Chrome.

If a more recent version of Pepper Flash Player has been released and you want to update Pepper Flash Player to the latest version, you can do this from the terminal using the following command:

sudo update-pepperflashplugin-nonfree --install 

If you are using Ubuntu 32-bit, you can update Pepper Flash Player to the latest version from the terminal using the following command:

sudo update-pepperflashplugin-nonfree:i386 --install

Either of these two commands will download the latest version of Google Chrome (the file is larger than 40MB) and then update only the Pepper Flash Player with the more recent version of Pepper Flash Player that is bundled with Google Chrome without installing Google Chrome.

If updating Pepper Flash Player to the latest version fails with an error like this:

ERROR: failed to retrieve status information from google : W: There is no public key available for the following key IDs:  
1397BC53640DB551  

It happens because Google changed its signing key. To fix it run the following commands:

gpg --keyserver pgp.mit.edu --recv-keys 1397BC53640DB551
gpg --export --armor 1397BC53640DB551 | sudo sh -c 'cat >> /usr/lib/pepperflashplugin-nonfree/pubkey-google.txt'

...and then try to update Pepper Flash Player to the latest version again.

Solution 3:

Here's a script that installs the latest version of pepper flash on firefox. It might fix your problem. https://db.tt/rHEJ2e0l

to run it, open terminal, cd into the location where the script is and install type:

chmod +x freshplayer_maintainer.sh; ./freshplayer_maintainer.sh 

and the rest should be self explanatory