Softsubs Conversion Tutorial
Published on September 25th, 2009.

When I first googled on how to convert .mkv videos with softsubs to other formats such as .avi or .mp4 with the subtitles still intact, I did not get much help on how to go about it since most video conversion software aren't really helpful at converting softsubbed videos into hardsubbed ones. So I'm writting this tutorial here since I too spent quite a bit of hair splitting hours figuring out how to get .mkv files with subtitles to play on my iPod Touch or my PSP for that matter. This tutorial should work for about any device which supports .avi or .mp4 playback.
Technically, this is more of a softsub to hardsub tutorial. First of all, you should have to the following programs and files in your computer:
- MKVExtractGui and the Wizard (Download link here)
- Avisynth and VSfilter (that should come with CCCP which you can get here)
- A video converter which supports .avs files for conversion - For my case, I used Any Video Converter (Its a pretty good piece of software and its free too. Download link here)

After downloading MKVextractGUI, the program will self-extract itself to any location you choose. For example you can extract it to your desktop. In the folder, you will see the exe file among other files.

Alternatively, if you install the Wizard, you will be able to see the exe file. In this case, I will be showing you how to use the Wizard to extract the subtitles from the mkv video. The purpose of this is to seperate the .ass subtitle file from the .mkv file which contains the softsubs since the mkv file acts as a container.

Froom here, just select the input video with the subs. As you can see here, the video which I wish to extract is a Higurashi ep with softsubs. Output folder is up to you to decide but do remember where you output the files later on as you will be needing its location ^^;

Once again when you press next and come to this screen, you will see the list of stuff that you can extract from the mkv file. Our purpose here is to obtain the subtitle file so select Track 3 if the subtitle file is in Track 3. You can see that Track 4 also has subtitles though this is the unstyled subs. If a file has more than one subtitle like different languages, then you will be able to select them from here too. Though you will only be able to hardsub one subtitle track to one video, unlike mkv files which can contain more than 1 subtitle track.

And we're done extracting! =)

This is how the file would look like after you have successfully extracted it. Now, you will have to copy the exact file name into the AVS script.

Next up, launch notepad to create the AVS script...
The script should contain the following
LoadPlugin("G:\Program Files\Combined Community Codec Pack\Filters\vsfilter.dll")
DirectShowSource("I:\Encoded\Videos\[Hauu~].Higurashi.no.Naku.Koro.ni.Kai.16.(H264.Vorbis)(B2844441].mkv", fps=23.976, convertfps=true)
TextSub("I:\Encoded\Videos\[Hauu~].Higurashi.no.Naku.Koro.ni.Kai.16.(H264.Vorbis)(B2844441]_Track3.ass"
Replace the (B28... with [B28..., the BBcode will screw up the formatting of the post if I typed it that way >.<
In the line of DirectShowSource, you would place the location of the video you wish to convert and the text sub would be the location of the subtitle file. The converted video might work without the fps=23.976, convertfps=true but if there is video/audio sync problems then you have to add fps=23.976, convertfps=true or change the frame rate to something else.
Once done, save the file as something.avs
You can replace something with whatever name you want.

Next would be to launch your video conversion software and I have used Any Video Converter here. Open the avs script and it should be loaded to the job queue.

These are the settings that I used to get the video to work on my iTouch though you can play around with the settings to see which is best for you. Increasing the bitrate would increase the quality but also the size of the video.

And the end result!! xD
I have not tried it out on my PSP yet but it should work. You just need to get the appropriate settings for your portable media player/phone since the convertered video can be in the form of 3gp/avi/mp4. You should check which video codec your device supports.
That's all. Hope you found this helpful.
Filled under Random, Technology.
13 Comments
raptor_cZn on September 27th, 2009
Try checking your .avs script again. You have to make sure that the name of the file you want to convert is exactly the same with the .mkv extension for file. Same goes with the subtitles file.
LOZLINK on October 7th, 2009
I'm a bit confused at the part after you extract the .ASS file. What AVS file are you talking about and where do i see that loadplugin stuff?
raptor_cZn on October 7th, 2009
The AVS file is an AviSynth script. Its kinda like telling what AviSynth should do in order to actually hardsub the video. Think of it has combining the subtitle on top of the video layer.
As for the loadplugin, its where the vsfilter is installed. So for example if you installed CCCP in your C:\ directory then the default location would be
LoadPlugin("C:\Program Files\Combined Community Codec Pack\Filters\vsfilter.dll")
LOZLINK on October 7th, 2009
No no, what i mean is, how do i create an AVS file?
raptor_cZn on October 7th, 2009
Oh, to do that just open up notepad. Copy that code like the one above in my post. And when you save, click Save As, the type of file should be all files.
And the file name should be something.avs
LOZLINK on October 8th, 2009
Okay, since I couldn't create my own avs since notepad didn't let me, When i went to all files it just saved it as a text document. So what i did was, go to my avisynth folder, there are some .avs files there, I just copied one, changed the name and added the whole loadplugin and stuff. Now I've got that, Any video converter is saying it can't get the media from it
raptor_cZn on October 8th, 2009
Try checking the DirectShowSource code like this one for eg DirectShowSource("I:\Encoded\Videos\[Hauu~].Higurashi.no.Naku.Koro.ni.Kai.16.(H264.Vorbis)(B2844441].mkv", fps=23.976, convertfps=true)
The name of the file must match exactly including the location path.
LOZLINK on October 9th, 2009
Brother, I have to thank you for one thing. Anyvideoconverter. I didn't do any of that .avs stuff. I just decided "hmm, lets see how good of a converter this one is." What came to my surprise was that Anyvideoconverter also copies the subs over. So i didn't have to do anything but convert the .mkv file, and there, i had my subbed .mp4 for my iphone. Thanks a lot for the help though
tosh9i on December 13th, 2009
how long does it take overall?
raptor_cZn on December 13th, 2009
Not very long. Depends on what processor your computer has. For a 30 min video, probably about less than an hour I think on my Core 2 Duo.
KiraV on August 15th, 2010
I've checked everything, but Any Video Converter still says that cannot obtain informations from the avs file. Both the video and the subs directory are correct. I don't know what to do.
The code for the avs file I've used is this:
LoadPlugin("C:\Program Files\Combined Community Codec Pack\Filters\VSFilter.dll")
DirectShowSource("G:\temp\Varie\Movies & TV series\Anime\Durarara!! [JAP sub ENG]\Durarara!! - 01 - First Words.mkv", fps=23.976, convertfps=true)
TextSub("G:\temp\Varie\Movies & TV series\Anime\Durarara!! [JAP sub ENG]\Durarara!! - 01 - First Words_Track3.ass"
Someone can help me, please? I really need to convert mkv styled softsub into hardsub.
KiraV on August 15th, 2010
Oh, sorry, I've done it! It didn't work because I've forgotten a ")" at the end of the code.

qyn6 on September 27th, 2009
I can't load the avs file into Any Video Converter. It always says "Can not get media information of video file" Do you know why this is?