I know, this is yet another obscure corner case, but if you run into this problem, you'll be truly glad to find the solution. Here's the problem: you are running 64-bit Linux, have a mounted volume (probably external), formatted as HFS+ (probably because you share data with OS X), which has a media file that you want to play, with the ever-talented and wonderful VLC. But when you open the file, nothing happens. If you copy the file to a native ext2/3/4 or fat volume, it plays just fine. You're tearing your hair out, trying to figure out what in the world is going on. Well, here's the answer.
I'm going to assume you're running a Debian-based Linux distribution, such as Debian itself or Ubuntu. If you have one of those distributions that uses RPM and its tools, then you'll have to figure out the equivalent commands, which shouldn't be too hard. I have no idea about RPM, sorry.
OK, so here's the problem summarized by someone who knows more than me: "Apparently, hfsplus has some nasty problems and isn’t actually POSIX compliant when it comes to opening directories. Due to how VLC handles “files” that it is asked to play (it accepts both directories and files as playlist arguments and VLC chooses to try to open the playlist element as a directory first, and this doesn’t fail with hfsplus the way it should in POSIX-compliant filesystems) VLC is unable to play anything that’s on an hfsplus partition."
So there needs to be a patch applied so VLC can play nicely with non-standard HFS+. Fortunately, someone has figured this out and made a patch. It was written for VLC 1.0.4, but it worked for me on VLC 1.0.6 (once I got by the problem that is described below). You can download the patch from its author's site: http://launchpadlibrarian.net/37707309/vlchfs-1.0.4.tar.gz
(If the above link fails, here's an alternate: http://postaux.fromagique.com/vlchfs-1.0.4.tar.gz)
What this patch does is make a new version of a library plugin that VLC uses to open files and directories, and this new version knows how to talk to HFS+ properly. I'm very glad VLC uses a plugin architecture like this, because it saves us from having to recompile the whole program, which would require us to install all the development headers and libraries for all the vast array of formats that VLC supports. And of course that would be a major pain in an inconvenient body part.
So let's get to fixing, shall we? You need to install the development headers for VLC, which are available via a quick "apt-get install libvlc-dev" command (as root, of course, whichever way you prefer to do that.) You also need gcc, of course, and also pkg-config, so if you don't already have it installed, grab all the right bits with "apt-get install build-essential pkg-config".
Now, unpack the vlchfs-1.0.4.tar.gz file, and descend into the resulting directory. If you were running on a 32-bit system, all you'd have to do is a quick "make && sudo make install" and you'd be done. But on a 64-bit system there are a few differences that make the process fail with a nasty message: "/usr/bin/ld: libaccess_directory_plugin.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC". Ugh.
What this means is that the 64-bit system needs to have the file compiled as position-independent code (thus the "-fPIC" at the end.) This, (to greatly simplify) enables the system to be able to relocate this code anywhere it needs to--it's not tied to any particular memory address. So, fire up your favorite editor and look at line 10 of the Makefile. Right before the bit that says -D__PLUGIN__, add in -fPIC. So the line should look like this when you're done:
sed "1i #define _(str) (str)\n#define N_(str) (str)\n#include <sys/stat.h>\n" $< | gcc -xc -c - -std=gnu99 `pkg-config --cflags vlc-plugin` -fPIC -D__PLUGIN__ -DMODULE_STRING=\"access_directory\" -o $@
Make sure that whole awful chunk stays on one line; some editors have an annoying habit of trying to helpfully wrap long lines for you. Save the file, and now run the "make && sudo make install" command. Enter your password when prompted. You should now be able to play your HFS+ hosted files. Enjoy.
Note: when VLC gets updated via your normal package upgrade mechanism, this patch will probably get removed. So you may have to do this again--be sure to keep the patch file around.