Short answer: Solution #1: Rename your video file. For example use .video instead of .mkv or .mpv4 instead of .mp4 Solution #2: Codec Tweak Tool > Media Foundation > Disable for .mp4 and .mkv Please read the warning below before disabling Media Foundation! Long answer: Since Windows 7, both Windows Media Player and Media Center make use of the Media Foundation framework instead of DirectShow for playing certain file types. As a result, DirectShow subtitle filters like DirectVobSub are not used. Media Foundation lacks native support for many common subtitle formats. Media Foundation is used for several common file types such as: AVI, WMV, MP4, MOV, 3GP, and M2TS. Since Windows 10 also for MKV. In case of AVI files, subtitles will be displayed if DirectVobSub (a.k.a. VSFilter) is installed. WMP will automatically switch from Media Foundation to DirectShow in that case. For the other file formats mentioned above you need to bypass Media Foundation so that WMP uses DirectShow codecs instead. Then it will use the decoders and subtitle filter from the codec pack. The recommended way to bypass Media Foundation is to rename your file to an extension for which Media Foundation isn't used. Alternatively, you can forcefully disable Media Foundation with the Codec Tweak Tool. Warning: Disabling Media Foundation can break playback of the relevant file formats in applications that are only capable of using Media Foundation. For example Windows Store apps from Microsoft on Windows 8 and 10. But also many modern games use Media Foundation for playback of intros and cutscenes. Some web browsers, such as Firefox and Internet Explorer, also need it. So please only disable Media Foundation if really needed. If you use a 64-bit version of Windows, then we recommend to use the 32-bit version of WMP (which is actually also the default one in Windows) and only disable Media Foundation for 32-bit. Other applications that use Media Foundation are practically all 64-bits, which means they will have Media Foundation available as normal. Additional tips: If you still have trouble getting DirectVobSub to load for external subtitles, even when DirectShow is being used, then you also need to change the preferred video decoder. Codec Tweak Tool > Win7DSFilterTweaker > Preferred decoders
The correct setting to use is USE MERIT. Do NOT set it to a specific decoder, because then the subtitles will not work. Just make sure your preferred decoder has the highest merit (in case you have multiple compatible decoders). The codec pack installer will automatically configure the preferred decoders for you for the most common video formats. This step should only be needed if you have manually installed the codecs. We recommend using Media Player Classic (MPC-HC) for video playback. That is capable of displaying subtitles without the need for all kinds of special workarounds. This player is included with the K-Lite codec pack. |