AnimeSuki Forums

Register Forum Rules FAQ Community Today's Posts Search

Go Back   AnimeSuki Forum > Anime Related Topics > General Anime > Fansub Groups

Notices

Reply
 
Thread Tools
Old 2006-11-09, 11:27   Link #301
Sylf
翻訳家わなびぃ
*Fansubber
 
 
Join Date: Nov 2003
Age: 50
Send a message via MSN to Sylf Send a message via Yahoo to Sylf
You can start with a karaoke looking like
Code:
{\k40}wa{\k20}ta{\k20}shi {\k40}wa
Which you might transform to
Code:
{\t(0,100,\fscx130\fscy130)\t(100,400,\fscx100\fscy100)}wa
{\t(400,450,\fscx130\fscy130)\t(450,600,\fscx100\fscy100)}ta
{\t(600,650,\fscx130\fscy130)\t(650,800,\fscx100\fscy100)}shi
{\t(800,900,\fscx130\fscy130)\t(900,1200,\fscx100\fscy100)}wa
The problem with that code is that as one syllable grow in size, it pushes the rest of the line the the side to make room for it to grow, making the whole line dance around. If that's the effect you want, that's fine (AnimeONE once did this with one of Ah My Goddess karaoke). But if not, we need some remedy for it.

The way it once was done was to duplicate the line as many times as the syllables in the line - 4 times in this example.
watashi wa
watashi wa
watashi wa
watashi wa
The red letters would be the syllables that are shown on the screen. The rest of the line on each lines will be hidden using \alpha&Hff&.
Code:
{\t(0,100,\fscx130\fscy130)\t(100,400,\fscx100\fscy100)}wa{\r\alpha&Hff&}tashi wa
{\alpha&Hff&}wa{\alpha&H00&\t(400,450,\fscx130\fscy130)\t(450,600,\fscx100\fscy100)}ta{\r\alpha&Hff&}shi wa
{\alpha&Hff&}wata{\alpha&H00&\t(600,650,\fscx130\fscy130)\t(650,800,\fscx100\fscy100)}shi{\r\alpha&Hff&} wa
{\alpha&Hff&}watashi{\alpha&H00&\t(800,900,\fscx130\fscy130)\t(900,1200,\fscx100\fscy100)} wa
There's an alternative way of accomplishing the same thing, but only using 2 lines for any number of syllables. One line shows the syllables that's not going through the transition. The syllables in question will be made invisible dynamically. The second line does the exact opposite - it'll only be showing while the syllable in question is going through the transition.
Code:
{\t(0,100,\fscx130\fscy130)\t(100,400,\fscx100\fscy100)\t(400,400,\alpha&Hff&)}wa{\r\alpha&Hff&\t(400,400,\alpha&H00&)\t(400,450,\fscx130\fscy130)\t(450,600,\fscx100\fscy100)\t(600,600,\alpha&Hff&)}ta{\r\alpha&Hff&\t(600,600,\alpha&H00&)\t(600,650,\fscx130\fscy130)\t(650,800,\fscx100\fscy100)\t(800,800,\alpha&Hff&)}shi {\r\alpha&Hff&)\t(800,800,\alpha&H00&)\t(800,900,\fscx130\fscy130)\t(900,1200,\fscx100\fscy100)}wa
{\alpha&Hff&\t(400,400,\alpha&H00&)}wa{\r\alpha&H00&\t(400,400,\alpha&Hff&)\t(600,600,\alpha&H00&)}ta{\r\alpha&H\t(600,600,\alpha&Hff&)\t(800,800,\alpha&H00&)}shi {\r\alpha&H00&\t(800,800,\alpha&Hff&)}wa
Since the public release of Aegisub and introduction of its automation system with the included line-per-syllable.lua script that Uchikatsu mentioned, more people have started using this instead of those mentioned methodes. What this script does is that it figures out the exact (x,y) coordinate of each syllable, and \pos(x,y) each of them for you. Because each syllables are positioned statically, growth of each syllable won't shove other syllables out of its way.

Just a small side note: while the first and third method will produce pretty much exact same result, the second method doesn't. How?

The top example was made with the first method. "ta" is placed in front of "wa" but behind "shi". The next two example was made with the second method, just different layer orders. You can make the syllables grow behind or in front of the rest of the line - you have the control.
Sylf is offline   Reply With Quote
Old 2006-11-09, 22:22   Link #302
zeldAIS
Junior Member
 
Join Date: Oct 2006
Yay! thanks! i kinda understand now. will experiment and stuffs.

but is it possible to use the lua script for that? or other softwares that can save time :P
zeldAIS is offline   Reply With Quote
Old 2006-11-10, 00:37   Link #303
Sylf
翻訳家わなびぃ
*Fansubber
 
 
Join Date: Nov 2003
Age: 50
Send a message via MSN to Sylf Send a message via Yahoo to Sylf
Lua script by itself probably won't be the best thing. It's a generic scripting language that's used in many different applications, or in stand-alone mode.

I'm sure you meant lua script in Aegisub. Yes, you can use them. In fact, the karaoke replacer etc scripts that come with aegisub should automate all those operations quite nicely.

Or you can use RaistlinMajere's SSA Tools for karaoke too.

If you know generic scripting or programming languages, you can write script of your own too. There are some scripting samples posted on page 5 of this thread.
Sylf is offline   Reply With Quote
Old 2006-11-10, 18:30   Link #304
adrianmak
Member
 
Join Date: Nov 2006
I'm going to use \clip to create a gradient color text effect. However how to I choose what color for each clip and final text look in gradient color.
Any tools to generate gradient color values ? like I want 4 gradient and it will generate 4 values of color
adrianmak is offline   Reply With Quote
Old 2006-11-10, 19:28   Link #305
jfs
Aegisub dev
 
 
Join Date: Sep 2004
Location: Stockholm, Sweden
Age: 39
Again, if it's just for a still gradient (ie. not in a karaoke...) Raistlin's SSATool can do it.

Otherwise you'll want to do some interpolation.

Say you want to ramp from pure red (RGB 255 0 0, &H0000FF& in SSA hex) to pure blue (RGB 0 0 255, &HFF0000&) in four steps.

First step will be the start color, fourth (last) step will be the end color.
Step two and three will be some color in-between the two colors.
You interpolate each color component (red, green blue) separately.

Now, number each step of the gradient, starting at zero. First step is 0, second is 1, third is 2 and fourth is 3. These numbers are important.
Now there is a simple way to tell how far we are between start and end, just say: curstep / maxstep
Here, maxstep is 3.
So, for step 0, progress = 0/3 = 0
Step 1: progress = 1/3
Step 2: progress = 2/3
Step 3: progress = 3/3 = 1

Now you can calculate the value of each component using the progress value.
If you take for example red, you know it has to be 255 at progress=0 and 0 at progress=1, so you have to "invert" the progress value.
You get something like this:
progress = 1/3
red = (1 - progress) * 255 + progress * 0 = 2/3 * 255 = 170
green = (1 - progress) * 0 + progress * 0 = 0
blue = (1 - progress) * 0 + progress * 255 = 1/3 * 255 = 85

You can similarly do interpolation in lots of other cases, not just for colors. For example it's also a fine way to calculate some points along a straight line, given the start and end points. Just interpolate between the X and Y coordinates of those.
__________________

Aegisub developer [ Forum | Manual | Feature requests | Bug reports | IRC ]
Don't ask for: More VSFilter changes (I won't), karaoke effects, help in PM's
jfs is offline   Reply With Quote
Old 2006-11-11, 00:00   Link #306
adrianmak
Member
 
Join Date: Nov 2006
A bit complicated and I need some time to digest
adrianmak is offline   Reply With Quote
Old 2006-11-14, 11:46   Link #307
getfresh
done
*Fansubber
 
Join Date: Nov 2003
Location: Yokosuka, JP
Age: 43
You are gunna be digesting for some time. Last time i ate a typesetter it took 2 weeks to full digest him... and dear god... the diarrhea after was just awful.
getfresh is offline   Reply With Quote
Old 2006-11-14, 15:19   Link #308
Sergejack
Senior Member
 
 
Join Date: Mar 2004
Location: Above
Age: 44
Send a message via MSN to Sergejack
Quote:
Originally Posted by getfresh View Post
diarrhea
Shitty output as your usual, he?
Sergejack is offline   Reply With Quote
Old 2006-11-15, 12:59   Link #309
getfresh
done
*Fansubber
 
Join Date: Nov 2003
Location: Yokosuka, JP
Age: 43
pfft. Unlike you, I have more skills then an occupation center so back down little man.
getfresh is offline   Reply With Quote
Old 2006-11-15, 13:11   Link #310
getfresh
done
*Fansubber
 
Join Date: Nov 2003
Location: Yokosuka, JP
Age: 43
Quote:
Originally Posted by TheFluff View Post
getfresh: jfs was the person who, AFAIK, invented karaoke-effected furigana. Is that what you call "the same old thing everyone else is doing"?
Also, I suggest you stop going around on forums to brag about your enormous e-penis and instead go back to RTFM some about Aegisub's automation system (which happens to be designed by said jfs). If you claim a full-fledged Lua programming environment that lets you write arbitrary code to do whatever you like to the text can't do what you can do in notepad, you obviously don't have any idea what you're talking about.
Ok I never read this reply so this an old reply to reply. But as I stated I have yet to see one that can do most the effects until after they are used. Even if it is openended it is generally only for one pass of effects not a multilayered one. And yes I have a massive ego cause I have rights to it as my work dictates. The REASON I said use notepad is cause when you have to sit there and hand code you spend MORE time doing the effects and have more time to come up with better ideas and play. I can change one thing quickly, hit ctrl+s, and frame forward in vdub allowing me to see actual changes much faster. And actual translition effects of karaoke were first done by shadow I believe from Anime-Fansubs, and later by someone in E-F then it cuaght on. I had never even heard of "jfs" till Aegisub.
getfresh is offline   Reply With Quote
Old 2006-11-15, 14:26   Link #311
Mentar
Banned
 
 
Join Date: Nov 2003
Location: Hamburg
Age: 54
Oh look! Topper from Dilbert reads Animesuki

getfresh, with all undue respect, please be careful banging your chest, you might bruise it. jfs has been giving some very good and helpful advice, and his automation tools are definitely very useful. Very unlike your sneering contributions.

Why would any rational person recommend to any karaoke newcomer to edit 600 layers manually in notepad when a much more efficient way exists to do it via tool support? This kind of silly talk reminds me very much of have-been encoders who brag how they edited Avisynth scripts of 5k and more back in their days, and how this is the only way to do it, while competent encoders nowadays do all of this and more in a fraction of time and effort using modern tools instead. Please don't waste our time with your ego-tripping, nobody (bar you) is interested in it.

And just for the record: In the over 5 years I've been encoding anime, I've barely ever heard your name. On the other hand, jfs not only released a neat tool for others to use, he's been known to me for years.
Mentar is offline   Reply With Quote
Old 2006-11-15, 16:36   Link #312
DreXam
Dream's High Tension.
 
Join Date: Dec 2005
Location: Kuwait
Age: 35
Quote:
Originally Posted by Mentar View Post
Why would any rational person recommend to any karaoke newcomer to edit 600 layers manually in notepad when a much more efficient way exists to do it via tool support?
To learn the art of karaoke... instead of using ready-made effect

sorry boy, but dont talk about kara if you're nothing on it

And one more thing! Respect your uncle getfresh

Ah~ btw, this is the first i have seen your name on the court of Encoders :P~
DreXam is offline   Reply With Quote
Old 2006-11-15, 16:42   Link #313
xat
Senior Member
*Fansubber
 
Join Date: Dec 2005
It's not using a "ready-made effect", usually. These tools are there to aid in the rather non-artistic aspect of things. The calculations, the tweaking, and fine positioning of layers. It's just tedious. Nothing that really needs to be dealt with.

For the tools to be effective, the styler needs to be able to script his vision using a combination of ASS and whatever tool you use to automate the process. That alone is an art.
xat is offline   Reply With Quote
Old 2006-11-15, 17:10   Link #314
TheFluff
Excessively jovial fellow
 
 
Join Date: Dec 2005
Location: ISDB-T
Age: 37
It seems like the people criticizing automated methods don't have the faintest idea what they're talking about.
What part of "arbitrary code" is so hard to understand? Any karaoke effect that is possible to create with ASS can be created with Aegisub's Automation. Period. It won't always be SIMPLE, but there's nothing that cannot be done.

BTW, there are like 8 example scripts, intended to display the automation module's capabilities, that ships with Aegisub. Those are the ONLY "ready-made effects" there are...
__________________
| ffmpegsource
17:43:13 <~deculture> Also, TheFluff, you are so fucking slowpoke.jpg that people think we dropped the DVD's.
17:43:16 <~deculture> nice job, fag!

01:04:41 < Plorkyeran> it was annoying to typeset so it should be annoying to read
TheFluff is offline   Reply With Quote
Old 2006-11-15, 17:14   Link #315
ArchMageZeratuL
Aegisub dev
*IT Support
 
 
Join Date: Dec 2004
Location: Florianópolis, Brazil, Pale Blue Dot
Age: 38
Just to clear things up, when you're programming a karaoke (as opposed to writing it manually) - and it doesn't matter if you're using asscalc, Aegisub Automation or one of the ten billion tools that do it - as long as it uses a real programming language (Lua, in Aegisub's case), there's nothing that can't be done with it. It's that simple. You could, in theory, simply write a code that will linearly write the entire subtitles as if you were typing in notepad, but that would be silly, to say the least.

The whole point of programming a karaoke is to automate the repeated and/or mathematical parts, while letting you focus on the artistic part of it. There are no limits to it, again, provided that you're using a turing-complete language as the foundation. It lets you have the exact same result (or, more often than not, a better result, since it can, at your own discretion, have mathematical precision instead of "eye-o-meter") with much less wasted time (although a very complex karaoke will still take several hours to program).

And how can someone NOT have heard of Mentar as encoder? He's one of the oldest and most respected (if not the most...) encoders in the community. My guess is that you haven't heard of darkhold, either, which is a shame, as it is a very good source of information regarding encoding of anime.
ArchMageZeratuL is offline   Reply With Quote
Old 2006-11-15, 17:32   Link #316
DreXam
Dream's High Tension.
 
Join Date: Dec 2005
Location: Kuwait
Age: 35
lol, fast respond.
anyway it's really my first time hearing about mentar.. in memory now
DreXam is offline   Reply With Quote
Old 2006-11-15, 17:34   Link #317
Medalist
Infie
*Fansubber
 
 
Join Date: Jul 2006
Location: Texas
I automate karaokes to randomize, scale, calculate or do it for me. Or Rather I put most of the work in to C++ My program for the effect to be read in it..so it can be applied. That's the only work I do. Besides the k-timing itself. Or rather compare mine against a 64bit auto k-timer. But whatever...ArchMageZeratual people have other reasons for automating effects. Focusing on the art is basically the styling no? And any good typesetter could make and think of a good effect on the spot to go with a specific show or whatever.

Edit: Never heard of mentar but have of darkhold(place) >_>
Medalist is offline   Reply With Quote
Old 2006-11-15, 18:37   Link #318
Sylf
翻訳家わなびぃ
*Fansubber
 
 
Join Date: Nov 2003
Age: 50
Send a message via MSN to Sylf Send a message via Yahoo to Sylf
To some people, I believe there are benefits to learning to make karaoke effects by hand. It makes them realize exactly what portion of the code they're repeating, and really starting to see the benefit of automated system. At that time, the person would know exactly how to construct a formula for the tool to be used. At least that's how it worked for me.

Quote:
Originally Posted by TheFluff
Any karaoke effect that is possible to create with ASS can be created with Aegisub's Automation.
I wouldn't be so conclusive. Yes, it can theoretically be done, but some of them are not easy to do in automated fashion. In two sample scripts I've used for aegisub (simple \k replacer and per syllable thing), there's no if-then-else built-in. I know that I can create my own lua script. But not everyone is talented enough to pick up a new scripting language in 2 days. For some programatically challenged, it might be faster to actually work on it manually.

Then there's couple of cases I've several different styles within one karaoke. Those really benefited from manual works, because I was taking on inspirations for each line and each syllable effects as I worked on each section. On both cases, I somewhat think that the effects are borderlining between fun and overdone. Or maybe look too show-off-y. Nonetheless, those karaoke wouldn't have come to life if I did them using automated tools.

I do like many automation tools I've seen and used. But to me, none of them are the right answer if the situation really calls for extra creativity.


My stance - there are right times to use the tools. There also are times it's better to work in manual fashion.
Sylf is offline   Reply With Quote
Old 2006-11-15, 19:34   Link #319
Harukalover
In exile
 
 
Join Date: May 2006
Location: There! Not there! There!
Age: 36
Oh lawl getfresh believes automation scripts are like selling our soul to the devil for karaoke greatness I guess?

*/me heard of Mentar for his helpful tips he gives inexperienced encoders and experienced encoders alike...

**/me heard of getfresh for his greatness at bragging at how superior he is, because he can stand using inefficient methods to make his karaokes...

***/me wonders why we care about who heard of who?
__________________
"Brainpower without willpower is no power."
Harukalover is offline   Reply With Quote
Old 2006-11-15, 20:01   Link #320
jfs
Aegisub dev
 
 
Join Date: Sep 2004
Location: Stockholm, Sweden
Age: 39
Quote:
Originally Posted by Sylf View Post
In two sample scripts I've used for aegisub (simple \k replacer and per syllable thing), there's no if-then-else built-in.
It's a bit convoluted, but there is. The Lua logical "and" and "or" operators can be used to this effect. (I admit I just realised that five minutes ago, while writing this post. I was suggesting an even more convoluted solution at first, involving anonymous inline functions among other things.)

For example:
Code:
{%(($dur > 10) and "\\kf$dur") or "\\k$dur"%}
The parentheses here are only for explanation, and aren't required at all. This can of course be chained, "condition1 and result1 or condition 2 and result2 or condition3 and result3 or result4" etc.

As for whether generated karaokes limit creativity or not, I don't let them. If I need some special cases with extra control within a kara, I write code to allow me to put arbitrary overrides. This was partly what made me add the inline_fx and ool_fx (sorry, haven't doc'd this one properly...) in Automation. inline_fx can also easily be used in multi-template, just test again A.syl.inline_fx in a boolean construct like shown above. And if nothing else, you can have some lines that go unchanged from the source-ASS into the generated file.

I like writing algorithms to generate visual effects, which is why I like doing karaoke, even if I don't produce that much. And that's why I don't hand-write everything, because I like programming "If it's not possible, make it."

Now, I don't care how other people make their effects. I won't force anyone to use Aegisub. But that doesn't stop me from striving to create a well-documented tool with high usability. If anyone have any constructive complaints/suggestions, I'd love to hear them.
__________________

Aegisub developer [ Forum | Manual | Feature requests | Bug reports | IRC ]
Don't ask for: More VSFilter changes (I won't), karaoke effects, help in PM's
jfs is offline   Reply With Quote
Reply

Tags
fansubbing, karaoke, software


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -5. The time now is 23:17.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
We use Silk.