Getting anything 32 bit to work embedded (or at all, in some cases) on a 64 bit machine is quite the fun adventure, sometimes. MPlayer is one reason that I put off switching to athlon64 for so long. I didn’t want the hassle of having a separate 32-bit compiled browser just to watch movies. Well, now I can do it in my native 64 bit Mozilla browser. It’s great.
It’s really not hard to get embedded movies that your 32 bit mplayer can play. Interestingly enough, the patch is only in one file in mplayerplug-in’s source code (plugin-threads.cpp). You just need to change the one line to call mplayer-bin instead of mplayer, recompile the program and install it. Or, you could take the lazy route and use this handy third-party ebuild. There’s a few steps involved though, but all it involves is setting up a Gentoo overlay.
If you don’t already have a PORTDIR_OVERLAY setting in your make.conf, add one now. If you don’t know what that is, just look at /etc/make.conf.example for the description:
“PORTDIR_OVERLAY is a directory where local ebuilds may be stored without concern that they will be deleted by rsync updates. Default is not defined.”
I’m using /etc/portage in mine. Download the ebuild here – http://www.sh.nu/download/ebuilds/mplayer/ which I have also mirrored here for direct download. The md5sum is 8ee0e164646804776560b13e30d642a5.
Then, just unpack the tarball while in that directory, and emerge the program.
# cd /etc/portage
# tar jxvf mplayerplug-in-bin-portdir-20060419.tar.bz2
# emerge mplayerplug-in-bin
You might need to close out your Mozilla / Firefox windows and reaload them just to make sure the plugins load. Then its back to some good movie-watching in the browser. 🙂