Flash issues with Nuvola Player 2.0.x

Bug #1058586 reported by Jiří Janoušek
112
This bug affects 25 people
Affects Status Importance Assigned to Milestone
Nuvola Apps Runtime (Nuvola Player)
Fix Released
Critical
Jiří Janoušek
2.0.x
Fix Released
Undecided
Unassigned
2.1.x
Fix Released
Undecided
Unassigned

Bug Description

See FAQ #2107 How to install compatible Flash plugin for Nuvola Player 2.0.1 or higher

https://answers.launchpad.net/nuvola-player/+faq/2107

=== Issue ===

Native Flash plugin doesn't work properly in Nuvola Player 2.0.x and causes several issues:

Bug #1054806: Flash installed in the computer but undetected by Nuvola
Bug #1033334: Unable to close Nuvola Player without a error message about force quit
Bug #1053860: Grooveshark crash at launch

Adobe Flash plugin is incompatible with Nuvola Player 2.0.x, because it is not possible to mix GTK+ 2 (Flash plugin) and GTK+ 3 (Nuvola Player) in the same process.

=== Solution ===

Long term solution of this incompatibility is to port Nuvola Player to WebKit2Gtk API, that runs plugins in a separate process. Unfortunately, the new API is not yet available in any stable Linux distribution, so it is necessary to use a temporary workaround for now.

Short term workaround is to wrap Flash plugin via nspluginwrapper. Unfortunately, this way has many drawbacks:

* The primary goal of nspluginwrapper was to wrap 32bit Flash plugin for 64bit systems. Since native 64bit Flash plugin is available, this goal is no longer valid and nspluginwrapper is considered deprecated. Moreover, some Linux distributions (e.g. Debian) have already removed nspluginwrapper from repositories.

 * nspluginwrapper can wrap only 32bit plugins, so you cannot use native 64bit plugin on 64bit system, you have to use wrapped 32bit plugin.

 * Wrapped Flash plugin has higher CPU usage and tends to crash more often.

 * Since nspluginwrapper is dead, there may be unresolved security issues.

To minimize negative effects on user's system, it is necessary not to install wrapped Flash plugin into standard directory for web plugins (/usr/lib/mozilla/plugins), but to a directory specific for Nuvola Player (e.g. /opt/nuvolaplayer/flash), so user's web browsers can use native Flash plugin, whereas Nuvola Player will use wrapped Flash plugin.

=== Progress ===

Workaround based on nspluginwrapper is available, see FAQ #2107 How to install compatible Flash plugin for Nuvola Player 2.0.1 or higher

https://answers.launchpad.net/nuvola-player/+faq/2107

Tags: flash

Related branches

Changed in nuvola-player:
importance: High → Critical
description: updated
description: updated
Revision history for this message
Carlos Solís (csolisr) wrote :

The fix has been found to work as a workaround to Bug #1054806.

Revision history for this message
Jiří Janoušek (fenryxo) wrote : Re: [Bug 1058586] Re: Flash issues with Nuvola Player 2.0.x

> The fix has been found to work as a workaround to Bug #1054806.

Thanks for confirmation, Carlos. How bad is CPU usage of the wrapped
Flash plugin compared to native plugin in Firefox/Chromium/Chrome?

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

Less intrusive version of the workaround has been backported to lp:nuvola-player/2.0.x as revision 577.

Revision history for this message
Thomas Leberbauer (slosd) wrote :

How is nspluginwrapper supposed to work on 64bit ArchLinux?

I installed multilib/nspluginwrapper 1.4.4-2.1 and I get:
*** NSPlugin Viewer *** ERROR: libssl3.so: cannot open shared object file: No such file or directory
*** NSPlugin Viewer *** ERROR: libssl3.so: cannot open shared object file: No such file or directory
nspluginwrapper: no appropriate viewer found for /opt/nuvolaplayer/flash/orig/libflashplayer.so

Fixed by:
# ln -s /usr/lib32/libssl.so /usr/lib32/libssl3.so

But then I get the same error for libsmime3.so and there is only a 64bit version for that.

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

> How is nspluginwrapper supposed to work on 64bit ArchLinux?

I'm not an Arch Linux user, so I don't know how to make
nspluginwrapper work on it. Maybe Carlos Solís could help?

> I installed multilib/nspluginwrapper 1.4.4-2.1

The wiki page [1] doesn't mention "multilib/nspluginwrapper", but
"nspluginwrapper". I'm not sure if it makes any difference though.

[1] https://wiki.archlinux.org/index.php/Epiphany#Flash

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

Updated Flash plugin installer.

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

Fix committed to lp:nuvola-player as revision 577.

Changed in nuvola-player:
status: In Progress → Fix Committed
Revision history for this message
Jiří Janoušek (fenryxo) wrote :

Users of Ubuntu 12.04 can test a development version of Nuvola Player 2.0.1 from Bugfix PPA:

https://launchpad.net/~nuvola-player-builders/+archive/bugfix

Revision history for this message
Michael Mims (mims-michael) wrote :

Fix works well on Ubuntu 12.04. I'm noticing significant CPU usage as previously stated. Tested using Rdio service and CPU ~16% versus Chrome at ~6%.

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

Fix released in Nuvola Player 2.0.1.

Changed in nuvola-player:
status: Fix Committed → Fix Released
Revision history for this message
Thomas Leberbauer (slosd) wrote :

The 32bit libraries needed for Arch64 are in AUR in lib32-nss and lib32-nspr.
Don't know why I didn't think of that...

Unfortunately I get "Unable to load flash" with grooveshark. Other services don't work either.
(Version 2.0.1)

Flash debug:

Navigator: Mozilla/5.0 (X11; Linux x86_64)
AppleWebKit/535.22+ (KHTML, like Gecko)
Chromium/17.0.963.56 Chrome/17.0.963.56
Safari/535.22+

Flash.installed: true
Flash.major: 11
Flash.minor: 2
Flash.revision: 202
Flash.revisionStr: r202
Flash.raw: Shockwave Flash 11.2 r202

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

> The 32bit libraries needed for Arch64 are in AUR in lib32-nss and lib32-nspr.
> Don't know why I didn't think of that...
>
> Unfortunately I get "Unable to load flash" with grooveshark. Other services don't work either.

Please attach debug output (launch "nuvolaplayer --debug" from terminal).

Revision history for this message
Thomas Leberbauer (slosd) wrote :

Debug output attached.

I also tried to use the debugger version of the flash plugin, but flash doesn't log anything.

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

According the log, the wrapped Flash plugin is recognized by Nuvola
Player, so I don't have any idea, why Grooveshark resists.

Could you try the latest development version and attach the debug output?

$ bzr branch lp:nuvola-player
$ cd nuvola-player
$ python2 ./waf configure --no-unity-quick-list build
$ ./nuvolaplayer.wrapper -D

Revision history for this message
Thomas Leberbauer (slosd) wrote :

Debug output attached.

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

> Nuvola Debug main.vala:296: WebPlugin: Shockwave Flash (true): /opt/nuvolaplayer/flash/wrapped/npwrapper.libflashplayer.so

Well, the wrapped Flash plugin is loaded and enabled (true), so I
don't understand why Grooveshark and other services don't recognize
it. That said, I have no idea how to help you with this issue.

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

Updated Flash plugin installer. Usage:

sudo bash ./nuvolaplayer-flash-installer.sh --install=11.2.202.243

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

>> Nuvola Debug main.vala:296: WebPlugin: Shockwave Flash (true): /opt/nuvolaplayer/flash/wrapped/npwrapper.libflashplayer.so
>
> Well, the wrapped Flash plugin is loaded and enabled (true), so I
> don't understand why Grooveshark and other services don't recognize
> it. That said, I have no idea how to help you with this issue.

I had similar issue on Ubuntu 12.04 64bit and it was solved with
installation of a package ia32-libs, so Flash plugin seems to require
additional 32bit libraries. Unfortunately, the ia32-libs package
installs dozens of libraries (a list of them is available at
<http://paste.ubuntu.com/1344721/>) and I don't know which libraries
are really necessary for Flash plugin to work.

Revision history for this message
Jonas Frei (freijon) wrote :

Maybe I'm a bit old-fashioned, but I really don't want to install hundreds of 32-bit libraries just because of nswrapperplugin. I'm sure it has been considered already, but at least for the Grooveshark service, why don't you temporarily use http://html5.grooveshark.com/ (this could be optional in the settings, or a fallback)

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

> Maybe I'm a bit old-fashioned, but I really don't want to install
> hundreds of 32-bit libraries just because of nswrapperplugin.

No sane person wants to install hundreds of 32bit libraries. Anyway,
you need only a few of them, not hundreds, but I don't know, which
libraries are really necessary for nspluginwrapper + Flash plugin.

> I'm sure
> it has been considered already, but at least for the Grooveshark
> service, why don't you temporarily use http://html5.grooveshark.com/
> (this could be optional in the settings, or a fallback)

It might be possible to use html5.grooveshark.com, but Grooveshark
service integration is currently orphaned (bug #1035487), ie. a new
maintainer is needed for this task.

P.S. You can contact support of Grooveshark to suggest using HTML5
also for www.grooveshark.com.

Revision history for this message
Jiří Janoušek (fenryxo) wrote :

Created a wishlist bug #1183237 about porting Nuvola Player to WebKit2Gtk.

https://bugs.launchpad.net/nuvola-player/+bug/1183237

description: updated
Revision history for this message
Jiří Janoušek (fenryxo) wrote :

The fix has been released in a freshly baken Nuvola Player 2.1.0.

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.