📜 ⬆️ ⬇️

The correct translation or how was the localization of the series "Stage"

image
1.5-2 years ago, in a conversation with ID_Daemon, he asked me how it would be possible to localize the series , which he really wants to translate. If you do as usual srt subtitles, it will be an unreadable jumble of text, if done in video editors such as AE, it will be too long and time-consuming, at least for us. Therefore, my choice fell on text ass subtitles, what happened, everyone who wanted to have already seen, and now how it was done:

Most often ass subtitles are used for text positioning and translation of labels. Here's how, for example, you can use ass subtitles:
Hidden text



')

It’s a pity that not all translators make their subtitles look visually pleasing.


In our case, we decided to go a little further and transfer almost the entire video series to them.
I note that my goal is not to retell faq on ass tags or aegisub program - the “native” program for ass subtitles.
If something is not clear to you, then the faq itself can be found here: subs.com.ru/page.php?al=ssa_description (ass format) and here: docs.aegisub.org (aegisub)
So far, the essential minus of these faks is that there are very few examples in them, if not at all. On the one hand, it is clear that the {b} tag will make the text bold, on the other hand, what will make this line of subtitles:
Dialogue: 0,0:04:31.75,0:04:32.25,white,,0000,0000,0000,,{\p1\pos(0,0)\clip(173,440,426,461)}m 0 0 l 800 0 l 800 600 l 0 600{\p0}
can not be understood immediately.

So.
Now we come directly to our work, the original frame that we need to translate looks like this:


To begin with, several styles were created, the text in which visually roughly corresponded to the text in the corresponding messengers:

The white style was used to “paint over” the original text.

Let's try to substitute the Russian text, so that it matches the original, for this you can move it with "hands", i.e. corresponding element of Aegisaba, but it is easier to type positions on the keyboard using the \ pos tag, since Need pixel precision:


It turns out such a mess, but we see that the Russian text has risen to the right place. Now it needs to be cut off so that it does not get out of the box, it will be convenient to do it with a tool in aegisabe, called “trim the subtitles with a vector area” (tag \ clip), for those who are familiar with graphic editors this will be a common thing:

Also, in order for the points to move pixel-by-pixel, it is worth increasing the frame size to 200% or the maximum that is visible on your screen resolution.

Now we remove the original text in the messengers:


This is done in several stages, in different ways, we did this: draw a rectangle the size of the entire frame (so that you can use wherever you need to paint something):
Dialogue: 0,0:03:48.64,0:03:48.71,white,,0000,0000,0000,,{\p1}m 0 0 l 800 0 l 800 600 l 0 600{\p0}
then this rectangle was cut off.

It seems everything, we will collect all the pieces of the mosaic together and ... cheers! We were able to localize this set of frames:


The final subtitle looks like this:
Hidden text
 Dialogue: 0,0:03:48.64,0:03:48.71,white,,0000,0000,0000,,{\p1\pos(0,0)\clip(m 297 358 l 540 358 540 339 779 339 778 543 297 543)}m 0 0 l 800 0 l 800 600 l 0 600{\p0} Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(297,351)\clip(m 297 358 l 540 358 540 339 779 339 778 543 297 543)}<coda>  ,     Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(297,367)}<gryffin> ,      , Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(315,383)}    -    Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(297,399)}<coda>  ,    Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(297,415)}<coda>  dust     Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(297,431)}<gryffin>      ? Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(297,447)}<coda>   ,  Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(297,463)}<gryffin>   ,   ,     Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(297,479)}<gryffin>    - ,    Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(315,495)}   Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(297,511)}<coda>   Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(297,527)}<gryffin>  Dialogue: 0,0:03:48.64,0:03:48.71,mirc,,0000,0000,0000,,{\pos(297,543)}<coda> brb Dialogue: 0,0:03:48.64,0:03:48.71,white,,0000,0000,0000,,{\p1\pos(0,0)\clip(282,120,510,201)}m 0 0 l 800 0 l 800 600 l 0 600{\p0} Dialogue: 0,0:03:48.64,0:03:48.71,agent,,0000,0000,0000,,{\pos(164,134)\clip(282,119,513,201)}{\b1\c&HA00000&}alanmeans06: {\b0\c&H000404&} Dialogue: 0,0:03:48.64,0:03:48.71,agent,,0000,0000,0000,,{\pos(164,154)\clip(282,119,513,201)}{\b1\c&H0000A0&}brenner2604: {\b0\c&H000404&}   Dialogue: 0,0:03:48.64,0:03:48.71,agent,,0000,0000,0000,,{\pos(164,174)\clip(282,119,513,201)},       Dialogue: 0,0:03:48.64,0:03:48.71,agent,,0000,0000,0000,,{\pos(164,194)\clip(282,119,513,201)}{\b1\c&HA00000&}alanmeans06: {\b0\c&H000404&} 



Firstly, it took up to an hour, the main problem is that after a split second the whole frame could change and almost everything had to be done in a new way, for example, this would happen in just 90 milliseconds if you do not do new subtitles:


those. in this case, the ICQ window just moved. And if a new message is added to the world, then all the positions of the old messages need to be redone. True, here we did a little trick, as many might have already noticed, often have to do the work that can be automated. We did not write the script in lua, which Aegisab understands, for personal reasons :), but here’s what happened in C:


A simple program that forms a “frame-by-frame” chat, moving the lines up and adding new ones, it remains only to make timing to its conclusion:
Hidden text
 Dialogue: 0,0:00:00.00,0:00:00.00,Default,,0000,0000,0000,,{\p1\pos(0,0)\clip(297,340,778,543)}m 0 0 l 800 0 l 800 600 l 0 600{\p0} Dialogue: 0,0:00:00.00,0:00:00.00,Default,,0000,0000,0000,,{\p1\pos(0,0)}m 297 340 l 778 340 l 778 543 l 297 543{\p0} Dialogue: 0,0:00:00.00,0:00:00.00,Default,,0000,0000,0000,,{\pos(297,543)}<tefl0n>   NFO   Dialogue: 0,0:00:00.01,0:00:00.01,Default,,0000,0000,0000,,{\pos(297,527)}<tefl0n>   NFO   Dialogue: 0,0:00:00.01,0:00:00.01,Default,,0000,0000,0000,,{\pos(297,543)}<pyr0>   Dialogue: 0,0:00:00.02,0:00:00.02,Default,,0000,0000,0000,,{\pos(297,511)}<tefl0n>   NFO   Dialogue: 0,0:00:00.02,0:00:00.02,Default,,0000,0000,0000,,{\pos(297,527)}<pyr0>   Dialogue: 0,0:00:00.02,0:00:00.02,Default,,0000,0000,0000,,{\pos(297,543)}<slipknot> coda   ? Dialogue: 0,0:00:00.03,0:00:00.03,Default,,0000,0000,0000,,{\pos(297,495)}<tefl0n>   NFO   Dialogue: 0,0:00:00.03,0:00:00.03,Default,,0000,0000,0000,,{\pos(297,511)}<pyr0>   Dialogue: 0,0:00:00.03,0:00:00.03,Default,,0000,0000,0000,,{\pos(297,527)}<slipknot> coda   ? Dialogue: 0,0:00:00.03,0:00:00.03,Default,,0000,0000,0000,,{\pos(297,543)}<c0da>  .... 



Typing in the messengers was done using a very suitable karaoke tag, \ ko, it looked like this:

typed text at the beginning was lowered below to see if there were any problems in the synchronicity of typing, then put in place. The subtitle of the set turned out like this:
Dialogue: 0,0:21:02.27,0:21:07.41,mirc,,0000,0000,0000,,{\pos(298,593)}{\ko10}{\ko7} {\ko7}{\ko8} {\ko7}{\ko10}{\ko10}{\ko8}{\ko10}{\ko8}{\ko10}{\ko8}{\ko10}{\ko10} {\ko10}{\ko7}{\ko10}{\ko10}{\ko10}{\ko10}{\ko10}{\ko10}{\ko7}{\ko10} {\ko10}{\ko7}{\ko10}{\ko10}{\ko10}{\ko7} {\ko10}{\ko10}{\ko10}{\ko10}{\ko9}{\ko9}{\ko9}{\ko9} {\ko9}{\ko9} {\ko9}{\ko9}{\ko9}{\ko9} {\ko9}{\ko9}{\ko9}{\ko9}{\ko9} {\ko9}{\ko9}{\ko9}{\ko9}{\ko9}

At the beginning and end of the series, the text either appears or disappears. We did this part as follows: overflowing the background from black to white (but more often it was other gradations of color)
Dialogue: 0.0: 00: 52.76.0: 02: 02.43, white2,, 0000.0000.0000 ,, {\ t (0.1900, \ c & FFFFFF &) \ p1 \ clip (365,264,685,517)} m 0 0 l 800 0 l 800 600 l 0 600 {\ p0}
and the text itself was “eroded” by the fad tag.
Hidden text


Total many, many hours of work, 460-kilobyte sub and a series of translated! :) On the one hand, doing it is very dreary, on the other hand, we end up with a great subtitle, which is nice to read. Then it remains the case for small- “sew” subtitles in the video, so that all of them look as intended.

Source: https://habr.com/ru/post/160083/


All Articles