Subtitles

Anything and everything to do with DCP-o-matic.
Jorgen.Carlsen
Posts: 1
Joined: Mon Nov 25, 2024 1:03 pm

Subtitles

Post by Jorgen.Carlsen »

Hi.
Sometimes the bottom of the picture is quite bright, so that you cannot read the white subtitles.
Is it possible to place a single line of subtitles on top of the picture ? Not all the lines.

Yours Jørgen Carlsen
Carsten
Posts: 2841
Joined: Tue Apr 15, 2014 9:11 pm
Location: Germany

Re: Subtitles

Post by Carsten »

Technically yes, in a subtitled DCP, every single line could be placed anywhere on the screen. However, you can't do that in DCP-o-matic (or at least not easily), as the GUI does not allow to set per-line positions, only per subtitle file. If it is really only ONE line in the whole movie (or just a few), you could split your subtitle file into two files with those lines that go to the bottom, and those that go to the top, and position them separately in DCP-o-matic.

Otherwise, you would need to use a separate subtitle editor that is able to position lines individually and output DCI timed text XML files.
IoannisSyrogiannis
Posts: 208
Joined: Mon Nov 13, 2017 8:40 pm

Re: Subtitles

Post by IoannisSyrogiannis »

I second the subtitle editor that would help with positioning.
I had issues with subtitle edit and creating .srt files with the positioning on the 9 available positions. A professional subtitling program and saving SMPTE or Interop subtitles would work better. And you can then compress the fonts.

Though, if the problem is white on white, you can also choose to outline the subtitles. There is a setting for that on DCP-o-matic. Look it up.
barber
Posts: 50
Joined: Fri Apr 15, 2016 4:03 pm

Re: Subtitles

Post by barber »

Actually I find Subtitle Edit pretty good at making DCI (IOP/SMPTE) subtitles with different positions on specific lines. Which issues have you encountered Ioannis?
Otherwise there is the much more expensive EZTitles.
IoannisSyrogiannis
Posts: 208
Joined: Mon Nov 13, 2017 8:40 pm

Re: Subtitles

Post by IoannisSyrogiannis »

Ah I wrote a lot before I lose everything with an error. :P
In any case, I will try to be shorter:
barber, that is great that it works for you. And Subtitle Edit is GREAT software and a life savior.
I find that the alignment to the nine positions of the screen is not always working for me. I explain that on my previous answer. Do you use another way to align, than the "right click on subtitle>Align>position"? If yes, what is it?
As for my story, I had issues in the past (more than 14 months) with srt subtitles that were individually positioned on top-center (hard-coded for another language on some spots) and wouldn't render there when the DCP was ready. I also couldn't make really small subtitles, really low on the screen (lower than safe), three lines, to be made with Subtitle Edit and DCP-o-matic. It was a special occasion, so I ended using EZTitles and CineAsset. That was about 26 months ago, when Dolby CineAsset was still a thing.

I wouldn't compare Subtitle Edit's and EZTitles' price. For the first, you don't pay, for the other, you do. I find that if you want to be "spot-on" with SE, you need to export to .xml and then manually edit. I have done it a few times. On EZTitles, I find comfortable the subtitle compression, the choice of UUID, the "proxy" video file etc. but most of that we can -mostly- do without. If that manual thing is too much work, then EZTitles has a demo for one month, pay-as-you-go subscriptions and a friendly support team. One can check it as an alternative.

Before all that, though, I would choose "outline" on the DCP-o-matic's settings.
barber
Posts: 50
Joined: Fri Apr 15, 2016 4:03 pm

Re: Subtitles

Post by barber »

Hi Ioannis,

I'm coming back to that topic a little bit late.
I use the right-click>Alignment positions too. I use it occasionally, mostly in cases where one subtitle overlap a text in the picture (during credits for example). For these cases, my workflow is very simple :
Set the project to DCI SMPTE. Right-click>Alignment>Center Top. File > D-cinema Properties, set the Font Effect to Outline, Effect color to Black, Size to 42 and Vertical Margin to 7 (these settings being for an Arial font). Save to DCI SMPTE xml. Load the subtitle and its font in DCP-o-matic. That's it. When using easyDCP for the DCP mastering I also have to fill the Font ID and URI in DCI Properties, but Subtitle Edit makes that easy with the Generate UUID button. For Interop the URI is just the regular font filename ("arial.ttf" for e.g.).
For this particular case, the result is always trustworthy.

You had written about creating .srt files with positioning but AFAIK SRT does not support custom positioning. Although it's frequent to see such files with ASS tags it's up to the player/software to read them. It may not be reliable.
I find that if you want to be "spot-on" with SE, you need to export to .xml and then manually edit.
I agree. SE is not the right tool for more subtle or complex cases. I struggled so much with STL import and multi-alignment per line in SDH subtitles...
But I think it's worth recommending it for simple cases, paired with DCP-o-matic.
IoannisSyrogiannis
Posts: 208
Joined: Mon Nov 13, 2017 8:40 pm

Re: Subtitles

Post by IoannisSyrogiannis »

Happy to agree.
barber wrote: Sat Jan 25, 2025 3:03 pm [...]
You had written about creating .srt files with positioning but AFAIK SRT does not support custom positioning. Although it's frequent to see such files with ASS tags it's up to the player/software to read them. It may not be reliable.
[...]
For positioning on .srt files, I suppose you mean the following by writing "ASS tags", try to add this to a DCP-o-matic project:

Code: Select all

1
00:00:01,000 --> 00:00:03,000
{\an7}aligned text

2
00:00:03,024 --> 00:00:05,024
{\an8}aligned text

3
00:00:05,048 --> 00:00:07,048
{\an9}aligned text

4
00:00:07,072 --> 00:00:09,072
{\an6}aligned text

5
00:00:09,096 --> 00:00:11,096
{\an3}aligned text

6
00:00:11,120 --> 00:00:13,120
{\an2}aligned text

7
00:00:13,144 --> 00:00:15,144
{\an1}aligned text

8
00:00:15,168 --> 00:00:17,168
{\an4}aligned text

9
00:00:17,192 --> 00:00:19,192
{\an5}aligned text
The editor of DCP-o-matic is supporting those tags and Subtitle Edit as well.
I would expect that what the DCP-o-matic renders on the editor export and renders on the screen/player (it did).
If not, like in the instance I previously mentioned, I manually edit. After all, we can't avoid on-screen check.

Note that Subtitle Edit will not add the "an2" tag of the lower-center subtitle. Yet, DCP-o-matic won't "see" the change unless there is one explicitly noted.

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<SubtitleReel xmlns="http://www.smpte-ra.org/schemas/428-7/2014/DCST">
  <Id>urn:uuid:3ff84ffd-1ac2-4849-aab1-a4f626432510</Id>
  <ContentTitleText>OfNoImportance</ContentTitleText>
  <IssueDate>2025-01-25T17:47:29</IssueDate>
  <ReelNumber>1</ReelNumber>
  <Language>en</Language>
  <EditRate>24 1</EditRate>
  <TimeCodeRate>24</TimeCodeRate>
  <StartTime>00:00:00:00</StartTime>
  <LoadFont ID="font">urn:uuid:d516df07-eebf-4d77-a315-201f0bedc44a</LoadFont>
  <SubtitleList>
    <Font AspectAdjust="1.0" Color="FFFFFFFF" Effect="border" EffectColor="FF000000" ID="font" Italic="no" Script="normal" Size="48" Underline="no" Weight="normal">
      <Subtitle SpotNumber="1" TimeIn="00:00:01:00" TimeOut="00:00:03:00" FadeUpTime="00:00:00:00" FadeDownTime="00:00:00:00">
        <Text Halign="left" Hposition="5" Valign="top" Vposition="12">aligned text</Text>
      </Subtitle>
      <Subtitle SpotNumber="2" TimeIn="00:00:03:01" TimeOut="00:00:05:01" FadeUpTime="00:00:00:00" FadeDownTime="00:00:00:00">
        <Text Valign="top" Vposition="12">aligned text</Text>
      </Subtitle>
      <Subtitle SpotNumber="3" TimeIn="00:00:05:01" TimeOut="00:00:07:01" FadeUpTime="00:00:00:00" FadeDownTime="00:00:00:00">
        <Text Halign="right" Hposition="5" Valign="top" Vposition="12">aligned text</Text>
      </Subtitle>
      <Subtitle SpotNumber="4" TimeIn="00:00:07:02" TimeOut="00:00:09:02" FadeUpTime="00:00:00:00" FadeDownTime="00:00:00:00">
        <Text Halign="right" Hposition="5" Valign="center" Vposition="0">aligned text</Text>
      </Subtitle>
      <Subtitle SpotNumber="5" TimeIn="00:00:09:02" TimeOut="00:00:11:02" FadeUpTime="00:00:00:00" FadeDownTime="00:00:00:00">
        <Text Halign="right" Hposition="5" Valign="bottom" Vposition="17.2727">aligned text</Text>
      </Subtitle>
      <Subtitle SpotNumber="6" TimeIn="00:00:11:03" TimeOut="00:00:13:03" FadeUpTime="00:00:00:00" FadeDownTime="00:00:00:00">
        <Text Valign="bottom" Vposition="17.2727">aligned text</Text>
      </Subtitle>
      <Subtitle SpotNumber="7" TimeIn="00:00:13:03" TimeOut="00:00:15:03" FadeUpTime="00:00:00:00" FadeDownTime="00:00:00:00">
        <Text Halign="left" Hposition="5" Valign="bottom" Vposition="17.2727">aligned text</Text>
      </Subtitle>
      <Subtitle SpotNumber="8" TimeIn="00:00:15:04" TimeOut="00:00:17:04" FadeUpTime="00:00:00:00" FadeDownTime="00:00:00:00">
        <Text Halign="left" Hposition="5" Valign="center" Vposition="0">aligned text</Text>
      </Subtitle>
      <Subtitle SpotNumber="9" TimeIn="00:00:17:05" TimeOut="00:00:19:05" FadeUpTime="00:00:00:00" FadeDownTime="00:00:00:00">
        <Text Valign="center" Vposition="0">aligned text</Text>
      </Subtitle>
    </Font>
  </SubtitleList>
</SubtitleReel>