# Subbing Guidelines

Contains all information required by HoloResort Translations subtitlers, timers, and typesetters.

The goal of a subber or subtitler is to overlay, style, time, edit, and render subtitles efficiently into our videos with high quality. This guideline is only useful if you already know the basics of Aegisub. The documentation for Aegisub is available [here](https://aegisub.org/docs/latest/).

Written by rikunandakedo, Madekuji, and Sheer Curiosity.

# Disclaimer

These guidelines are only mandatory for HoloResort Translations (a.k.a. HLR) but have been made public for everyone so they can take a reference on what the team prescribes as the minimum “acceptable” standards to provide within the VTuber clipping community. If you are not a part of the referred team, you are free to follow or ignore the document.

This document is also not finished nor finalized and things may be added or modified at any given time. As the standards of the team and general community evolve, we will also continue to evolve and provide the quality our team strives for.

If you have any changes you’d like to be made or have things that are yet to be added, please contact me through Discord (rikunandakedo#3217) or any HLR team leader. Thank you for your contribution!

P.S. The only necessary parts are Timing, Typefacing, and Hardsubbing. The rest are just a bonus if you want more “advanced” techniques.

# Aegisub Setup

#### Which Aegisub version am I supposed to use this time?

<span style="white-space:pre-wrap;">Please use the </span>*****arch1t3cht fork of Aegisub*****<span style="white-space:pre-wrap;"> available </span>[here](https://github.com/arch1t3cht/Aegisub)<span style="white-space:pre-wrap;">. It is also the same version being used by </span><s>the fansubbing cartel</s><span style="white-space:pre-wrap;"> other fansubbers and fansubbing groups.</span>

[![image.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/k0ONZIvSpulAjkQZ-image.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/k0ONZIvSpulAjkQZ-image.png)

#### Features over other Aegisub versions:

- Still being maintained
- Has support for DependencyControl to install scripts
- Support for folding lines; think of them as folders for lines
- Supports video panning from Daydream Cafe fork
- Has experimental dark mode support for Windows (via the wx master build)
- Cross-platform for Windows, macOS, and Linux
- ...and more!

<span style="white-space:pre-wrap;">It uses the TypesettingTools version (now the upstream) of Aegisub as the base and brings in many improvements from other forks, such as the </span>**wangqr**<span style="white-space:pre-wrap;"> and </span>**Daydream Cafe**<span style="white-space:pre-wrap;"> forks while also remaining cross-platform.</span>

#### Can I still use base / upstream Aegisub?

Yes, you may still use the default version of Aegisub for creating subtitles, specifically version 3.4 or above. The newer versions are now based on the TypesettingTools fork as well, and have been merged to upstream.

<p class="callout warning">For HoloResort Translations subbers and quality checkers, it is not recommended to check other subbers' work using base / upstream Aegisub, as the base version does not have support for folding, and you may have issues determining quality without the video panning feature. It is highly encouraged and recommended to use the arch1t3cht fork for Sub QC.</p>

# Timing Guidelines

# Lead-ins and Lead-outs

#### What are lead-ins and lead-outs?

- **These are the spaces in time between the text appearing on-screen and the audio becoming audible.**
- <span style="color: rgb(45, 194, 107);">**Lead-ins**</span> are the time when the subtitle <span style="color: rgb(241, 196, 15);">shows up *before* the talent speaks</span>.
- Lead-outs are the time the subtitles <span style="color: rgb(241, 196, 15);">disappear *after* the talent speaks</span>.
- This is used to get the viewer to <span style="color: rgb(230, 126, 35);">sync up the subtitles with the audio</span> by compensating for the time it takes for the brain to process both sight and hearing.

[![hlr leads.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-05/scaled-1680-/jhbY18LQyM1NIrbJ-hlr-leads.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-05/jhbY18LQyM1NIrbJ-hlr-leads.png)

#### Minimum and recommended values

<table border="1" id="bkmrk-standard-lead-in-at-" style="border-collapse: collapse; width: 429px; border-width: 1px; height: 88.8px;"><colgroup><col style="width: 147px;"></col><col style="width: 134px;"></col><col style="width: 146px;"></col></colgroup><tbody><tr style="height: 29.6px;"><td style="height: 29.6px;"></td><td style="height: 29.6px;">**Minimum**</td><td style="height: 29.6px;">**Recommended**</td></tr><tr style="height: 29.6px;"><td style="height: 29.6px;">**Standard lead-in**

</td><td style="height: 29.6px;">at least 150ms</td><td style="height: 29.6px;">250-300ms</td></tr><tr style="height: 29.6px;"><td style="height: 29.6px;">**Standard lead-out**</td><td style="height: 29.6px;">at least 300ms</td><td style="height: 29.6px;">500-600ms</td></tr></tbody></table>

Just because they’re the minimum, doesn’t mean it’s appropriate to stay at the minimum at all times. Some subtitled lines ***can*** look better if they have extended lead-ins and lead-outs when appropriate, so you are free to add time if they look better that way. If timing is very tight, you can experiment with lowering the lead-ins and lead-outs beyond the minimum, with a focus on lowering lead-out time first.

<div class="notranslate" id="bkmrk--1" style="all: initial;"></div>

# Connected Lines

If the next line of the same speaker is around or less than 500ms (including lead-ins and lead-outs), **connect the lines together** by <span style="color: rgb(230, 126, 35);">snapping</span> the current line to the next line.

This means the end of the current time is the start of the next one.

<p class="callout warning">Some subbers and viewers are more sensitive to short lead-outs and blinking, and may prefer lines to be connected even if they’re more than 500ms apart. This may be the case for people with low reading speed. For example, Madekuji has a preferred lead-out of 500ms-600ms instead of the standard minimum 300ms.</p>

<p class="callout info">You can use the key binds “C” and “V” to add lead-ins and lead-outs correspondingly.   
You can change the amount it adds by going to `View > Options > Audio > Default lead-in/out length (ms)` in Aegisub.</p>

# Keyframing

#### What are keyframes?

- These are sudden and instantaneous transitions to a different scene. (e.g. Jump Cuts, Camera Switches)
- If you encounter one of these, the lead-out should be on the exact frame before the transition happens.

#### When there are already subtitles in a video:

- You should try to match the keyframes of the hardsubbed subtitles in the video to your subtitles.
- You can also try to mask the hardsub so you don’t have to match it but this requires editing software.

# Blinking and Line Splitting

#### Blinking

**Blinking**, also known as “flashing” or “gaps”, is a moment when the timed subtitles disappear and reappear within a few milliseconds/frames. It creates a subtitle effect where subtitles appear to “blink” due to the quick succession of a subtitle, a blank space, then a subtitle, caused by a timing gap in-between subtitles. The gaps in blinking are usually a few milliseconds or frames missing.

[![blinking-ezgif.com-optimize2.gif](https://wiki.holoresorttls.org/uploads/images/gallery/2026-04/SpZ6BfDuwOFCK1b5-blinking-ezgif-com-optimize2.gif)](https://wiki.holoresorttls.org/uploads/images/gallery/2026-04/SpZ6BfDuwOFCK1b5-blinking-ezgif-com-optimize2.gif)

This is a rookie mistake for a lot of new subbers.

<p class="callout danger">**Blinking must be avoided at all costs. It causes reading strain and flashing effects, which may induce discomfort, especially to those with photosensitive epilepsy.**</p>

<p class="callout warning">For HoloResort Translations subbers, your work will be sent back to you to edit if you submit an ASS file that contains blinking unless you can explain why the effect is necessary for the project you are working on.</p>

<p class="callout info"><span style="white-space: pre-wrap;">You can enable “Snap markers” by checking </span>`<span class="editor-theme-code">View > Options > Audio > Snap markers by default</span>`<span style="white-space: pre-wrap;"> in Aegisub.</span>  
This lets Aegisub snap audio markers to other markers whenever you click or drag them if they are close enough, reducing the chances of accidentally creating blinking effects.</p>

#### Line Splitting

Avoid timing a single line for too long. If the line can be broken up into multiple sections, break it apart as such.

- <span style="white-space: pre-wrap;">This is also to be hand in hand with the </span>[ellipsis](https://wiki.holoresorttls.org/link/37#bkmrk-ellipsis-%28...%29)/[em-dash](https://wiki.holoresorttls.org/link/34#bkmrk-em-dash-%28%E2%80%94%29)<span style="white-space: pre-wrap;"> rules from </span>[proofreading](https://wiki.holoresorttls.org/books/translation-and-proofreading-guidelines).
- This is purely up to your judgment. Do what feels right for you and others.

# Multiple Speakers and Collabs

[![image4.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/YO92FdhJc68N0abf-image4.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/YO92FdhJc68N0abf-image4.png)

- Time them chronologically
    - The gap between the two speakers shouldn’t be too far away from each other in terms of how many lines they are separated in aegisub.
- <span style="white-space: pre-wrap;">As much as possible, make sure that both lines </span>*****appear and disappear at the same time*****<span style="color: rgb(45, 194, 107);">.</span>
    - If one of the speakers ends at least 500ms earlier (including lead out), then you may cut the line’s timing there.
    - No matter what, the lead-ins of both speakers should relatively stay the same and appear together.

# Tips and Shortcuts

#### Keyboard Shortcuts

- A - Slide the audio bar to the Left.
- S - Plays the audio entirely.
- D - Plays the last 500ms of the audio.
- F - Slide the audio bar to the right.
- G/Enter - Commit the timing for the line
- Z - Go to the previous line
- X - Go to the next line
- C - Add a set amount of lead-in to the timing (default is 300ms)
- V - Add a set amount of lead-out to the timing (default is 300ms)

#### Changing Settings

[![u2slmvvd.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/aYNkNeHK0nzB2Opf-u2slmvvd.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/aYNkNeHK0nzB2Opf-u2slmvvd.png)

You can change the amount on the settings (Alt+O)

You can check “Snap markers by default” to easily manage blinking/overlapping.

#### Timing Post Processor

<span style="white-space: pre-wrap;">You can use the “Timing Post Processor” to automatically fix and clean out missed </span><span style="color: rgb(224, 62, 45);">blinkings</span>.

<p class="callout warning"><span style="white-space: pre-wrap;">However, </span>*****this does not work if you are working with a collab stream*****<span style="white-space: pre-wrap;"> where multiple people are speaking.</span></p>

# Additional Timing References

##### Here are some additional resources you may find useful:

- [VTuber Clips Timing Guide by Jin Teramachi](https://www.notion.so/VTuber-Clips-Timing-Guide-7846a0f087564d898727aaaa763ac34f)
- [Basics of Timing in Aegisub by unanimated](https://unanimated.github.io/timing-basics.htm)
- [Timing subtitles to audio in Aegisub Docs](https://aegisub.org/docs/latest/timing/)

# Typesetting Guidelines

# Intro

You should generally use the Style Editor when editing the subtitles.

[![image9.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/0TH724A8IYQlMAs0-image9.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/0TH724A8IYQlMAs0-image9.png)

<span style="white-space: pre-wrap;">This can be accessed by clicking on the </span>****S****<span style="white-space: pre-wrap;"> icon in the toolbar or by clicking </span>`<span class="editor-theme-code">Edit</span>`<span style="white-space: pre-wrap;"> next to the style dropdown.</span>

# Typeface Style Guide

These are the preferred settings for subtitle typefacing.

<p class="callout info"><span style="white-space: pre-wrap;">This is in the situation of a </span>**1080p**<span style="white-space: pre-wrap;"> video.</span></p>

#### HLR Standards

These are guidelines to be followed by HoloResort Translations subbers.

<table id="bkmrk-font-familynoto-sans"><colgroup><col></col><col></col></colgroup><tbody><tr><td>##### **Font Family**

</td><td>[**Noto Sans Japanese (Noto Sans JP)**](#bkmrk-font-familynoto-sans "https://fonts.google.com/specimen/Noto+Sans+JP")

- Use Black (900) font weight

</td></tr><tr><td>##### **Font Size**

</td><td>**100-120 (Standard is 110)**

- <span style="white-space: pre-wrap;">It should still be readable when viewed on a </span>**portrait mobile screen**.

</td></tr><tr><td>##### **Border or Outline Size**

</td><td>**7-8 (Standard is 7.5)**

</td></tr><tr><td>##### **Border or Outline Color**

</td><td>[**VTuber Color Reference**](https://docs.google.com/spreadsheets/d/1NKgTRraQz44xdxSp6smtWuSC4Ol3U8HD9an5d61Q8Vs/edit#gid=0)

- The border color should be contrasting to the video’s general tone.
- If it’s dark, use lighter colors and vice versa.

</td></tr><tr style="height: 10px;"><td>##### **Shadow**

</td><td>**0-1 (Standard is 0.5)**

- <span style="white-space: pre-wrap;">Shadows here are used as </span>**indents**<span style="white-space: pre-wrap;"> rather than actual shadows.</span>  
    <span style="white-space: pre-wrap;">It's used primarily to make the text </span>**pop out more**. (**Shadow Indention**)
- <span style="white-space: pre-wrap;">You should only choose the “shadow’s” color in the selected border color’s grayscale. </span>

</td></tr></tbody></table>

#### General Standards

<p class="callout info"><span style="white-space: pre-wrap;">For general and basic typesetting advice, we recommend lyger's </span>[Subtitling Guide](https://lyger.github.io/scripts/guides/subtitling.html).</p>

These are all-purpose guidelines we recommend for all subbers.

##### Font

- It should be easily distinguishable.
- It should be moderately thick.
- There are no unnecessary shapes to the characters.

##### Font Size

- The cap height should cover around 8% of the screen.
    - ~80 pixels on a 1080p video.
- Too small and it can’t be read on mobile vertical; Too big and it’ll steal most of the attention.

##### Border Size

- ~⅓ of the font’s thickness.
    - Eyeball it until it feels right.
    - Find the right balance for your font.

##### Border Color

- [**VTuber Color Reference.**](https://docs.google.com/spreadsheets/d/1NKgTRraQz44xdxSp6smtWuSC4Ol3U8HD9an5d61Q8Vs/edit#gid=0)
- It should be easily distinguishable who’s who. Especially in a collab.

##### Shadow

- Personally, using it other than indenting text is just a waste.
    - I won’t go past 3
- <span style="white-space: pre-wrap;">Might use it for </span>**ShadTrick**<span style="white-space: pre-wrap;"> instead.</span>

---

Note to HLR Docs Editors:

- Link to ShadTrick

# Margins, Alignment, and Positioning

It's not just about how each of the letters and lines look, but a major part of how subtitles can look good and be readable is how the subtitles are framed within the video. Specifically, the margins, alignment, and positioning of the subtitles.

<p class="callout info"><span style="white-space: pre-wrap;">For general and basic typesetting advice, we recommend lyger's </span>[Subtitling Guide](https://lyger.github.io/scripts/guides/subtitling.html).</p>

#### Margins

The Left and Right margin should at least be 60 (Standard is 150)

- It shouldn’t be anywhere near the edge of the screen.
- <span style="white-space: pre-wrap;">It should always be </span>**near the center**.

Vertical margin should at least be 80 (Standard is 100).

<p class="callout danger"><span style="white-space: pre-wrap;">The position of the subtitles should </span>**NOT**<span style="white-space: pre-wrap;"> be </span>**touching the YouTube player bar**.</p>

<p class="callout danger"><span style="white-space: pre-wrap;">It shouldn’t be able to </span>**cover more than the chin of the talent**.</p>

#### Alignment

- `<span class="editor-theme-code">an2</span>`<span style="white-space: pre-wrap;"> for general subtitles.</span>
- `<span class="editor-theme-code">an5</span>`<span style="white-space: pre-wrap;"> for tag manipulation and animations.</span>
- an7 for drawings.

#### Positions

The positions are dependent on what you are subbing.

- <span style="white-space: pre-wrap;">If the video is a </span>**Free Talk or Story Telling**, it should be centralized on either the center of the screen or where the talent is.
- <span style="white-space: pre-wrap;">If the video is a </span>**game-play**, it should be centralized on the gameplay and avoiding GUIs and Menus.<span style="white-space: pre-wrap;"></span>
- <span style="white-space: pre-wrap;">The consensus is it should be over </span>**where the audience will be looking**.

These are common examples of where subtitles should go.

[![image11.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/Zw0F0sT7p45MzYEN-image11.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/Zw0F0sT7p45MzYEN-image11.png)<span style="white-space: pre-wrap;"> </span>[![unnamed-1.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/KemKvGsqRRt36U0H-unnamed-1.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/KemKvGsqRRt36U0H-unnamed-1.png)

#### Collabs

**Define their positions**. If one goes on top of the other, that one should always be on top and vice versa.

If there is a line break, put the top’s position to the one below.

- If the top speaks earlier and has a line break but the bottom also speaks later on, keep the top’s original position.

# Line Breaking and CPS

<p class="callout info"><span style="white-space: pre-wrap;">Note: This section is partially based on the </span>[**BBC Subtitle Guidelines**](https://www.bbc.co.uk/accessibility/forproducts/guides/subtitles/#Line-breaks).</p>

#### <span style="white-space: pre-wrap;">CPS (Characters Per Second) </span>

> CPS measures the number of characters, including spaces and punctuation, that appear in subtitles per second.  
> - Amara

Characters per second is the scale of how readable text is in conjunction with reading speed. It determines whether or not there is enough time to read a certain subtitle line comfortably and without trouble. The simple objective is: low-ish CPS good, high CPS bad.

<table id="bkmrk-"><colgroup><col style="width: 240px;"></col><col style="width: 240px;"></col><col style="width: 240px;"></col></colgroup><tbody><tr><td>[![851731644380479488.webp](https://wiki.holoresorttls.org/uploads/images/gallery/2026-04/scaled-1680-/1ng6H6K31xFZTJAE-851731644380479488.webp)](https://wiki.holoresorttls.org/uploads/images/gallery/2026-04/scaled-1680-/1ng6H6K31xFZTJAE-851731644380479488.webp)

</td><td>[![859690432890929173.webp](https://wiki.holoresorttls.org/uploads/images/gallery/2026-04/scaled-1680-/yVvvLwwY7USWN7AT-859690432890929173.webp)](https://wiki.holoresorttls.org/uploads/images/gallery/2026-04/scaled-1680-/yVvvLwwY7USWN7AT-859690432890929173.webp)

</td><td>[![811488521563013131.webp](https://wiki.holoresorttls.org/uploads/images/gallery/2026-04/scaled-1680-/H4W0hHHbWyRyZSXu-811488521563013131.webp)](https://wiki.holoresorttls.org/uploads/images/gallery/2026-04/scaled-1680-/H4W0hHHbWyRyZSXu-811488521563013131.webp)

</td></tr></tbody></table>

**The CPS column in Aegisub scales from white to red depending on how high it is. Red CPS signifies that it is already dangerously high.**

- <span style="white-space: pre-wrap;">Always </span>**keep it below 20**. If it’s higher than that, you should contact your PRs to reword the sentence.
- If your CPS is less than 5, this means the line has a lot of space to work with and you can split and break it down.
- 20 (absolute max 25) if it's a long line (like more than 3 words)
- 15 (absolute max 20) if it's a short line (like 3 words or less)
- **Theoretical maximum CPS is 25**<span style="white-space: pre-wrap;"> and this is for </span>**Book Readers**.

#### Line breaking (\\N or Shift + Enter)

- <span style="white-space: pre-wrap;">An </span>**ideal line break**<span style="white-space: pre-wrap;"> will be at a piece of punctuation like a full stop, comma, or dash.</span>
- A line break should always be before a pronoun/name.
- Avoid splitting the following parts of speech:
    - article and noun (e.g. the + table; a + book)
    - preposition and following phrase (e.g. on + the table; in + a way; about + his life)
    - conjunction and following phrase/clause (e.g. and + those books; but + I went there)
    - pronoun and verb (e.g. he + is; they + will come; it + comes)
    - parts of a complex verb (e.g. have + eaten; will + have + been + doing)
- Make sure the line break is justified. This means that the subtitles’ margins should relatively be weighed the same.
    - <span style="white-space: pre-wrap;">There are some exceptions to this, such as when a word you’ll be line breaking is too long, you should </span>**prefer it to be bottom-heavy**.

#### There should only be 1 line break.

No matter what, there should only be 2 lines stacked on top of each other. If a sentence is too long, break the sentence down and split it into multiple lines instead.

#### Collabs

<span style="white-space: pre-wrap;">If the video has multiple speakers, </span>**the maximum lines stacked that should appear is 3**.

- <span style="white-space: pre-wrap;">If there are only </span>**2 speakers**, The one who is the main speaker of the conversation will get a line break while the other does not.
- <span style="white-space: pre-wrap;">If </span>**3 speakers**<span style="white-space: pre-wrap;"> are speaking on top of each other, they each only get 1 line. No line breaks.</span>

<p class="callout warning">**If there’s more than 3, good luck.**</p>

# Double Border

- Installation of automation tools will be more detailed below.
- <span style="white-space: pre-wrap;">Double borders are used to give </span>*****more visibility*****<span style="white-space: pre-wrap;"> to the text for the viewer.</span>
- It’s only used if:
    - The border color is too light.
        - <span style="white-space: pre-wrap;">If it’s </span>****yellow****, always use Double Border.
    - The margin of the subtitles already has text behind it.
    - The margins of the subtitles are noisy and hard to see without it.

This is the settings used for adding double border:

[![unnamed.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/rtZlBIYtvXKG2BU6-unnamed.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/rtZlBIYtvXKG2BU6-unnamed.png)

You can check “save configuration” to save this configuration.

<p class="callout info">****Shadow Indention****<span style="white-space: pre-wrap;"> can be used as a substitute or in addition.</span></p>

# Tips and Shortcuts

You can save styles on your style manager to always have a preset whenever you are doing a new project. This can save time if you have all the default settings already made and just need to be readjusted accordingly.

[![image15.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/aunphM2C5n3gtzGo-image15.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/aunphM2C5n3gtzGo-image15.png)

Having a standard that fits this guideline is advisable.

# Typesetting Examples

##### Standard subtitles under normal circumstances

**Taken from** [*****Iofi has to scold her chat \[Hololive Eng Sub | Airani Iofifteen\]***** ](https://youtu.be/m0DuDrL7Xz4)

[![image14.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/vdTESsyZSmQRDKKq-image14.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/vdTESsyZSmQRDKKq-image14.png)

##### Standard subtitles made to fit the game’s UI

<span style="white-space: pre-wrap;">Taken from </span>[*****Ollie tries to steal from Moona, fails \[Hololive Eng Sub | Kureiji Ollie / Moona Hoshinova\]***** ](https://youtu.be/podkUDjg4VA)

[![image2.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/UKwBduetjWsZOeIc-image2.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/UKwBduetjWsZOeIc-image2.png)

##### Standard subtitles with color and border modifications

<span style="white-space: pre-wrap;">Taken from </span>[*****Towa explains the meaning behind “Palette” \[Hololive Eng Sub | Tokoyami Towa\]***** ](https://youtu.be/gaACICL0IG4)

[![unnamed.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/sGEyJGDSHbXimtYO-unnamed.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/sGEyJGDSHbXimtYO-unnamed.png)

##### Standard subtitles with animation and size modifications

**Taken from** [*****Subaru got stood up feat. Shion \[Hololive Eng Sub | Murasaki Shion\]***** ](https://youtu.be/ozgiHt2u8FU)

[![image12.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/5L0YjXcfm0B4UNph-image12.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/5L0YjXcfm0B4UNph-image12.png)

##### Standard subtitles with placement adjustments and multiple speakers

**Taken from the HLR Subbing Test**

[![image4.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/YO92FdhJc68N0abf-image4.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/YO92FdhJc68N0abf-image4.png)

##### Non-HLR sub implementing HLR guidelines with custom font / typeface

**Taken from** [*****Selen fights Giganto in Sonic Frontiers*****](https://youtu.be/OnxkKWfcj5E)

[![Masao T - Selen fights Giganto in Sonic Frontiers [OnxkKWfcj5E - 1920x1080 - 0m06s].png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/U9dcf325cvLsNs9U-masao-t-selen-fights-giganto-in-sonic-frontiers-onxkkwfcj5e-1920x1080-0m06s.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/TjWfKc5Z0F0NrTBx-masao-t-selen-fights-giganto-in-sonic-frontiers-onxkkwfcj5e-1920x1080-0m06s.png)

# Additional Typesetting References

##### Here are some additional resources you may find useful:

- [Subtitling Guide by lyger](https://lyger.github.io/scripts/guides/subtitling.html)
- [BBC Subtitling Guidelines](https://www.bbc.co.uk/accessibility/forproducts/guides/subtitles/https://www.bbc.co.uk/accessibility/forproducts/guides/subtitles/)
- [English Timed Text Style Guide by Netflix](https://partnerhelp.netflixstudios.com/hc/en-us/articles/217350977-English-Timed-Text-Style-Guide)
- [Typesetting in Aegisub by unanimated](https://unanimated.github.io/ts/index.htm)

# Tag Manipulation Guidelines

Also known as “Animated Subtitles” or “Text Effects”

More information can be found in the Aegisub Docs: [***ASS Override Tags***](https://aegisub.org/docs/latest/ass_tags/ "ASS Override Tags")

# Using Tags

Use these tags to your advantage.

- Plain subtitles are fine but they can be more interesting.
- You can manipulate how the tags look depending on how the line was said. It can either be a scream, a sigh, or anything else!

# Action Subs and TL Notes

#### Action Subs in general

<p class="callout danger"><span style="white-space: pre-wrap;">Short Answer: </span>****No.****</p>

- Long Answer: This can be represented with an edit instead.
- <span style="white-space: pre-wrap;">Action Subs are </span>****\*cute laugh\* \*sneeze\* \*oh look how cute she is\* \*brrr\*****
    - Unnecessarily dictates what the talent is doing; sounds and noises.

#### If the Action Subs are specifically mentioned by the talent

- <span style="white-space: pre-wrap;">Some action subs can be </span>****localized by the translators appropriately****.
- <span style="white-space: pre-wrap;">Most action subs are </span>****left in the hands of editors****.

<p class="callout danger"><span style="white-space: pre-wrap;">You </span>*****don’t*****<span style="white-space: pre-wrap;"> use asterisks (\*)</span></p>

#### Laughs / www / 草

<p class="callout danger">****If you’re new or even experienced in subbing****<span style="white-space: pre-wrap;">, I </span>**kindly**<span style="white-space: pre-wrap;"> advise </span>****you don’t add them****<span style="white-space: pre-wrap;"> and leave them to the editor instead.</span></p>

#### TL Notes

- These are to be avoided as much as possible.
- If you do have to add it and if an image can be added, add an image instead.
- If it can be added above the text that specifically needs the note, you can add a small text above it instead. ([FuriNotes](https://prnt.sc/1wx69ps))

# Basic Principles of Complex Animation

- This part is only useful once you know how to manipulate tags efficiently.
- The speed of change of the tags will be dependent on how it’s timed.
    - <span style="white-space: pre-wrap;">If the change is quick and the timing is short, it’ll be </span>****intense****.
    - <span style="white-space: pre-wrap;">If the change is slow and the timing is long, it’ll be </span>****relaxed****.

#### Animated Tag Stacking

[![unnamed.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/zo1FpF4CuNXiQ7Ds-unnamed.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/zo1FpF4CuNXiQ7Ds-unnamed.png)

##### \\t Tag Stacking

- 0<span style="white-space: pre-wrap;"> - Starting time (by the millisecond)</span>
- ****4900****<span style="white-space: pre-wrap;"> - Ending time (by the millisecond)</span>
- ****1****<span style="white-space: pre-wrap;"> - Acceleration of the animation (multiplier of 1)</span>
    - You can stack \\t tags in the same line as long as you add the appropriate starting and ending time.
    - The Numbers marked in yellow are variables and can be adjusted + it’s relative to the timed line.
        - In this case, the line is 5 seconds long (5000ms)

[![image7.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/W2R9fzpmMlowcD0A-image7.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/W2R9fzpmMlowcD0A-image7.png)

##### Move Stacking

- Line 15 is moving on the 30th of a second
- Line 16 is moving at a full second
- The final position of Line 15 is the starting position of Line 16
    - By this, since the move tag can’t be stacked in one line, we go around this by using multiple lines, creating an illusion of acceleration.

[![image13.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/ClFjJUCoWY67fb5D-image13.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/ClFjJUCoWY67fb5D-image13.png)

##### Extreme Example

- <span style="white-space: pre-wrap;">An example to represent how far and complicated you can stack tags and create something like </span>[this](https://youtu.be/68N61NxIKjc?t=542).
- It’s messy, I know.

# Hardsubbing Subtitles

(also known as “burning-in” subtitles)

#### petzku's Encode Clip (recommended method)

[![image.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/r4RXXyMRoPqxiUrS-image.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/r4RXXyMRoPqxiUrS-image.png)

<span style="white-space:pre-wrap;">This uses an Aegisub script called </span>`<span class="editor-theme-code">Encode Clip</span>`<span style="white-space:pre-wrap;"> to hardsub video. This provides the most color-accurate and fastest encoding compared to older methods. The drawback is that it uses </span>`<span class="editor-theme-code">mpv</span>`<span style="white-space:pre-wrap;"> instead of </span>`<span class="editor-theme-code">ffmpeg</span>`<span style="white-space:pre-wrap;"> to encode.</span>

<p class="callout success">This is the recommended method for all HoloResort Translations subbers. It is highly encouraged that you use this method for hardsubbing. Consult with your team lead if you need to use a different method.</p>

##### Installation:

1. <span style="white-space:pre-wrap;">Install mpv here: </span>[https://mpv.io/installation/](https://mpv.io/installation/)
2. <span style="white-space:pre-wrap;">Open Aegisub and click </span>`<span class="editor-theme-code">Automation > DependencyControl > Install Script</span>`.
3. <span style="white-space:pre-wrap;">On the </span>`<span class="editor-theme-code">Automation Scripts</span>`<span style="white-space:pre-wrap;"> dropdown, look for </span>`<span class="editor-theme-code">Encode Clip</span>`<span style="white-space:pre-wrap;">, select it, and then click </span>`<span class="editor-theme-code">OK</span>`.

##### How to use:

1. Save your ASS file.
2. Create a new line encompassing the lines to be subbed and then select it, or select the multiple lines to be hardsubbed.
3. <span style="white-space:pre-wrap;">Click </span>`<span class="editor-theme-code">Automation > Encode Clip > Clip with subtitles</span>`.
4. Done!

<p class="callout info"><span style="white-space:pre-wrap;">When installing </span>`<span class="editor-theme-code">mpv</span>`<span style="white-space:pre-wrap;">, it must also be installed on your PATH. If you encounter an issue with </span>`<span class="editor-theme-code">mpv</span>`<span style="white-space:pre-wrap;"> not being found, go to </span>`<span class="editor-theme-code">Automation > Encode Clip > Config</span>`<span style="white-space:pre-wrap;"> and then set the </span>`<span class="editor-theme-code">mpv</span>`<span style="white-space:pre-wrap;"> location manually. For more information on Encode Clip, go </span>[here](https://github.com/petzku/Aegisub-Scripts?tab=readme-ov-file#encode-clip).</p>

#### lyger’s Clipper Method

<span style="white-space:pre-wrap;">Installation and usage can be found </span>[here](https://lyger.github.io/scripts/guides/clipper.html).

- When hardsubbing, make sure your raw video is MKV. If not and what you used is an MP4, your timing will be pushed back by 1 frame.
    - Hardsubbing from MKV to MP4 will still push back by 1 frame.
- <span style="white-space:pre-wrap;">You use Clipper to clip a </span>**part**<span style="white-space:pre-wrap;"> of the video.</span>
    - Useful for testing tag animation in hardsubbed form.
    - Just set the timing to cover the part you wanted then run the script!

##### Modded HLR Clipper

- [https://github.com/Sheer-Curiosity/HLR-Clipper/releases/tag/v1.0](https://github.com/Sheer-Curiosity/HLR-Clipper/releases/tag/v1.0)
- Fixes some things that the HLR team specifically asked for
- Just put the .lua in the same place you put lyger’s clipper!

#### Ragtag Method

<span style="white-space:pre-wrap;">Simply use ffmpeg in the CMD prompt to hardsub. Used by </span>[Aonahara](https://www.youtube.com/channel/UCzD0rLDQQ69DdJfbqDXlB9Q)<span style="white-space:pre-wrap;"> peeps.</span>

`<span class="editor-theme-code">ffmpeg -i “[input video].mp4” -c:a copy -vf subtitles=“[subtitle file].ass” -crf 17 “[output video].mp4”</span>`

- <span style="white-space:pre-wrap;">Madekuji’s GUI to write the cmd line for you: </span>[<span style="white-space:pre-wrap;">https://mdkj.dev/hardsubcode/ </span>](https://mdkj.dev/hardsubcode/%20)
- This only hardsubs the entire video.
- A quick and simple way of hardsubbing video when you just want to get it done.

# Subbing for YouTube Closed Captions

Typefacing and submission for YouTube closed captions require a very different process for everything. You will still be using Aegisub, albeit differently.

#### YTSubConverter

<span style="white-space:pre-wrap;">YouTube uses </span>`<span class="editor-theme-code">.ytt</span>`<span style="white-space:pre-wrap;"> files for advanced subtitle styling in the YouTube player and not </span>`<span class="editor-theme-code">.ass</span>`. Aegisub does not support this format, thus a converter is needed.

****YTSubConverter****<span style="white-space:pre-wrap;"> can be downloaded here: </span>[](https://github.com/arcusmaximus/YTSubConverter)[https://github.com/arcusmaximus/YTSubConverter](https://github.com/arcusmaximus/YTSubConverter)

[![image17.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/dnoh5KfD2KNzt1th-image17.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/dnoh5KfD2KNzt1th-image17.png)

#### Sample Files

<span style="white-space:pre-wrap;">The program includes two sample ASS files to work with: </span>`<span class="editor-theme-code">sample1.ass</span>`<span style="white-space:pre-wrap;"> which is for traditional clip subbing, and </span>`<span class="editor-theme-code">sample2.ass</span>`<span style="white-space:pre-wrap;"> which focuses more on karaoke subbing.</span>

[![image8.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/9iifqB4BJnQnLj21-image8.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/9iifqB4BJnQnLj21-image8.png)

<span style="white-space:pre-wrap;">For most of our subbing use cases, it’s recommended to take a look into </span>`<span class="editor-theme-code">sample1.ass</span>`<span style="white-space:pre-wrap;"> and see how you can implement proper typesetting with the presets.</span>

****This is how Aegisub stylings will be converted to YouTube’s stylings:****

[![image6.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/s1IzdkSRyE0N9srE-image6.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/s1IzdkSRyE0N9srE-image6.png)

`<span class="editor-theme-code">sample1.ass</span>`<span style="white-space:pre-wrap;"> has most of these examples covered, so feel free to experiment with the styles from there, copy and modify them as you wish.</span>

#### YTT-specific tricks

<span style="white-space:pre-wrap;">YTSubConverter allows you to make use of different types of animation or effects regardless of the limitations of YouTube’s subtitle format. You can refer to the </span>[README](https://github.com/arcusmaximus/YTSubConverter/blob/master/README.md)<span style="white-space:pre-wrap;"> for specifics, but notable examples include </span>`<span class="editor-theme-code">{\ytshake}</span>`<span style="white-space:pre-wrap;"> and </span>`<span class="editor-theme-code">{\ytchroma}</span>`.

#### Conversion

<span style="white-space:pre-wrap;">Once your options are selected, click on </span>`<span class="editor-theme-code">Autoconvert</span>`<span style="white-space:pre-wrap;"> to turn your ASS into a YTT file.</span>

#### Testing

- <span style="white-space:pre-wrap;">You can test on </span>****PC****<span style="white-space:pre-wrap;"> in two ways: through Fiddler (explained in the readme, which requires existing video) or by uploading your private copy and uploading the YTT to it. (better for non-uploaded videos)</span>
- <span style="white-space:pre-wrap;">You can test on </span>****Android****<span style="white-space:pre-wrap;"> either with your phone or an Android emulator or compatibility layer such as BlueStacks, WSA, or Waydroid.</span>

#### Copying an existing video’s styling

YTSubConverter also allows reverse conversion, from YTT or SRV3 to ASS. This allows you to copy the style or make an edit to the YTT file easily. You may download the subtitle file through youtube-dl or by using the link in the README.

#### Limitations

Some things may not work on all devices, so keep that in mind. There are things that you may have to compromise when applying a style to work on mobile, so weigh your options. Do you want to keep things consistent or provide a better experience for those on PC? Your choice.

Positioning may be different in PC and mobile. Always test and compromise.

[![image3.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/KmGVXFuELAOCKri8-image3.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/KmGVXFuELAOCKri8-image3.png)

<p class="callout info">I highly recommend taking a look at official subtitles from hololive production, especially the Holo no Graffiti series, as the subtitles are typeset in a way that can work for both desktop and mobile.</p>

# Automation Tools

#### What version of Aegisub do I need?

<span style="white-space:pre-wrap;">Please refer to the </span>[Aegisub Setup](https://wiki.holoresorttls.org/books/subbing-guidelines/page/aegisub-setup)<span style="white-space:pre-wrap;"> page for details on the arch1t3cht fork of Aegisub, which has first-class support for automation tools.</span>

<span style="white-space:pre-wrap;">Aegisub 3.4.0 and later also has support for DependencyControl, but you have to install with </span>`<span class="editor-theme-code">Full installation</span>`<span style="white-space:pre-wrap;">. </span>

#### DependencyControl Tools

These are tools that you can install once you have arch1t3cht/Aegisub or Aegisub 3.4.

`<span class="editor-theme-code">Automations > DependencyControl > Install Script</span>`

[![unnamed.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/qJGxgFRcnU4JF3U4-unnamed.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/qJGxgFRcnU4JF3U4-unnamed.png)

Here are some useful tools and the basics on how to use them. They are also known as “scripts.”

****ASSWipe****

- Cleans + Sorts your scripts and removes unnecessary lines, reducing file size.
- This is more useful in soft-subbing

****Blur and Glow (Double Border)****

- This allows you to automatically add double borders to your subtitles
- This also provides as the name says, Blur and Glow.

****Gradient by Character****

- This makes your line go through a gradient by changing the colors of each character gradually.
- It can only make a gradient horizontally. Vertically if vertical Japanese.
- <span style="white-space:pre-wrap;">This is commonly seen and used in </span>****youtube captions****.
- <span style="white-space:pre-wrap;">Just add </span><u>**at least**</u><span style="white-space:pre-wrap;"> 2 colors to your line.</span>  
    [![unnamed.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/sIULzKulJNVAz46W-unnamed.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/sIULzKulJNVAz46W-unnamed.png)
- Run the script

****Gradient Everything****

- This is a more versatile yet complex version of gradient which gives you the ability to gradient horizontally or vertically on the screen.
- You need two same lines separately, yet each having its colors.  
    [![image10.png](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/VFF8Skb3UcxGTzK1-image10.png)](https://wiki.holoresorttls.org//uploads/images/gallery/2025-06/scaled-1680-/VFF8Skb3UcxGTzK1-image10.png)
- You also need to either input a clip border or have all lines have the same pos.
- Run the script and you will be given an interface where you choose how you’d want to gradient the line.
- It will keep already written tags and still gradient horizontally/vertically.

****HYDRA****

- Allows you to mass add tags on lines.
- Clicking “Load Full” gives you a lot more options.

****Hyperdimensional Relocator****

- Yes.
- <span style="white-space:pre-wrap;">Shit tons of useful features. Here’s a </span>[video](https://youtu.be/EwWLntUlLrE)<span style="white-space:pre-wrap;"> that shows some of it.</span>

****Masquerade****

- There’s a lot of tools that can turn clips into drawings but this one does it best.
- Simply draw a clip, select “from clip” mask type, and click “Masquerade”.

****Shapery****

- Made to replicate most of the tools used in Adobe Illustrator.

****More may be added soon.****

Link to manuals for certain tools, including Blur and Glow, HYDRA, Colourise, and Hyperdimensional Relocator:  
[https://unanimated.github.io/ts/scripts-manuals.htm](https://unanimated.github.io/ts/scripts-manuals.htm)

#### Off the Shelf Tools

These are some tools that aren’t in DepCon but can still be accessible through other means. Mainly GitHub.

- Perspective
- Chloro
- Centipede
- More may be added soon.