Non-integer values for /fscx & /fscy
2 posters
Hi10 Anime :: General :: Off-Topic
Page 1 of 1
Non-integer values for /fscx & /fscy
Hey guyz, I'm having a problem, so if anyone would help me out I'd be grateful. In the features of xy-VSFilter it's said that it supports non-integer values for /fscx & /fscy. And so I downloaded it(32-Bit Version) & loaded it in my avisynth script (for HardSubbing) & used "TextSub" to import the .ass file. But when I play the .avs file on MPC-HC, it's still not taking the float values for /fscx & /fscy. I've used the following script:-
Import("C:\Program Files (x86)\AviSynth 2.5\plugins\FFMS2.avsi" )
LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\FFMS2.dll")
LoadPlugin("D:\Downloaded Files\xy-VSFilter_3.0.0.211\VSFilter.dll")
FFMpegSource2("D:\My Files\SERIES\KILL LA KILL\Episodes\Kill La Kill - 07 [720p].mkv", atrack=1)
TextSub("D:\My Files\SERIES\KILL LA KILL\Subtitles\Kill La Kill - 07 [720p] [Sub].ass")
Import("C:\Program Files (x86)\AviSynth 2.5\plugins\FFMS2.avsi" )
LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\FFMS2.dll")
LoadPlugin("D:\Downloaded Files\xy-VSFilter_3.0.0.211\VSFilter.dll")
FFMpegSource2("D:\My Files\SERIES\KILL LA KILL\Episodes\Kill La Kill - 07 [720p].mkv", atrack=1)
TextSub("D:\My Files\SERIES\KILL LA KILL\Subtitles\Kill La Kill - 07 [720p] [Sub].ass")
ankush93- Posts : 7
Points : 4001
Reputation : 3
Join date : 2013-10-10
Re: Non-integer values for /fscx & /fscy
Well, I' ve not yet tried it - will do so tomorrow, so please excuse my commenting here. A couple of things-
1. You said that playing the avs file does not take the float values, did you try encoding that part of the video to see if the mkv file does? Highly unlikely, but just to get it out of the way...
2. If it does not work, you can always give a small font with high fscx and fscy values, to get around that problem. For instance, if you want size 40 font scaled to 140.2 percent along x, you can try size 8, with fscx as 701 percent and fscy as 500 percent!!
Will try and tell you however. But since you anyway have fsc values of the order of hundred, I'm curious to know if a change of the order of 0.1 will really make that big a difference.
1. You said that playing the avs file does not take the float values, did you try encoding that part of the video to see if the mkv file does? Highly unlikely, but just to get it out of the way...
2. If it does not work, you can always give a small font with high fscx and fscy values, to get around that problem. For instance, if you want size 40 font scaled to 140.2 percent along x, you can try size 8, with fscx as 701 percent and fscy as 500 percent!!
Will try and tell you however. But since you anyway have fsc values of the order of hundred, I'm curious to know if a change of the order of 0.1 will really make that big a difference.
sjoe92- Posts : 74
Points : 4291
Reputation : 11
Join date : 2013-07-21
Age : 31
Location : India
Character sheet
Character Name: Minato Namikaze
Profession: Hokage
Level:(1/1)
Re: Non-integer values for /fscx & /fscy
Yes, when I play the .mkv file on MPC-HC it takes the float values. I tried loading the vsfilter.dll which the MPC-HC uses in the avisynth script, but no luck.
Well you see when there's a sign which has an non-uniform movement & zooming, there's no other choice but to use frame-by-frame typeset. In such cases, float values are required for /fscx & /fscy (if there's zoom in/out) otherwise it won't be smooth during playback.
In Aegisub(32-Bit), if you go to View -> Options -> Video, you'll see an option "Subtitles provider". If you choose"CSRI/xy-vsfilter_aegisub", then it supports float values. So I tried loading "xy-vsfilter-aegisub.dll" in the avisynth script, but it says it's not an avisynth plugin. Whereas the other one "vsfilter-aegisub32.dll" works fine in avisynth but it doesn't support float values.
Well you see when there's a sign which has an non-uniform movement & zooming, there's no other choice but to use frame-by-frame typeset. In such cases, float values are required for /fscx & /fscy (if there's zoom in/out) otherwise it won't be smooth during playback.
In Aegisub(32-Bit), if you go to View -> Options -> Video, you'll see an option "Subtitles provider". If you choose"CSRI/xy-vsfilter_aegisub", then it supports float values. So I tried loading "xy-vsfilter-aegisub.dll" in the avisynth script, but it says it's not an avisynth plugin. Whereas the other one "vsfilter-aegisub32.dll" works fine in avisynth but it doesn't support float values.
ankush93- Posts : 7
Points : 4001
Reputation : 3
Join date : 2013-10-10
Re: Non-integer values for /fscx & /fscy
Well, I still wouldn't agree with you regarding
For instance, consider this :
![Non-integer values for /fscx & /fscy Test10](https://i.servimg.com/u/f57/18/54/98/26/test10.png)
What I have here is a screenshot in Aegisub of a font of size 80. I used 2 layers, lower one in white and with \fscx(140) while the upper layer is red coloured with \fscx(141). If there would be a significant use of having float values, the difference would be seen as the layers will not overlap.
As you see, the lower layer is barely visible, which means that even with such a huge font size, it does not make much of a difference whether you use \fscx(140) or \fscx(140.9). And at a font size like 80! This is the aegisub script:
Dialogue: 0,0:00:00.00,0:00:04.00,Default,,0,0,0,,{\pos(640,360)\fs80\shad0\fscx(140)}Random text scaling
Dialogue: 1,0:00:00.00,0:00:04.00,Default,,0,0,0,,{\pos(640,360)\fs80\fscx141\shad0\c&H0000FF&}Random text scaling
I tried animating with \t as well and playback appeared smooth to me.
If you are getting float values by using visual typesetting in aegisub, I'd suggest rounding it off to the closest integer, though I guess it might get tedious doing it frame by frame. Of course, if it plays properly in the mkv file, then no problem, right!
Anyway did you try the other workaround I mentioned - point 2 in my previous comment? It can, in many cases, solve your problem if you want so exact scaling.
ankush93 wrote:. In such cases, float values are required for /fscx & /fscy (if there's zoom in/out) otherwise it won't be smooth during playback.
For instance, consider this :
![Non-integer values for /fscx & /fscy Test10](https://i.servimg.com/u/f57/18/54/98/26/test10.png)
What I have here is a screenshot in Aegisub of a font of size 80. I used 2 layers, lower one in white and with \fscx(140) while the upper layer is red coloured with \fscx(141). If there would be a significant use of having float values, the difference would be seen as the layers will not overlap.
As you see, the lower layer is barely visible, which means that even with such a huge font size, it does not make much of a difference whether you use \fscx(140) or \fscx(140.9). And at a font size like 80! This is the aegisub script:
Dialogue: 0,0:00:00.00,0:00:04.00,Default,,0,0,0,,{\pos(640,360)\fs80\shad0\fscx(140)}Random text scaling
Dialogue: 1,0:00:00.00,0:00:04.00,Default,,0,0,0,,{\pos(640,360)\fs80\fscx141\shad0\c&H0000FF&}Random text scaling
I tried animating with \t as well and playback appeared smooth to me.
If you are getting float values by using visual typesetting in aegisub, I'd suggest rounding it off to the closest integer, though I guess it might get tedious doing it frame by frame. Of course, if it plays properly in the mkv file, then no problem, right!
Anyway did you try the other workaround I mentioned - point 2 in my previous comment? It can, in many cases, solve your problem if you want so exact scaling.
sjoe92- Posts : 74
Points : 4291
Reputation : 11
Join date : 2013-07-21
Age : 31
Location : India
Character sheet
Character Name: Minato Namikaze
Profession: Hokage
Level:(1/1)
Re: Non-integer values for /fscx & /fscy
Download the file : http://www.multiupload.nl/EIU5CF23IH
Play this in Aegisub by setting the "Subtitles provider" as "vsfilter-aegisub32.dll" and then "xy-vsfilter-aegisub.dll". You will notice the difference.
Play this in Aegisub by setting the "Subtitles provider" as "vsfilter-aegisub32.dll" and then "xy-vsfilter-aegisub.dll". You will notice the difference.
ankush93- Posts : 7
Points : 4001
Reputation : 3
Join date : 2013-10-10
Re: Non-integer values for /fscx & /fscy
Yes, here too the difference was showing because of the high size of the font (135).
Well, then try this script - I reduced the \fs and gave high scaling, like I'd mentioned previously. A bit of ugly work here (using find and replace), it works much better with either filters now
Didn't try hardsubbing it yet...
Do let me know if it works or not.
https://mega.co.nz/#!8UUhWJxA!WdaaXEtKivUT0W1rsATRZ132TVl4DbxJXhg-kcW51PA
Well, then try this script - I reduced the \fs and gave high scaling, like I'd mentioned previously. A bit of ugly work here (using find and replace), it works much better with either filters now
![Smile](https://2img.net/i/fa/i/smiles/icon_smile.gif)
Do let me know if it works or not.
https://mega.co.nz/#!8UUhWJxA!WdaaXEtKivUT0W1rsATRZ132TVl4DbxJXhg-kcW51PA
sjoe92- Posts : 74
Points : 4291
Reputation : 11
Join date : 2013-07-21
Age : 31
Location : India
Character sheet
Character Name: Minato Namikaze
Profession: Hokage
Level:(1/1)
Re: Non-integer values for /fscx & /fscy
Wow, nicely done. But I didn't understand how you did it. What did you find & replace? Low /fs value and high scaling will get me around this problem? Please explain...
P.S.: Thanks for taking your time for my silly problem buddy. I really appreciate![Smile](https://2img.net/i/fa/i/smiles/icon_smile.gif)
![Neutral](https://2img.net/i/fa/i/smiles/icon_neutral.gif)
P.S.: Thanks for taking your time for my silly problem buddy. I really appreciate
![Smile](https://2img.net/i/fa/i/smiles/icon_smile.gif)
ankush93- Posts : 7
Points : 4001
Reputation : 3
Join date : 2013-10-10
Re: Non-integer values for /fscx & /fscy
Well, no problem is too silly ![Very Happy](https://2img.net/i/fa/i/smiles/icon_biggrin.png)
Fine, I'm not the best at explaining but I'll explain it this way- consider a text of fs 100. Suppose you give a scaling of 95.63, this means you want the effective size to be 95.63 * 100. So you want the size to be 9563. However your vs filter will only take the integer part of 95.63, which is 95. So, it gives size as 95*100=9500, an error of 63.
However, instead if you were to give a fs of 10 and scale 956.3, you will get the same font size. However, your vsfilter approximates 956.3 as 956. Hence, it shows the size as 956*10 = 9560. This is a much closer approximation to the actual size you want.
(Note - I'm pretty sure that fscx and fs are not multiplied like I said above, as the fscx and fscy vales are in %, but I said that way for convenience of explaining.) The point being, try keeping a lower size and give high scaling in case float values are not recognised.
As to how I did it, you have the Find and Replace option in aegisub. I simply put \fs135 in find and \fs13.5 in the replace and replaced all. Then I had to multiply all fscx and fscy by 10, which is like shifting decimal point to right by one place. So I found all instances of .9 in fscx and fscy and replaced by 9. , .8 by 8. , .7 by 7. ,etc. There again I had to take care not to replace the decimal points in the rectangle drawn. As you can see, it took 15 odd min. to do
Not sure if I explained properly. I tend to complicate things sometimes, so sorry.
![Very Happy](https://2img.net/i/fa/i/smiles/icon_biggrin.png)
Fine, I'm not the best at explaining but I'll explain it this way- consider a text of fs 100. Suppose you give a scaling of 95.63, this means you want the effective size to be 95.63 * 100. So you want the size to be 9563. However your vs filter will only take the integer part of 95.63, which is 95. So, it gives size as 95*100=9500, an error of 63.
However, instead if you were to give a fs of 10 and scale 956.3, you will get the same font size. However, your vsfilter approximates 956.3 as 956. Hence, it shows the size as 956*10 = 9560. This is a much closer approximation to the actual size you want.
(Note - I'm pretty sure that fscx and fs are not multiplied like I said above, as the fscx and fscy vales are in %, but I said that way for convenience of explaining.) The point being, try keeping a lower size and give high scaling in case float values are not recognised.
As to how I did it, you have the Find and Replace option in aegisub. I simply put \fs135 in find and \fs13.5 in the replace and replaced all. Then I had to multiply all fscx and fscy by 10, which is like shifting decimal point to right by one place. So I found all instances of .9 in fscx and fscy and replaced by 9. , .8 by 8. , .7 by 7. ,etc. There again I had to take care not to replace the decimal points in the rectangle drawn. As you can see, it took 15 odd min. to do
Not sure if I explained properly. I tend to complicate things sometimes, so sorry.
sjoe92- Posts : 74
Points : 4291
Reputation : 11
Join date : 2013-07-21
Age : 31
Location : India
Character sheet
Character Name: Minato Namikaze
Profession: Hokage
Level:(1/1)
Re: Non-integer values for /fscx & /fscy
Your explanation was neat. I understood what you're trying to say. Though it didn't solve my actual problem but it did show me a way around it
. I'll try doing things like you've said. Yes, it's a lot of work to find & replace the scaling values. Actually I found a lua automation script on the internet which allows me to multiply the values of \fscx & \fscy. So thank you very much for your help. ![Smile](https://2img.net/i/fa/i/smiles/icon_smile.gif)
![Smile](https://2img.net/i/fa/i/smiles/icon_smile.gif)
![Smile](https://2img.net/i/fa/i/smiles/icon_smile.gif)
ankush93- Posts : 7
Points : 4001
Reputation : 3
Join date : 2013-10-10
Hi10 Anime :: General :: Off-Topic
Page 1 of 1
Permissions in this forum:
You cannot reply to topics in this forum