Forum Archive Home -> Subtitle -> Problems with hardsub
| Problems with hardsub | ||||||
| andy_blah posted 2008 Jul 28 05:41 | ||||||
| My language has some diacritics and when I try to hardsub in Virtual Dub the outcome are some strange characters. What should I do to fix those?
This is how the subtitle shows:
And this is how it should be: "Întodeauna am vrut să fiu liberă" Yes the subtitle format is .ass, and no, i will not use AutoGK since it does the same thing, only that it takes 2 times longer to finish, and I really don`t want to wait 4 hours! EDIT: Seems that those forums don`t support the a with diacritics from my language(which is romanian by the way, and those characters are from the latin-extended font code family. | ||||||
| Midzuki posted 2008 Jul 28 06:56 | ||||||
| You should be using the TextSub function of Gabest's Vsfilter.dll.
Set it for calling the """codepage""" DEFAULT(1). | ||||||
| andy_blah posted 2008 Jul 28 06:58 | ||||||
| And how could I do that? I`ve used the TextSub filter in VirtualDub if that`s what you mean. | ||||||
| Midzuki posted 2008 Jul 28 07:22 | ||||||
This way :?:
![]() | ||||||
| andy_blah posted 2008 Jul 28 08:02 | ||||||
| I did not observe that before, but anyway, it still does not solve my problem, any script for the font or any font that I try won`t fix this, only that some of those characters are replaced by delta (in Greek script) and some cyrillic characters (in Russian script). Maybe I should attatch the .ass file here? | ||||||
| Midzuki posted 2008 Jul 28 08:11 | ||||||
Please do it. From the picture you uploaded, it seemed your application was loading a UTF-8 file and interpreting it as ANSI text --- but things quite often don't run that simple. :D | ||||||
| andy_blah posted 2008 Jul 28 08:14 | ||||||
| Ok then, here you go lad:
section1.ssa EDIT: This is in fact an .ass file, just that I renamed it so a program could have opened it (it didn`t let me open anything with .ass) | ||||||
| Midzuki posted 2008 Jul 28 09:23 | ||||||
| OK, I think I have found out the damn problema :) :
it is a UTF-8 file, BUT Aegisub, in its infinite wisdom, set the 'Encoding' value to '0'. Anyway, the Romanian characters are displayed finely by Notepad. Try this modified .ssa and check whether it works this time. modified.ssa ![]() | ||||||
| andy_blah posted 2008 Jul 28 09:35 | ||||||
| Same problem! Weird characters. Where should I set the Encoding to '0' ? | ||||||
| Midzuki posted 2008 Jul 28 09:46 | ||||||
| It's the last field of the line "Style".
But perhaps you'll just need to change the "ScriptType":
Change it to "v4.00" and tell us what happens. | ||||||
| poisondeathray posted 2008 Jul 28 09:49 | ||||||
| another option: avidemux has .ass/.ssa filter that you can hardsub with
does this look correct in your language? ![]() | ||||||
| andy_blah posted 2008 Jul 28 09:52 | ||||||
| Yes, it is displayed correctly, but I would like to try what Midzuki has suggested me first :)
By the way, Midzuki, you`re running Wine with notepad to display that text? :P EDIT: Hmm, seems that now the TextSub filter does not want to open the .ass file anymore ... | ||||||
| Midzuki posted 2008 Jul 28 10:09 | ||||||
| Are you sure you have installed the file Vsfilter.dll adequate for Windows XP :?:
If the answer is "Yes", then I can only suggest that you convert the fancy .ASS file to a good-and-old .SSA --- and pray. :idea:
What makes you think I'd need WINE on my PC :? :? :? | ||||||
| andy_blah posted 2008 Jul 28 10:19 | ||||||
it was the window`s GUI that made me think that, it looks quite simmilar to the one Wine uses (other than the sliders and window colour, that`s used in Windows 95-2000 I don`t have at all that .dll file! Where should I put it (downloaded the windows NT one - VSFilter2.37and2.38_20080306_XPNTVISTA) I would rather stay away from AviDemux, because I cannot use the FFDShow codec pack with it | ||||||
| Midzuki posted 2008 Jul 28 10:45 | ||||||
| First of all, uninstall the current Vsfilter.
Afterwards, copy the WINNT version into the system32 folder, and run this command-line:
Now, create a desktop shorcut containing the command below:
BTW, it's not impossible that your Vsfilter is not working correctly because of the Service Pack 3 --- but this is just a guess of course. | ||||||
| andy_blah posted 2008 Jul 28 11:12 | ||||||
Done that, but still it does not want to open it... I wonder if I need to restart after making those modifications (but tho I don`t thin that it is necessary) | ||||||
| Midzuki posted 2008 Jul 28 16:06 | ||||||
| Well, only now I have found the time to re-install Avisynth on my messy PC, :oops:
so that I could load a BlankClip plus the file 'session1.ass' on VirtualDub. Over here, the romanian subtitle pictures were displayed perfectly, with no problema at all. It seems therefore, something you have installed on your computer is not letting TextSub function correctly. :( ![]() | ||||||
| andy_blah posted 2008 Jul 28 16:12 | ||||||
| I trust that you can see those diacritics properly, but still that does not fix my problem unfortunately. I will send you a PM and ask you something. Thank-you all for your help so far... | ||||||
| andy_blah posted 2008 Jul 29 11:38 | ||||||
| I`ve tried now to re-install Windows, and tried to install FFDShow and Direct Vob Sub instead of K-Lite, and now it does not show properly even in Media Player!(before re-installing it worked) | ||||||
| Midzuki posted 2008 Jul 29 16:53 | ||||||
| What have you done --- a 100%~fresh re-install of Windows XP,
or a simple OS-overwriting? If you have chosen the first method, then I really have no idea of what could be the actual cause of your problems with displaying non-ANSI subtitles :( B.T.W., have you already checked whether your TextSub works inside Avisynth :?: | ||||||
| andy_blah posted 2008 Jul 29 17:09 | ||||||
| I`ve formatted the partition, and installed the OS on it, so I say that`s the first method. Now it does not work for Media Player and it did before. I tried AviSynth, but it does not work, it does not add any subtitle to the video... | ||||||
| Midzuki posted 2008 Jul 29 23:16 | ||||||
| According to a private message from the OP, he has managed
to display the Romanian characters via Avisynth. Apparently, when he said:
he actually meant Avidemux :lol: Bottom line is, this case should be considered 'SOLVED'. :coffee: :coffee: :coffee: | ||||||
| andy_blah posted 2008 Jul 30 05:17 | ||||||
| Yes, it seems that the whole problem was that the vsfilter.dll was missing :oops: . I will mark the thread as [Solved] | ||||||
| andy_blah posted 2008 Aug 16 05:40 | ||||||
| Now another problem arised, and because it is close to this other one I will just post it here.
I used the AviSynth script in VirtualDub and it is something like this:
When I try to mux it at the end I get to see that the video gets behind the audio by 300 ms at the 3/4 of the video, and at close to the end it gets with even about 1 second. It`s so frustrating that a lot of problems arise. Is there any solution for this? I`ve tried before to use DirectShowSource instead of AviSource but the desynchronization was even greater | ||||||
| andy_blah posted 2008 Aug 16 15:26 | ||||||
| Sorry for double posting but I`ve tried today to change from FFDshow`s codec(using it`s XVid) to XVid itself and it is still desyc but less. | ||||||
| poisondeathray posted 2008 Aug 16 15:43 | ||||||
| Check your duration of the video with mediainfo (before and after subbing), do they match?
How are you adding the audio? through vdub or avimux-gui or another program? Is it untouched? 1) You can either stretch/shrink either the audio or video to match. (If you search there are many posts on how to do this by a variety of methods) 2) or try adding convertfps(25) to your script (if you are PAL framerates) 3) or try using avidemux (which is proven to work with ssa/ass subs and I have used successfully before) as shown in the screenshot above. | ||||||
| andy_blah posted 2008 Aug 16 15:54 | ||||||
| I will try to to mux again the video in Avidemux, I have deleted the problematic .avi .
I left the audio untouched (as the source is) and the source avi is synchronized. As it says above, I had done this without any problems before, now I wonder why it won`t work... 1.) I will see if that`s necessary 2.) I cannot do that as the original video is 50fps, and I don`t want to loose any frame 3.) I`m trying that now | ||||||
| poisondeathray posted 2008 Aug 16 16:03 | ||||||
| The ONLY possible explanation for a gradual desync with untouched audio is that your re-encoded hardsubbed video has a different length than the original. (either has same #frames and different fps, or different number of frames +/- different fps). Please check with mediainfo and confirm this (duration and fps) of both videos. The descrepancy is the exact fraction that you would use into the shrink/expand solution if you were to go that route.
If you were mistaken in your description, and it is not a length mismatch, rather a constant sync problem, you can just fix it by shifting the audio. If your original is 50fps, then perhaps try using convertfps(50). | ||||||
| andy_blah posted 2008 Aug 17 01:46 | ||||||
| Tried to join the subtitle and avi in Avidemux and when I got to 46% it gave a fatal error (if you can tell me when I can find the log I would be happy to post it`s contents). I haven`t expected less from a program that`s based on GTK, which is quite unstable on Windows (at least here) | ||||||
| poisondeathray posted 2008 Aug 17 10:17 | ||||||
| Not sure why it's unstable on your system. It might have to do with your not-standard fps, or XP SP3
Please post the mediainfo (view=>text) requested for both files (before/after). 2 other solutions were already given. 1) DirectShowSource("C:\Path\movie.avi, fps=50, convertfps=true,audio=false), then mux audio&video with avi-mux gui. Make sure your filter chain in ffdshow or other filters are clean, or they will become hardcoded into your video when using DirectShowSource 2) Stretch/strink the audio or video lengths by the exact fraction | ||||||
| andy_blah posted 2008 Aug 17 10:51 | ||||||
Before I will try to combine the subtitles with the video again, is there any possibility of this switch in VDub to fix the problem?
![]() | ||||||
| poisondeathray posted 2008 Aug 17 11:16 | ||||||
| Not sure if you have to re-encode using that option in vdub, or if a direct stream copy would work
When you change the fps (e.g. from 50.00 to 50.02) you are essentially shrinking the video duration. Once again, you use the exact discrepancy given in mediainfo between the 2 files. This was given as option #2 already You can use avi frame rate adjust to do this, here is a guide http://www.gromkov.com/faq/faq2004-0064.html If you want a perfect sync with the proper frame rate (e.g. perfect 50.00, assuming that was the correct fps) option #1 should work, but you have to re-encode (do the whole process from the beginning) | ||||||
| andy_blah posted 2008 Aug 17 14:59 | ||||||
| Here is the result:
The original avi
And the result
| ||||||
| andy_blah posted 2008 Aug 19 01:20 | ||||||
| Sorry for double posting, but I have tried to extract the audio from the original video and to mux it into the result video and it worked! But before this I`ve tried to re-encode the audio with the same codec and it still was desync, who knows what`s wrong now with Virtual Dub as before it did not do those stupid things. I hope that this works with the other section. Thank-you poisondeathray so far for your help and suggestions, I really appreciate it. |
Login/Register to our forum to be able to post here.





