widevine not initalizing with 0.2.5

Bug #1284600 reported by Alexander Nolting
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Pipelight
Expired
Undecided
Unassigned

Bug Description

Hello Team,

I struggeling with the widevine plugin. Pipelight complains about it's unable to initialize the widevine plugin. The second problem I have is that I don't find the console where the errors from the registered mime type should appear if you enable error logging in pipelight config.
If i start firefox with --jconsole or use Web Developer menu to show the error console then there are no errors logged by pipelight.

My OS: openSUSE 13.1, pipelight 0.2.5
Graphics Card: NVDIA NVS-160M, nvidia driver 331.49
Kernel: 3.13.4
KDE 4.12

sudo pipelight-plugin --list-enabled
root's password:
silverlight5.1
flash
unity3d
widevine
shockwave

pipelight-plugin --list-enabled
no enabled plugins

/usr/lib/wine-pipelight/bin/wine --version
wine-1.7.13

config file:
#
# Enables a diagnostic mode which might be helpful to find an
# error in the configuration or installation.
# To get the error messages go to: http://fds-team.de/pipelight
#
# Information for advanced users: The diagnostic page embeds the plugin
# of type "application/x-pipelight-error" to trigger the output of some
# debug information. The plugin cannot be triggered if everything is
# working, so this only affects users with a broken installation.
# The debug output will include paths on the local filesystem and the
# linux distribution used. If you don't want to leak this information
# accidentially in case of a broken installation please either uninstall
# Pipelight or disable the diagnosticMode. [default: false]
#
diagnosticMode = true

#
# Path to the wine directory or the wine executable. When you
# specify a directory it should contain /bin/wine.
#
winePath = /usr/lib/wine-pipelight/bin/wine

#
# Path to the wine prefix containing Widevine
#
winePrefix = $HOME/.wine-pipelight/

#
# The wine architecture for the wine prefix containing Widevine
#
wineArch = win32

#
# DLLs to overwrite in Wine
# (prevents Wine from asking for Gecko, Mono or winegstreamer)
#
wineDLLOverrides = mscoree,mshtml,winegstreamer,winemenubuilder.exe=

#
# Path to the plugin loader executable
# (Should be set correctly by the make script)
#
pluginLoaderPath = /usr/share/pipelight/pluginloader.exe

#
# Path to the runtime DLLs (libgcc_s_sjlj-1.dll, libspp-0.dll,
# libstdc++-6.dll). Only necessary when these DLLs are not in the same
# directory as the pluginloader executable.
#
gccRuntimeDlls = /usr/i686-w64-mingw32/sys-root/mingw/bin

#
# Path and name to the Widevine library
#
dllPath = C:\windows\system32
dllName = npwidevinemediaoptimizer.dll

#
# Name of the registry key at HKCU\Software\MozillaPlugins\ or
# HKLM\Software\MozillaPlugins\ where to search for the plugin path.
# (Not supported by Widevine as it is distributed as user specific
# browser extension)
#
# regKey =

#
# Widevine does not offer any version number to the browser
#
# fakeVersion =

#
# overwriteArg allows to overwrite/add initialization arguments
# passed by websites to Widevine applications.
#
# overwriteArg =

#
# windowlessmode refers to a term of the Netscape Plugin API and
# defines a different mode of drawing and handling events.
# [default: false]
#
windowlessMode = false

#
# embed defines whether the Widevine plugin should be shown
# inside the browser (true) or an external window (false).
# [default: true]
#
embed = true

#
# Path to the dependency installer script provided by the compholio
# package. (optional)
#
dependencyInstaller = /usr/share/pipelight/install-dependency

#
# Dependencies which should be installed for this plugin via the
# dependencyInstaller, can be used multiple times. (optional)
#
# Useful values for Widevine are:
# wine-Widevine-installer
#
dependency = wine-widevine-installer

#
# Doesn't show any dialogs which require manual confirmation during
# the installation process, like EULA or DRM dialogs.
# [default: true]
#
quietInstallation = false

#
# In order to support browsers without NPAPI timer support
# (like Midori) we've implemented a fallback to
# NPN_PluginThreadAsyncCall. In the default configuration
# a timer based approach is preferred over async calls and the
# plugin decides by itself which method to use depending on the
# browser capabilities. Setting the following option to true
# forces the plugin to use async calls. This might be mainly
# useful for testing the difference between both event handling
# approaches. [default: false]
#
# eventAsyncCall = true

#
# The opera browser claims to provide timer functions, but they
# don't seem to work properly. When the opera detection is
# enabled Pipelight will switch to eventAsyncCall automatically
# based on the user agent string. [default: true]
#
operaDetection = true

#
# Minimal JavaScript user agent switcher. If your page doesn't check
# the user agent before loading a Widevine instance, you can use
# this trick to overwrite the useragent or execute any other Java-
# Script you want. You can use this command multiple times.
# Uncomment the following 4 lines for FF15 spoofing.
#
# executejavascript = var __originalNavigator = navigator;
# executejavascript = navigator = new Object();
# executejavascript = navigator.__proto__ = __originalNavigator;
# executejavascript = navigator.__defineGetter__('userAgent', function () { return 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1'; });

#------------------------- EXPERIMENTAL -------------------------
# Watch out: The following section contains highly experimental
# stuff! These functions are likely not working properly yet and
# might be removed at any time.

#
# Widevine expects that the browser calls SetWindow() immediately after
# initializing the plugin. [default: false]
#
experimental-forceSetWindow = true

#
# A sandbox is a method to isolate an untrusted program from the rest of
# the system to prevent damage in case of a virus, program errors or
# similar issues. We've been developing the ability to use a (self-created)
# sandbox, but this feature still has to be considered experimental.
# The feature will only be used when the sandbox path exists.
#
sandboxPath = /usr/share/pipelight/sandbox

Revision history for this message
Sebastian Lackner (slackner) wrote :

Hi,

I cannot see any obvious error in the config file. I would suggest you to create a log file containing the terminal output (not the JavaScript console!).

To create a log at first make sure that all browser windows are CLOSED. Then run:

# Make sure firefox reloads the plugin (default behaviour is that plugins which failed once are not loaded again)
sudo pipelight-plugin --create-mozilla-plugins

# Start firefox, log output of stdout/stderr to file
firefox &> pipelight.log

Then try to trigger the error, for example by visiting a page using Widevine or opening about:plugins.
After this you can close the browser and attach the file "pipelight.log" to this bug report.

Sebastian

Revision history for this message
Alexander Nolting (a-nolting) wrote :

Attached about:config view

Revision history for this message
Alexander Nolting (a-nolting) wrote :

attached pipelight.log

Revision history for this message
Sebastian Lackner (slackner) wrote :

Hi,

at first you should run:
sudo pipelight-plugin --update
sudo pipelight-plugin --create-mozilla-plugins

The first command will update the plugin database, the second one is again to force reloading the plugin by the browser.
This hopefully should resolve the problem with Unity3D, where the checksum was changed recently:

[install-dependency] Downloading and running wine-unity3d-installer.
[install-dependency] ERROR: Downloading failed multiple times - please check your internet connection.
[install-dependency] ERROR: Download of wine-unity3d-installer failed.

The problem with Widevine is a bit weird, because the mirror seems to be okay for me. Can you please download the following file manually:

https://dl.google.com/widevine/6.0.0.12442/WidevineMediaOptimizer_Win.xpi

And afterwards check the sha256sum by running from a terminal:
sha256sum WidevineMediaOptimizer_Win.xpi

The expected output should start with:
84cde1b83d8f5e4b287303a25e61227ce9a253268af6bd88b9a2f98c85129bc8

Do you get a different version? If you get the same checksum, just run:
cp WidevineMediaOptimizer_Win.xpi /tmp/pipelight-wine-widevine-installer.zip
sudo pipelight-plugin --create-mozilla-plugins

And restart the browser one more time. Pipelight should then find the file in /tmp/ and continue the installation.

Sebastian

Revision history for this message
Alexander Nolting (a-nolting) wrote :

Hi Sebastian,

updating pipelight plugins fails with the following error message from wget:

anolting@linux-gwd0:~> sudo pipelight-plugin --update
root's password:
--2014-02-25 16:56:16-- https://bitbucket.org/mmueller2012/pipelight/raw/master/share/install-dependency.sig
Auflösen des Hostnamen »bitbucket.org (bitbucket.org)«... 131.103.20.167, 131.103.20.168
Verbindungsaufbau zu bitbucket.org (bitbucket.org)|131.103.20.167|:443... verbunden.
FEHLER: Kann das Zertifikat von »bitbucket.org« nicht prüfen, ausgestellt von »»/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert High Assurance EV CA-1««:.
  Die Authorität des Ausstellers des Zertifikates kann lokal nicht geprüft werden.
Verwenden Sie »--no-check-certificate«, um zu dem Server »bitbucket.org« eine nicht gesicherte Verbindung aufzubauen.

ERROR: Failed to download latest dependency-installer script
anolting@linux-gwd0:~>

Revision history for this message
Sebastian Lackner (slackner) wrote :

It really seems to be a bit weird, why wget doesn't know this certificate. The certificate normally should work well (you can also test the URL in your browser).

I would suggest the following workaround:

Open pipelight-plugin in an editor with root rights, for example:
sudo nano /usr/bin/pipelight-plugin

Then search for this line (should be line number 10):
DEPENDENCY_INSTALLER_URL="https://bitbucket.org/mmueller2012/pipelight/raw/master/share/install-dependency.sig"

And replace "https" with "http". It will still be secure because the downloaded file contains a signature created by us - if it is not present the installation will be refused. Save the modified file and retry.

NOTE: When you reinstall pipelight later this modification will not be preserved. To solve this problem in the long term I would suggest to check if you're probably missing a package containing all the SSL certificates.

Revision history for this message
Alexander Nolting (a-nolting) wrote :

Ok! Got this SSL issue fixed. Had to for some reason to re-install all *-certificate*-* related packages. Now wget is working and the dcript has been updated.
Now I will your message in #4.

Revision history for this message
Alexander Nolting (a-nolting) wrote :

I got now unity3d and widevine to be initialized. But unfortunately there seems to be an error streaming video with widevine. Now I get inside the player: Es ist ein Fehler aufgetreten. Leider kann das Video derzeit nicht abgespielt werden.

Revision history for this message
Alexander Nolting (a-nolting) wrote :

new pipelight.log

Revision history for this message
Sebastian Lackner (slackner) wrote :

I don't see where in the last log Widevine or Unity3D was initialized properly. For me it looks like you're still stuck at the same problem as before.

I would suggest to join our IRC channel #pipelight on IRC freenode to help you find out where the problem is exactly. You can also use a webchat ( http://webchat.freenode.net/?channels=%23pipelight ) if you want to, but please with a different browser than the one you're using for testing.

Revision history for this message
Alexander Nolting (a-nolting) wrote :

yet the new pipelight.log

Revision history for this message
Alexander Nolting (a-nolting) wrote :

Sorry, added accidentally the wrong log file.

Revision history for this message
Sebastian Lackner (slackner) wrote :

With the new log everything seems to be okay at first sight.

Which browser are you using, and which version of the Flash plugin?

Moreover, do you have HTTPSEverywhere, NoScript, ... or something similar enabled? If yes, then disable it. This will not work in combination with most of the NPAPI plugins.

I would also suggest to try a user agent switcher (as described here: https://answers.launchpad.net/pipelight/+faq/2351 ) if you haven't installed one yet.

If there is some public available testing page, I can also check if it works over here, if you give me the link.

Revision history for this message
Alexander Nolting (a-nolting) wrote :

The browser is Firefox 27 and yes, I have No-Script, Ghostery and Ad-block installed and running. I follwod that page already and added also the two user agent strings to User Agent Overrider. I will gave Horizon TV another try without the all these plugins enabled except UAOverrider but the video will not start.

Please send me a pm for a test website.

Revision history for this message
Alexander Nolting (a-nolting) wrote :

Hi Sebastina,

can you try this page: https://www.widevine.com/demo/index.html?

As I tried to use the demo, the widevine plugin consumed 50% of each CPU and did nothing in the end. But for Horizon TV is isn't working at all. Here comes simply the message, that the video couldn't played yet.

Regards
Alex

Revision history for this message
Sebastian Lackner (slackner) wrote :

Hi,

as you can see on the following screenshot it works plays well over here (in this case widevine + pipelight flash, but if I recall correctly it also worked with other flash versions and combinations):
https://dl.dropboxusercontent.com/u/21447213/widevine-pipelight.png

I really would suggest you to join our IRC channel #pipelight on IRC freenode to help you find out where the problem is exactly. If you want to use the webchat see above my previous message above.

Sebastian

Revision history for this message
Michael Müller (mqchael) wrote :

Hi,

does this problem still persist?

Michael

Changed in pipelight:
status: New → Incomplete
Revision history for this message
Alexander Nolting (a-nolting) wrote :

Hello Michael,

the widevine plugin is now loading and can be initialized. But it will not work with horizon tv in switzerland.
There must be an issue with identification of the operating system and/or the user agent.

After the plugin has been loaded the vidoe box will be replaced with a n error message saying that there was an erro and the video couldn't be started.

regards
Alex

Revision history for this message
Sebastian Lackner (slackner) wrote : Re: [Bug 1284600] Re: widevine not initalizing with 0.2.5
Download full text (8.0 KiB)

Hi,

based on this page I found in the internet the problem with horizon TV is
that the widevine version shipped with Pipelight is too new. Please check
out the following page and try the suggestion mentioned there (downgrade to
an older version).

http://alien.slackbook.org/blog/how-to-make-upc-horizon-tv-work-in-linux/

Does this help to resolve the issue?

Sebastian

2014-04-16 10:34 GMT+02:00 Alexander Nolting <email address hidden>:

> Hello Michael,
>
> the widevine plugin is now loading and can be initialized. But it will not
> work with horizon tv in switzerland.
> There must be an issue with identification of the operating system and/or
> the user agent.
>
> After the plugin has been loaded the vidoe box will be replaced with a n
> error message saying that there was an erro and the video couldn't be
> started.
>
> regards
> Alex
>
> --
> You received this bug notification because you are subscribed to
> Pipelight.
> Matching subscriptions: pipelight
> https://bugs.launchpad.net/bugs/1284600
>
> Title:
> widevine not initalizing with 0.2.5
>
> Status in Pipelight:
> Incomplete
>
> Bug description:
> Hello Team,
>
> I struggeling with the widevine plugin. Pipelight complains about it's
> unable to initialize the widevine plugin. The second problem I have is that
> I don't find the console where the errors from the registered mime type
> should appear if you enable error logging in pipelight config.
> If i start firefox with --jconsole or use Web Developer menu to show the
> error console then there are no errors logged by pipelight.
>
> My OS: openSUSE 13.1, pipelight 0.2.5
> Graphics Card: NVDIA NVS-160M, nvidia driver 331.49
> Kernel: 3.13.4
> KDE 4.12
>
> sudo pipelight-plugin --list-enabled
> root's password:
> silverlight5.1
> flash
> unity3d
> widevine
> shockwave
>
> pipelight-plugin --list-enabled
> no enabled plugins
>
> /usr/lib/wine-pipelight/bin/wine --version
> wine-1.7.13
>
>
> config file:
> #
> # Enables a diagnostic mode which might be helpful to find an
> # error in the configuration or installation.
> # To get the error messages go to: http://fds-team.de/pipelight
> #
> # Information for advanced users: The diagnostic page embeds the plugin
> # of type "application/x-pipelight-error" to trigger the output of some
> # debug information. The plugin cannot be triggered if everything is
> # working, so this only affects users with a broken installation.
> # The debug output will include paths on the local filesystem and the
> # linux distribution used. If you don't want to leak this information
> # accidentially in case of a broken installation please either uninstall
> # Pipelight or disable the diagnosticMode. [default: false]
> #
> diagnosticMode = true
>
> #
> # Path to the wine directory or the wine executable. When you
> # specify a directory it should contain /bin/wine.
> #
> winePath = /usr/lib/wine-pipelight/bin/wine
>
> #
> # Path to the wine prefix containing Widevine
> #
> winePrefix = $HOME/.wine-pipelight/
>
> #
> # The wine architecture for the wine prefix containing Widevine
> #
> wi...

Read more...

Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for Pipelight because there has been no activity for 60 days.]

Changed in pipelight:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.