个人工具

UbuntuHelp:Shockwave

来自Ubuntu中文

Wikibot讨论 | 贡献2007年11月30日 (五) 21:29的版本

跳转至: 导航, 搜索

Shockwave is a multimedia player. Designed by Macromedia in the mid 1990s, it was followed by Shockwave Flash (or just UbuntuHelp:Flash), a simpler format which became far more popular. Today, Shockwave is most commonly used for Internet games.

Installation

Unfortunately, the Shockwave player is only available for Windows. On a PC, it may be possible to run Shockwave under Ubuntu using UbuntuHelp:Wine and running the Windows versions of Firefox and the Shockwave player. (Wine does not work on PowerPC and may not work as expected on 64-bit PCs.) You can then use mozplugger, a program that lets you "embed" other programs in your web browser. First, install the wine and mozplugger packages (for information on how to do this, see InstallingSoftware). You then need to install the Windows version of Firefox (yes, you read that right). Download it from Mozilla's web site. Choose to open the installer with Wine and follow the on-screen instructions. When the installation has finished, you then have to go to a web site that requires Shockwave, and choose to get the missing plugin. Again, follow the on-screen instructions, and when the plugin has installed and is working, you may close Firefox. Now you need to configure mozplugger to use the Windows version of Firefox for Shockwave files. From a terminal, type:

sudo nano /etc/mozpluggerrc

Add the following two lines to the end of the file:

application/x-director: dir,dcr,dxr,cst,cct,cxt,w3d,fgd,swa: Macromedia Director file
	swallow(firefox.exe) fill: wine "C:\\Program Files\\Mozilla Firefox\\firefox.exe" -chrome "file://Z:$file"

Finally, you need to make Firefox reload the plugin database. Close all Firefox windows and run this command in a terminal:

rm ~/.mozilla/firefox/pluginreg.dat

Congratulations, you should now have a working, if not convuluted, Shockwave setup. You can test it on the Test Macromedia Shockwave & Flash Players page. However, some Shockwave objects may not work. See the issues and workaround solutions section below.

Issues and workarounds

Objects appear in a small window of their own

Posssible causes:

  • Cause 1: Wine or Shockwave is still running in the background.
  • Workaround 1: Type this in a terminal to end all wine processes:
killall wine-preloader -s KILL
  • Cause 2: mozplugger does not handle multiple objects.

Unfortunately, there is no fix currently known for this.

Objects claim they're being run from the harddisk

  • Cause: The files are first downloaded and then run from the Windows version of Firefox.
  • Workaround: Change the /etc/mozpluggerrc file so that streaming is enabled:

Change this line:

swallow(firefox.exe) fill: wine "C:\\Program Files\\Mozilla Firefox\\firefox.exe" -chrome "file://Z:$file"

Into:

swallow(firefox.exe) fill stream: wine "C:\\Program Files\\Mozilla Firefox\\firefox.exe" -chrome "$file"

Then remove ~/.mozilla/firefox/pluginreg.dat and restart Firefox. This may not work if you are connected using IPv6 or a proxy.

Objects claim they're "stolen"

  • Cause (when using streaming): The Shockwave object expects the "Referrer" HTTP header to be set, which mozplugger does not do.
  • Workaround: None yet.