Audio tips with ffdshow and AC3Filter.

Posted by Jon | HTPC, Tips, Tricks & Guides | Wednesday 22 April 2009 2:32 pm

For the longest time, I’ve encoded most of my movies with AAC audio since I can go pretty low on the bitrate while still keeping all the original channels plus excellent audio quality compared to the source.  Recently, I stopped encoding AC3 (although, depending on the length of the movie, I will encode DTS on occasion) since the space saved is not as much of an issue as it used to be since HD media was introduced.  This has caused me to recognize many solvable issues that I have seen with various users who are disappointed when playing back titles in their encoded video library.  So, what I want to share is how to take two widely known codec packages in order to get the most (and possiblya more) out of your encoded videos.

To begin, if your videos already contain the original AC3, DTS, or whatever came with your disc, then this isn’t really for you.  Enabling pass-through for the relevant audio type in ffdshow or AC3Filter will get you where we’re going (if you have a receiver capable of decoding such types).

Second, you will need a receiver capable of decoding your output stream, which for the most part, is going to be at least a 448kbps Dolby Digital AC3 audio stream.  You are going to need to download the latest release of ffdshow (I suggest the clsid releases) and AC3Filter (you’re also going to need Haali Media Splitter for any MKV/MP4 files.  These instructions are for 32-bit only, so keep that in mind.  I don’t run any HTPCs on 64-bit…just my test system.  Install both with default everything…we’ll configure shortly.  I also assume no other codecs are installed or configured to hijack these…so if you use anything else to process audio/video, your results may vary.

Now, we want to configure ffdshow audio properties, so find that in your program’s menu and start up the audio decoder configuration.  You’re going to want to let ffdshow provide a decoder for MP3 and AAC , for certain (any of the options available except “disabled” are fine).  I would also set AC3 and DTS to “disabled” here.  Everything else is up to you and outside the scope of this guide.

*Note: You can set MP3 audio to disabled in ffdshow and let AC3Filter do direct transcoding.  It’s probably best to do it that way, but it’s up to you.  This is why you disable MPEG passthrough later in the guide (so that MP3 isn’t passed as PCM stereo).

setffaudio.jpg

That’s pretty much it for the ffdshow audio decoder.  All we have done is set ffdshow to be the primary decoder for MP3 and AAC streams.  By default, ffdshow will decode these into a 16-bit integer sample that our sound processing application, AC3Filter, can use.

AC3Filter can be set up in any number of ways, but I am going to focus on one…after we’re done, you should be able to use common sense to figure out how to apply it to different speaker/output configurations.  It’s a daunting piece of software at first look, but it’s actually quite simple in its function – take x stream, apply y settings, output z stream.

Fire up AC3Filter – you will get a warning, so just click OK.  From here, we will go tab-to-tab from the top.  Under the Main tab, the first thing we want to do is decide our output format.  This will be how your audio stream goes out to your receiver.  If you have a 5.1 surround system (assumed for this guide), you will choose 3/2+SW 5.1 channels in the dropdown box.  Leave Rate and Format alone, but ensure that Use SPDIF is checked.

ac3fmain.jpg

The next three tabs (Mixer, Gains and Equalizer) you can skip.  They may come in handy for you if you need to adjust the gains for your individual speakers, but since I can’t account for your setup, I will leave those up to you (I do use them, fyi).  On the SPDIF tab, ensure that your output is still the same (3/2+SW 5.1 channels with SPDIF checked).  You will also want to take note of the SPDIF passthrough section here.  If you have a receiver capable of decoding DTS, you will want to make sure AC3 and DTS are checked.  I, personally, leave MPEG Audio unchecked, since I want all MPEG audio upconverted to surround (it’s virtual, but I still think it sounds quite good).  I’ll leave it up to you if you want to pass it or not (so long as your receiver supports it, of course).  I also set the SPDIF/DTS mode to Auto over Padded.  I don’t know why, so leave it ‘as is’ if you want.  Under SPDIF options, I set the bitrate to 448 instead of 640, but that is also up to you.  I don’t see the point in going all the way to 640 since it’s just making more of something out of nothing, but whatever.  I do suggest checking off 44KHz and 32KHz (or unchecking Restrict SPDIF sample rate altogether) so that your receiver supports additional frequencies (receiver must support them though!).  Some of my older XviD encodes do have 44KHz audio and do NOT have audio unless I enable it here.  Everything else on this tab can be at default, unless you know what you’re doing.

ac3fspdif.jpg

On the System tab, make sure everything under Use AC3Filter for is checked.  In fact, the defaults on this page are good.  I do recommend checking Show tray icon, just so you know AC3Filter is being used when playing back a file.  Other than that, you should be gold from here.

ac3fsys.jpg

We’re done!  Hit Apply and OK and your settings will be saved.  Fire up Media Center in windowed mode and go play an AVI, MKV or MP4 file that has an MP3 or AAC audio source and you should see the tray icons for ffdshow audio and AC3Filter show up (lef to right – ffdshow audio, ffdshow video, AC3Filter, Haali Media Splitter).

icons.jpg

As I said, this little guide assumes a pretty vanilla setup with a true 5.1 DD capable receiver.  Your sound card will also have to be properly setup to pass digital audio over optical or coax.  Aside from that, hope this helps some of you!

Update:

Upon finishing this, I realize that there may be some readers scratching their head wondering, “What the hell do I want to do this for?”

I understand, so let me explain a little about what we’re doing in this guide.  Say you take  a standard DVD you just bought that is on dual layer media.  The movie portion you want, after extraction, is around 7.5GB.  For some, that’s no big deal.  However, for someone like me who rips everything for convenience, the space required for 2500+ movies and 100+ TV series would be staggering.  So, I encode.

I will take a typical 2 hour movie that has, say, a 1536kbps DTS track and compress it down from the original 7.5GB to about 1.5GB.  I won’t get into any arguments about it, but quality is very close to the original (to me; and that’s what matters).  That 2GB DTS track went down to a 5.1 channel AAC track that is now only a couple hundred MB at 256kbps.  Does it sound as good as that DTS track?  No, but it sounds damn good just the same.

Since my receiver cannot decode a raw AAC track, I must transcode it into something it can decode, in realtime, while watching.  That’s where AC3Filter comes into play.  ffdshow is the decoder for the AAC track, which AC3Filter interecepts (something like GraphEdit can show you this when using Media Player Classic).  Since we have AC3Filter set to output a 448kbps 5.1 AC3 stream, that is what goes out to your receiver.  Depending on the model of your receiver, you should have your DD indicator light up and have a good surround sound output (audiophiles, go away!).

What’s even better is that the typical stereo MP3 tracks will receive spacialization during the transcode process and they will also be output at 5.1 sound.  In fact, anything that goes through this graph will be converted to a 448kbps AC3 stream, unless it’s already a stream specified for passthrough.

Later, I may show those of you who have 7.1 systems how to use the ffdshow mixer to output everything into 8-channel audio (it’s not DD, but it’s pretty freakin’ nice to my ears at home!).

  • Share/Bookmark

Some late afternoon tidbits.

Posted by Jon | HTPC | Monday 2 March 2009 4:13 pm

Kapone over at AVSForums is doing a little teasing that those of you who use the built-in Media Center DVD Library may want to keep an eye on.  Apparently he is developing some sort of, what I assume to be, pre-caching engine that speeds up the loading times for the library.  I have never used the built-in DVD Library, so I can’t really offer much insight.  So far, he is being very hush-hush, so you may want to watch this thead on your own.

SecondRun.tv is going strong with new releases in the past few days that have fixed a lot of bugs and added tons of new content.  You’re going to want to get this if you like online media plugins.  This is one of the hottest plugins to hit Media Center in a long time.

Meta<Browser /> has released a new beta that tweaks the interface, allows minimize-to-tray functionality and folder monitoring.  Hit Google Code for the download and discuss at the Media Browser forums.

I don’t won’t to leave out OML, which doesn’t get much press here, but they are still going strong with their video plugin project.  It is really gaining some ground and looking better every time I remember to take a look.  They have a new daily build dated for the 28th here.  They also have completely reorganized their forums.

VMCNetflix has a new version out for the first time in a month with 1.1.12.  It looks to be a minor fix related to the Silverlight player that affects full screen playback and the Pause/Play/Stop functions.  Get it here.

CyberLink has announced native Blue-Ray support for Media Center.  You can read more about it here at EngadgetHD.

  • Share/Bookmark

New beta release for MyMoviesBrowser and SecondRun.tv.

Posted by Jon | HTPC | Friday 20 February 2009 12:17 pm

MyMoviesBrowser is an open-source MCML frontend for MyMovies.  It looks pretty good, but it was a bit buggy for me and I was no longer using MyMovies, so I didn’t give it a very good look.

Darick C., the developer, just released a new beta that adds the following features/bug fixes:

  • Better resume playback and the playing of trailers before a movie.
  • Updated how the settings are saved and the configuration utility.
  • Added background images to movies and TV series.
  • Now storing the TV series in the database, should load faster and allow for filtering.
  • Added an application to help manage TV series and retrieve fanart for the background images.

I’d put up screenshots, but MyMovies no longer exists on any of my systems.  You can get MyMoviesBrowser here.  There is a thread at the MyMovies forum for support/info.

Update:

Almost forgot about the release of SecondRun.tv late last night.  I have not tried it yet, but it appears that it does fix full-screen issues for some (there are still problems abound though).  It also moves to a new 3-column layout so that more of the screen is used on displaying content.  Much MUCH better.

It’s still getting better by the day and definitely worth a close look.  Get it here.

  • Share/Bookmark

hulu on your Media Center?

Posted by Jon | HTPC | Thursday 12 February 2009 9:35 am

Yep, it’s looking like hulu on the Media Center (Vista and maybe 7MC) might be a reality…and as soon as tomorrow.

Yaggs over at theGreenButton has been working on a new plugin for a while now and boasts of  a Friday (tomorrow) beta release.  I haven’t paid much attention to hulu ever since it came upon the scene since there was never any serious attempts at integrating it with Media Center, but it always looked fabulous to me.  If this works out, it will be a truly fantastic addition to Media Center users.  There are a ton of TV shows and movies available on hulu, but I don’t know much about the quality of it.  I may have to give it a try this evening so I can gauge how it compares to Netflix’s Watch Now! service.

If you don’t know what hulu is, I’ll give you a quick rundown.  hulu is a website that offers commercial-backed (which is how it is free) streaming TV shows and movies from such networks as Fox, NBC, PBS, Disney and web services from the likes of AOL, MSN, Yahoo! and others.  It is available only in the U.S., so if you’re not there, it sucks to be you.

Yaggs’ plugin will put some reigns on this content and pull it inside the Media Center interface.  There is currently a solution using Boxee, but it’s not integrated and is barely a workaround.

Anyway, here is a few screenshots, curtousy of Yaggs from SecondRun.tv (official plugin site).

Networks

Available Networks

TV show view

TV show view

Episode view

Episodes

More episodes

Looks great so far!  I’m looking forward to this one and you can expect a writeup with more screenshots after its release.  I’m also understanding that it does not currently support extenders, so you’ll be out of luck if your Media Center network relies on them.  He expects to fully support them, but early releases do not.

Keep an eye out for this one!

  • Share/Bookmark

Another video library plugin.

Posted by Jon | HTPC | Wednesday 4 February 2009 8:33 pm

I’m sick as a dog right now, so I’m going to make this short and sweet.  I came across another video plugin just now created by a German programmer that goes by the name of Maschmo.  It’s pretty simple and i personally don’t care too much for it, but at least it’s another offering in the mix.

The site it’s on is in German, so I have no idea what is needed, how to install, or how it works.  If any of you wish to give it a try, let me know how it goes.  If I feel better tomorrow and stay home, I’ll post a few more screenshots of it in action (and English).

Here’s a few images I grabbed from HENNES105 at the MyMovies forum.  Sorry that they suck so badly, but it is all I could come up with.  Here is the link to the German forum everything is available at.

p1060329.jpg p1060326.jpg p1060325.jpg
  • Share/Bookmark
Next Page »