If you’ve been around HTPCs for any time at all, then one of the first things you learned to stress out over were codecs. However, even after you’ve gotten your codecs installed, you may have noticed (depending on the container used for your media) that some files still refuse to play. That may have been when you discovered a nice little codec accessory – the media splitter.
I won’t bore you with the technicalities of what a media splitter is, but if you must have a general definition, then I guess you would say that:
A media splitter is a demultiplexer. It sends the individual elementary streams of a multimedia file (audio, video, subtitle, etc.) to their respective decoders.
If you don’t understand that, well, you don’t really need to. You just need to know how to use one. Chances are, you probably have one of the two more popular splitters installed right now – Gabest or Haali. I have used Haali pretty much exclusively since I started using containers that required a splitter (MP4, in my case). Well, now we have a new strangely-named media splitter to choose from – LAV. That link is to the monster thread at the Doom9 forum, but I will make things a little easier for you…I decided to try LAV out and show you how to install it to work with ffdshow and Windows Media Player.
This is assuming you already know how to configure your system to prefer ffdshow codecs over the built in Media Foundation codecs provided by Microsoft. If you don’t, you may want to take a look at my Codec Guide or an older post I made on getting DXVA with ffdshow working for Media Center. Anything else is strictly up to you…I don’t mess with third-party external players and such. It just looks like too much of a headache for me.
The first thing you need to do is download the LAV media splitter. There are x64 and x86 versions available and you will find them in this post. Also, the Visual C++ 2010 runtimes are required. If you run 64-bit Windows, you will need to install both versions (x86 and x64). You can get them here (x86) (x64). Then, just kick off the installer.
There is little preconfiguration available, but choosing an install location is one.
The next preconfiguration option are the available filters. Since I am on an x64 system, I have all available (x86 and x64). I chose to install all of them since I don’t read directions and like to learn the hard way.
After clicking Next, I allow the creation of the Start Menu item (which I will be lazy and not bother posting an image for), click Next again and I get to choose from multitude of supported file formats. I left all of this at defaults, but if you are doing this on a live system, you may want to pay closer attention. If you are on an x64 system, then both x86 and x64 file formats will be available to you.
Finally, after choosing your supported file formats, click Next and let the filters install. Click Finish when complete.
Now, let’s test this thing out. Prior to installing LAV, I removed Haali media splitter to avoid any conflicts. No other splitters exist on this system. It’s a 2008 Server R2 install and I will be testing with the x64 version of Windows Media Player 12. All I’m really interested in trying out right now is if it works with my MKV files, so I browse for one on my unRAID movie share. As you can see, there is no longer any application associated with MKV files (blank icon).
I then browsed to C:\Program Files\Windows Media Player in order to launch the x64 version of Windows Media Player (Program Files (x86) will launch 32-bit version). I execute that and simply drag my MKV file in to play.
Since there is no association for MKV files any longer, I get the customary warning (I just check the box and click Yes)…
After clicking Yes, my video plays using ffdshow video and audio codecs. Awesome.
OK, OK. So, it’s using ffdshow and is playing, but how do we know it’s using LAV? Right? Well, let’s take a look what GraphEdit has to say about things.
See? GraphEdit says so, too. I didn’t get a chance to try this out with VSFilter yet, but external subs still worked using ffdshow (even though it doesn’t have anything to do with using a splitter).
Now you’re probably wondering if this will work in Media Center. Well, I didn’t try it (yet), but there is no reason why it shouldn’t. Media Center uses Windows Media Player for playback and I had no issues using it with that, so take that for what you will. I won’t be running out to replace all my Haali splitters with LAV, but considering the activity behind it, I will be keeping a very close eye on it from here on out. I’m certain my curiosity will get the best of me eventually, so I’ll be sure to update this post when it does.
From the first post at Doom9, LAV features:
- Support for many ffmpeg-compatible containers, such ass MKV, WebM, AVI, MP4/MOV, MPEG-TS/PS (+EVO), FLV, OGG and probably many more.
- H264, VC-1, MPEG-2, MPEG-4 DviX/XviD, VP8, MJPEG and many more video formats.
- AAC, AC3, DTS(-HD), TrueHD, MP3/MP2, Vorbis, LPCM and more audio formats.
- VOB, DVB Subs, PGS, SRT, SSA/ASS, Text subtitle formats.
- Support for opening BluRay playlists (.mpls), as well as the index.bdmv file, which will try to detect the main movie playlist!
- Full stream switching and MKV embedded fonts.
I also tested a Blu-ray ISO and was able to play back an .mpls playlist file from the folder structure…
..and it worked just fine.