Adding subtitles in MediaPortal (or any video player) by piping CoreAVC through ffdshow

Like I have mentioned previously, subtitle support in MediaPortal is still pretty much broken, and so I thought I’d share my ideas on how to bypass this problem for now and still get subtitles for your favorite series and movies. (Or permanently, the ffdshow subtitles are pretty nice!) I was googling for a solution and found this interesting post on the topic. The entire idea is pretty simple – you let CoreAVC handle the decoding and then when you’re down to raw video – ffdshow takes over and just adds the subtitles on top before showing the entire video on screen. The best thing is that you’ll still get the speed of CoreAVC! The process can be summarized in just a few steps.

Install ffdshow tryoutsI am assuming you already have CoreAVC installed, but if not you should start with that. After you’re done with that, download and install ffdshow tryouts. I’ve included a link to the exact version I used, but the newest release should also work wonderfully.

Configure ffdshowStart up the ffdshow configurator and start at the “Codecs” tab, make sure you scroll all the way down to “Raw video“, and select “all supported” – also make sure that the H.264/AVC decoding is set to “disabled“.
Now go to the Subtitles tab and enable them. The default configuration should work, but you can increase the size, font and colour to your liking.

Configure MediaPortalMediaPortal does not allow DirectShow by default, and we want that to show the subtitles properly. Go to the options followed by Videos -> Video Player and make sure to enable “Automatic Decoder Settings” and that should be it. Similar procedures apply to other players that do not default to the DirectShow configuration. Something I noticed was that for some reason my video got brighter when piping through ffdshow, although only in MediaPortal. I tried to find some sort of setting that would magically change that but eventually just settled with reducing the brightness somewhat in the CoreAVC preferences.And that’s all folks!