How To Wiki
Register
Advertisement
Netflix merger netflix merger netflix merger netflix merger netflix merger net netflix merger

Running Netflix is entirely possible in Ubuntu Linux 12.04 (and most likely any other modern distribution). See the section below "Running with Wine".

Until recently there was no simple solution to watching streaming movies via Netflix (Watch Instantly) in Linux for any Linux distros besides Android based computers. Netflix has not released a player that will install natively in any of the others.

This is because they use Microsoft Silverlight plugin with DRM. Although there is a Linux alternative to Silverlight called Mono/Moonlight, it does not have any DRM built in and it is very unlikely Microsoft will ever make a DRM option for it. Netflix has stated they will not use anything without DRM. So if Netflix continues to use Silverlight, then there will be no official Linux support.

This is how to work around this problem in a very non-ideal way. It relies on running Windows in Linux. If you have a Mid to High end system this howto will probably play Netflix fine. If your system is Low end or an older system, this how to will still work, but video may be choppy. Audio will probably be fine.

Special note

Netflix does not currently offer support for Linux (as of 9/2012),

This how to is by NO means, in ANY way shape or form an official or supported way of running the Netflix: Watch Instantly feature natively in GNU/Linux.

Running with Wine

Using Ubuntu 12.04 simply follow the steps below:

sudo apt-add-repository ppa:ehoover/compholio

sudo apt-get update && sudo apt-get install netflix-desktop

Depending on each individual system's configuration and hardware, video quality may vary. The steps for installing or running Netflix with Wine listed below this line may be old or out-dated. (11/25/2012) http://www.iheartubuntu.com/2012/11/ppa-for-netflix-desktop-app.html

___________________________________________________________________________________________


It is also possible to run Netflix under Wine with a couple of extra patches to the latest source code tree.  Hopefully these patches will be included into Wine in the near future so that custom-compiling Wine is no longer necessary.

  1. Compile the latest version of Wine from the "git" repository with the following patches:
    [1/3] http://source.winehq.org/patches/data/91569
    [2/3] http://source.winehq.org/patches/data/91570
    [3/3] http://source.winehq.org/patches/data/91571
  2. Create a new Wine prefix
  3. Download and install a recent Windows version of Firefox:
    wget -O Firefox-14.0.1.exe http://download.mozilla.org/?product=firefox-14.0.1-funnelcake13&os=win&lang=en-US; wine Firefox-14.0.1.exe /S
  4. Download and install Silverlight 4 (Silverlight 5 does not work):
    wget -O Silverlight-4.exe http://silverlight.dlservice.microsoft.com/download/6/A/1/6A13C54D-3F35-4082-977A-27F30ECE0F34/10329.00/runtime/Silverlight.exe; wine Silverlight-4.exe /q
  5. Launch Firefox
  6. Login to Netflix and attempt to play a movie/show

Further details can be found on the two remaining bugs:

Also, see Erich Hoover's howto and PPA: http://www.compholio.com/netflix-desktop/


Alternate method tested in Fedora 17:

  1. Install GCC 4.5. Using the default (4.7) didn't work for me, but 4.5 did
    1. sudo yum install gcc mpfr-devel libmpc libmpc-devel glibc-devel
    2. wget http://www.netgull.com/gcc/releases/gcc-4.5.4/gcc-4.5.4.tar.bz2 (Substitute your closest mirror from http://gcc.gnu.org/mirrors.html)
    3. tar xjf gcc-4.5.4.tar.bz2
    4. cd gcc-4.5.4
    5. ./configure --program-suffix=45 --enable-languages=c,c++
      • This caused me some problems later on since apparently not everything gets properly isolated, maybe a better idea is to compile it with --prefix=/usr/local/gcc45 - if you do, adjust step below accordingly
    6. make
    7. sudo make install
  2. Compile latest Wine-git with all the proper patchesNote:
    1. git clone git://source.winehq.org/git/wine.git ~/wine-git
    2. cd ~/wine-git
      • Tested with commit 098b3c72941c810a8b4f2712e70654312bba5857. If you want to make sure you get the same, run
    3. Apply patches:
      1. wget -O part1.patch http://source.winehq.org/patches/data/91645 && patch -p1 < part1.patch
      2. wget -O part2.patch http://source.winehq.org/patches/data/91646 && patch -p1 < part2.patch
      3. wget -O part3.patch http://source.winehq.org/patches/data/91647 && patch -p1 < part3.patch
      4. wget -O part4.patch http://source.winehq.org/patches/data/91648 && patch -p1 < part4.patch
      5. git show e2900c23c7f0b143078da780c9a0ff19a895bf45 | patch -p1 -R
        • Some screwy patch from earlier doesn't let Silverlight setup run correctly, revert it
    4. ./configure CC=/usr/local/bin/gcc45 --prefix=/usr/local/wine-git
      • Better keep the patched version separate from the system-installed wine
    5. make
    6. sudo make install
  3. Download and install a recent Windows version of Firefox (exact version doesn't matter, so I used the most recent one):
    1. wget -O Firefox-16.0.2.exe https://download.mozilla.org/?product=firefox-16.0.2&os=win&lang=en-US
    2. WINEPREFIX=/home/<MY_USERNAME>/.wine-netflix /usr/local/wine-git/bin/wine Firefox-16.0.2.exe
      • WINEPREFIX=... to keep it isolated from other wine-installed programs
  4. Download and install Silverlight 4 (Silverlight 5 does not work):
    1. wget -O Silverlight-4.exe http://silverlight.dlservice.microsoft.com/download/6/A/1/6A13C54D-3F35-4082-977A-27F30ECE0F34/10329.00/runtime/Silverlight.exe
    2. WINEPREFIX=/home/<MY_USERNAME>/.wine-netflix /usr/local/wine-git/bin/wine Silverlight-4.exe
  5. Now you can finally run it:
    • WINEPREFIX=/home/<MY_USERNAME>/.wine-netflix /usr/local/wine-git/bin/wine C:\\Program\ Files\\Mozilla\ Firefox\\firefox.exe netflix.com

Running in a VM

The most common way to watch Netflix in Linux is by running it in a virtual machine. If you don't like it, complain to Netflix, not us. Their phone number is 1-866-716-0414 or you could sign the petition to add Linux support to Netflix. Petition to add Netflix "Watch Now" feature for Linux. Calling Netflix and signing the petition both is the best plan as the numerous times I've called has resulted in the call center person telling me that "...the more people who call and request linux as an option is noted by Netflix".

Other Methods

Other methods that DON'T work

  • Boxee (as of 9/2011)
    • Boxee only supports Netflix on Boxee Boxes (not outside US and Canada) and on Windows.
  • Mono/Moonlight (as of 9/2011)
  • ChromeOS virtual machine, and use the Netflix plugin
    • This does not work. Only the offical ChromeOS loaded onto a verified computer will run Netflix. (Mostly because all other computers lack the Netflix plugin, above is the 'official' report.)
  • Android SDK's Android emulator, and run the Android Netflix app
    • Android SDK
    • Android SDK's emulator
    • Note: This is rather unlikely to work on account of the slow speed of the ARM emulator.
    • Further note: this has been tested and does not in fact work with the current netflix app, which runs in the emulator, but fails when trying to play a movie (as of 9/2011)
  • Using a Playstation II emulator and a hacked Netflix disc iso
    • There is no PCSX2 network plug-in for Linux. Rom opens, but cannot connect (as of 11/2011)
    • PCSX2 and Netflix
  • XBMC
    • relies on silverlight
  • Using a Wii emulator and a Netflix disc iso
    • The Dolphin Emulator does not support networking

Other methods that may work

  • to be added purchase a netflix player like roku and connect it ti tour linux box with a dvb card

How to do it: Using a Windows virtual machine to watch Netflix

Using a virtual machineisanon-ideal solution, but it works. But if you have a Win-XP CD lying around its not so bad. Just think of it as running a really inefficient video player program, instead of a really backwards workaround.  

Requirements

  • Windows XP CD or ISO
  • Virtual Machine: Virtualbox
    • Alternative: You can use VMWare Player as the Virtual machine software
  • Microsoft Silverlight


Installing

  1. Install Virtualbox
    • Ubuntu or Debian: sudo apt-get install virtualbox
    • Gentoo: emerge app-emulation/virtualbox
    • Source:
  2. Start Virtualbox
    • Execute: sudo modprobe vboxdr
    • Execute: VirtualBox &
  3. Create WinXP virtual machine
    1. Click 'New'
    2. Click 'Next'
      • Name: Windows XP
      • OS Type: Windows XP
    3. Click 'Next'
    4. Base Memory Size: set as default
    5. Click 'Next'
    6. Click 'New...', to create a new virtual disk
    7. Click 'Next'
    8. Image Type: Dynamically....
    9. Click 'Next'
    10. Image File Name: where ever you wish to have it
    11. Image Size: 5GB
    12. Click 'Finished'
    13. Click 'Next'
    14. Click 'Finished'
  4. Install Windows XP onto the Virtual Machine
    1. Insert the 'Windows XP' install CD
    2. Click 'Start', to start the virtual machine
    3. This will boot the install CD in the virtual machine, install Windows XP on the virtual disk as you normally would
  5. Open this page in the virtual machine.
  6. Install required software and updates
  7. Go to Netflix and try view a video.
  8. Install any other required plug-ins if requested

   

Results of systems using this how to

You can list your results here, Please include Video Frames (rendered/dropped) and Bitrate at full screen. To find this out Alt-Shift-Left Click, then click A/V Stats.  

Systems that have choppy playback.

  • System: 1.6GHz Core 2 dual core CPU/Integrated Intel graphics chip
    • VirtualBox settings:512MB RAM alloted
    • Results: Video is a little choppy.
    • Statistical results: Video Frames (rendered/dropped): 18/6 @ Bitrate: 500 @ Full Screen
  • System: 3.3GHz P4 dual core CPU/nVidia GeForce FX 5200 video
    • VirtualBox settings: 256MB RAM alloted
    • Results: Plays choppy
  • System: 3.0GHz P4, 2GB ram (Kingston Hyperx; hyperthreading enabled)/512MB PCI express video card
    • Settings: VMware used instead of VirtualBox, 1024MB RAM alloted, Noveau driver used
    • Results: Plays choppy
  • System: 2.1GHz AMD Athlon 64 X2 4000+, 4GB RAM, NVIDIA GeForce 9500 GT
    • VirtualBox settings: 1500MB RAM allotted
    • Results: Plays choppy
    • Statistical Results: Bitrate 64/1750 (a/v) with frame 6/25 (rendered/dropped)
  • System: 2.6 GHz AMD Athlon 64 X2 5000+, 4GB RAM, NVIDIA GeForce 9400 GT/PCIe/SSE2
    • VirtualBox memory settings: 1000MB RAM allotted
    • VirtualBox audio setings: ALSA driver, ICH AC97 controller
    • Results: Mediocre video (although only slightly choppy); very slow steaming download speed leading to many interruptions and need to reload the page; terrible audio: constantly getting behind/garbled; playback cannot be paused (steaming stops).
    • Summary: Unacceptible, finally installed Windows XP on a separate partition, use grub to dual-boot (Linux or Windows XP)


If things get choppy, you may be able to renice the virtualbox command with -19 and get things straight.

Systems that work reasonably well

  • System: Intel 2.53GHZ Core 2 Duo, 512 MB Ram alloted to the VM. Integrated Video Card Intel GMA 4500MHD/Solid State HD
    • Settings: Recommend switching your audio driver from pulseaudio to ALSA so you can get synchronous audio, No 3D support installed on VM
    • Guest OS: Windows 7
    • Results: Video is smooth playback is fine
  • System: Intel i7 2GHz/4GB Ram
    • Settings: 1.2GB RAM alloted, Activated Direct3D support for Guest, Installed Guest Additions
    • Guest OS: Windows XP
    • Results: Watching Instantly in Full Screen, not choppy at all.
  • System: Intel(R) Core(TM) i7 CPU 950 @ 3.07GHz
    • Settings: Allocated 2GB Memory. 128Mb video memory
    • Results: Works great
  • System: Intel Pentium E6500 Dual Core @ 2.93 GHz/128MB ATI Fire GL V3400 PCI-EXPRESS GDDR3 DVI
    • Settings: default
    • Guest OS: Running Windows XP on Ubuntu 10.04.
    • Results: Works great
    • Statistical Results: Bitrate 64/1050 (a/v) with frame 20/10 (rendered/dropped) or alternatively bitrate 64/235 (a/v) and frame 25/5.
  • Systems: Intel Core 2 dual core, 2.133GHz/nVidai GeForce 6800
    • Settings: 512GB RAM Allocated, 2 CPUs, enabled PAE/NX, enabled VT-x/AMD-V, enabled Nested Paging, 128MB video RAM, enabled 2D and 3D acceleration, Guest additions installed without DirextX
    • Guest OS: Windows XP
    • Results: Works OK
    • Statistical results:
  • System: amd athlon II x2 250 3ghz dual core, onboard/integrated ATI radeon 3000, 256MB memory dedicated to video, 1920x1080 resolution, 4GB ram
    • Settings: default, vbox guest additions installed but no directx support, sp3, ie8, switched from pulseaudio to alsa to fix audio sync
    • Guest OS: Windows XP (under ubuntu 11.04)
    • Results: Works great full screen/HD
  • System: Intel Core i7 980X 4.27GHz (Hex core), 2x GTX 480 SLI (3GB VRAM), 12GB DDR3 1866MHz
    • Settings: 4GB RAM allocated, 4 CPUs, PAE/NX, VT-x/AMD-V, Nested Paging, 128MB VRAM +2D,3D acceleration, guest additions.
    • Guest OS: Windows XP SP3
    • Results: Playback is perfect in all scenarios
  • System: Intel i5-3570k, GeForce 8800 GT, 16GB DDR3
    • Settings: 8GB RAM allocated, 4 CPUs, IO APIC, PAE/NX, , VT-x/AMD-V, Nested Paging, 256 VRAM, 2D accelleration, guest additions.
    • Left PulseAudio, but changed audio controller to ICH AC97 -- had to download and install drivers from RealTek
    • Guest OS: Windows 7 64-Bit
    • Results: Great so far, need to try with less CPU and RAM dedicated to VM. Switching from having VM present Intel HD Audio to ICH AC97 made it go from crawling to looking great. Previously went in super-slow motion at any resolution, now fine at fullscreen 1920x1200. Even works in seamless mode. No sync issues.

Tips

  • Increasing alloted memory from 512MB to 1GB doesn't seem to make any difference
  • Enabling Direct3D acceleration in VirtualBox with Guess Additions will enable video acceleration in Silverlight and allow for HD playback. Using Guess Additions and WineD3D together might break video playback
  • Decreasing VirtualBox's window size improves playback
  • Running Silverlight seems to play the same in Firefox and Internet Explorer
  • Playing at a lower Bitrate improves playback
  • Running Windows XP SP3 and Google Chrome Netflix WebApp in kiosk mode improves presentability and performance
Advertisement