Copy link to clipboard
Copied
Hi all,
I've searched for two days on the web but still no answer.
I'm making a BluRay Disc of a collection of TV Show episodes. I add these episodes as an .m4v file into Encore, which works great. These videos will be transcoded the the appropriat format at the end.
The only problem I encounter is the subtitles: I have an .srt file which runs perfectly sync with the .m4v video file (when I just play it in i.e. VLC, so no Adobe Encore is used)
But when I open the .srt file in a Subtile Editor (Subtitle Workshop, Subtitle Edit, Jubler (MAC) ) and hit ' Save As' Adobe Encore Text Script and import it in Adobe Encore, it starts of as a good sync in the first few seconds of the TV Show episode, but is way out of sync at the end of the episodes... (Sounds like me as an FPS problem?)
I've tried everything, from all different types of FPS output of the subtitle file, to all different project FPS settings.
My main project is 23,976FPS BluRay NTSC, my VIDEOFILE.m4v is 23,976FPS and my subtitles are 23,976FPS.
I really hope someone can help me out here.
Thanks in advance.
Sincerely,
Christiaan.
Copy link to clipboard
Copied
Drop frame vs non drop frame has been an issue for some users with this issue. Does the exported file have colons or semicolons?
Copy link to clipboard
Copied
When I Save As the .SRT as an Encore subtitle text script it's set to semicolons. I've already tried to replace those with normal colons, to check of it differs somehow, but then Encore can't process the subtitle file with the error "Line 1 is not correct (or something like that) [CANCEL], [SKIP ALL], [SKIP]" and when I skip line 1, it gives the same messages with Line 2, etc...
So normal collons don't work with Encore I gues...
Copy link to clipboard
Copied
Semicolons is correct for NTSC/drop code.
This isn't PAL is it?
Copy link to clipboard
Copied
No, I've set the BluRay up as NTSC 1920*1080 with 23,976 FPS. All my imported videos are also 23,976 FPS.
And the subs are created on the 23,976FPS Video file.
Copy link to clipboard
Copied
How far off are the times by the end of the movie? And how long is it.
Copy link to clipboard
Copied
The video file is 54min 31s long. And Adobe Encore shows it is 00:54:28:08 (hh:mm:ss:ff, whereas f=frames, not milliseconds)
This is the subtitle information outside Adobe Encore (just to clear the difference), as expected the .srt has 3-decimal miliseconds behind the collon, and the Encore Text Script with 2-decimal frames behind the semicolon:
subtitle.srt VS subtitle.txt (Adobe Encore Text Script (*txt)
1
00:01:01,725 --> 00:01:03,526 1 00;01;01;17 00;01;03;13 Brother?
Brother?
2
00:02:25,763 --> 00:02:28,230 2 00;02;25;18 00;02;28;06 Did you send the raven?
Did you send the raven?
499 499 00;52;47;17 00;52;52;06 I'm Barristan Selmy.
00:52:47,693 --> 00:52:52,263 Kingswatcher from your Father.
I'm Barristan Selmy.
Kingswatcher from your Father.
500 500 00;52;52;09 00;52;57;20 Allow me to accompany your kingswatch
00:52:52,363 --> 00:52:57,834 and I won't let you down.
Allow me to accompany your kingswatch
and I won't let you down.
And now the information how far off the subtitles are by the end of the movie:
Like I said, they start off in sync, so Line 1 and 2 from above are in sync.
But when I get to line 499 and line 500:
Line 499 Is spoken at 00:52:44:20, but shows at 00:52:47:17. (A difference of almost 3 seconds)
Line 500 Is poken at 00:52:49:08, but shows at 00:52:52:10. (A difference of slightly more than 3 seconds)
And here is some information about the videofile. While I doubt that has something to do with this problem...
Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L4.0
Format settings, CABAC : Yes
Format settings, ReFrames : 4 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 54mn 31s
Bit rate mode : Variable
Bit rate : 5 102 Kbps
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
Frame rate mode : Variable
Frame rate : 23.976 fps
Minimum frame rate : 23.810 fps
Maximum frame rate : 24.390 fps
Copy link to clipboard
Copied
Your video file is variable frame rate. I don't know if that alone is the issue, but that is a problem for Encore. What is the transcode status in Encore? Do not transcode, untranscoded?
I suspect that is the issue in the video length vs encore video length.
Copy link to clipboard
Copied
The videofile transcode status is untranscoded. I already tried to build the BluRay with Encore, withouth subtitles (just to see if the menu works properly), and then it transcodes to videofile.m4v to the correct format.
Copy link to clipboard
Copied
While that is good, the problem is that, I assume, the subtitles were synced to the m4v's you have that are variable frame rate. But since the nominal, and I assume average, frame rate is 23.976, I would expect minor variations in subtitle sync, not 3 seconds.
Encore sees your file as 3 seconds shorter than its properties as gauged by (looks like) media info? I would try to clean up the frame rate outside Encore, so it is more likely to have the subtitles sync.
Copy link to clipboard
Copied
Alright, thanks for the advice. I'm gonna try that.
Do you perhaps have an suggested program which I can use to clean up that variable framerate? (Windows or OS X is both fine).
Copy link to clipboard
Copied
No idea. I might just try exporting from Premiere/Adobe Media Encoder, which will give a constant frame rate. If that doesn't match the real video length, I don't know what to suggest.
You'll see some complaints from editors about VFR, but it is clearly a popular way to stream various content.
Copy link to clipboard
Copied
Alright, thank you very much for all your help! I'm going to try to transcode the videofiles.m4v on itself, and try to synchronize the subtitles to this trancoded files.
I will post my results when I've figured it out. Other people might find it usefull.
Again, thank you!
Regards,
Chris.
Copy link to clipboard
Copied
I have been doing a lot of projects with subtitles and continually have issues like this. Video is 23.976, SRT file was supposedly done at 23.976. When I convert to Encore txt in Jubler or Subtitle Workshop, sync is good at the beginning but about 7 seconds off at the end (video is 109 mins). If I use AVISynth to hard code the subs, using the original video file and the SRT it comes out perfectly. I don't really want hard subs but that has been the "solution" lately. I've tried changing semi-colons to colons and this works sometimes but not always, I think usually doesn't work on 24p video. Very annoying.
Copy link to clipboard
Copied
Hi RyanWM,
I've also considered hard coded subs as my last option, but then I've made a formula to easily resync my subtitles.
For example:
My subs was offsync by around 3 seconds. Then I've calculated the difference in frames and seconds, made a whole formule.
The result the formula gave me was eventually; When I overall delayed the whole subtitle file with 99,37428% (In my case, different with every videofile) It became PERFECTLY sync.
If you are interested in the way to calculate the offsync percentage, I can show it to you.
- Chris.
Copy link to clipboard
Copied
Thanks for that update. Where did you apply the 99xxx%?
Copy link to clipboard
Copied
I'm running Windows in Bootcamp, and used Subtitle Edit. There's an option to called "Sync by percentage" (which normally is ofcourse a 100%).
This way adjusts every lines, starting time, duration, and endtime with those percentage. This way makes sure the beginning is still sync (when you take a look at the difference, you'll see that those timecodes barely change) and the end also perfectly sync.
Copy link to clipboard
Copied
A great option.
Copy link to clipboard
Copied
I would love to see the formula. I've gotten Subtitle Edit (not sure how I missed this one, looks pretty good).
Copy link to clipboard
Copied
Allright, maybe this way is not the fastest way to calculatie it, but it works every time for me:
First of all the crucial properties are that all my videofiles.m4v are 23,976 FPS and I've set my Encore BluRay project to BluRay NTSC 23,976 FPS.
I don't know if this works when different framerates are used...
Anyhow:
I'll go through these steps with an example I used, which I'm sure of it works.
NOTE: WE DON'T DO ANYTHING WITH THE SUBTITLE.srt FILE TILL STEP 7
1)
When you import the videofile.m4v into Adobe Encore, and look at the properties, you'll see it's FPS, but also the time in frames not milliseconds. Write down what time is displayed (in example: 00:53:18:19 which is hh:mm:ss:ff frames)
2)
When you look up the duration of the videofile.m4v outside Adobe Encore it'll display in milliseconds
(I used MediaInfo on OS X, but VLC will also display time. In my case it displayed the videofile.m4v as 53min22sec, and yes this is the same videofile.m4v as the 00:53:18:19 displayed in STEP 1 )
This 53min22sec = 00:53:22:000 (hh:mm:ss:mmm milliseconds)
What we want is the difference between the videofile.m4v in Encore, and outside Encore. This difference can be converted in percentages, which can be applied in Subtitle Edit to adjust the subtitles.
3) "Calculating the displayed frames displayed in Encore to milliseconds"
So, in my case, I'm dealing with 23,976 FPS (note: FPS = Frames Per Second)
Thus;
1 second = 23,976 FPS
1000 milliseconds = 23,976
In this example 00:53:18:19. We know 1000 milliseconds = 23,976 FPS, so we also know how many milliseconds 19 FPS is:
(19*1000ms)/(23,976) = 792,.....ms.
4) "Rewrite the Encore time in seconds"
We now know that 00:53:18:19 (in frames) = 00:53:18:792 (in milliseconds)
5) "Calculate difference in seconds between time shown in Encore (00:53:18:792) and time shown outside Encore (00:53:22:000)"
Difference in seconds = 00:53:22:000 - 00:53:18:792 = 3,208 seconds
Now we have to calculate what the percentage those 3,208 seconds is in respect the the whole videofile.m4v inside Encore.
6) "Calculate percentage"
We know the total time of the videofile.m4v in Encore is 00:53:18:792 (We just calculated that). That total duration is 100%, but being able to calculate with that value, we have to convert those hours:minutes:seconds:milliseconds into just seconds.
Easy: (53min*60seconds) + 18seconds + 0,792seconds = 3198,792 seconds
3198,792 = 100%, so we also know how many % 3,208 seconds is.
(3,208*100%) / 3198,792 = 0,100273472%
We know have calculated the difference between the videofile.m4v inside Encore, and outside Encore.
The subtitle.srt is synchronized to the videofile.m4v outside Encore, and not inside Encore (duh, that's the whole problem)
But when we open Subtitle Edit, open the subtitle.srt and choose for the option to resync with percentage, you'll see it's normalle set to 100%. This value has to be adjusted with our corrected % we've calculated in STEP 6.
So, 100%-0,100273472% = 99,89971214%. Makes sure that it's set to apply on all subtitle lines, and hit ENTER.
7)
Make sure the subtitle is set to 'Unicode' (can be done in Subtitle Edit, just in the main screen).
Then, hit "Save As" and save the subtitle not as .srt but as Adobe Encore NTSC.
You can now import this subtitle_Adobe.Encore.NTSC.txt in Adobe Encore, and it will run Perfectly sync.
Good luck!
P.S.
Sorry if I described it a little bit long, but this will make sure you understand it correctly. I hope.
Let me know if you have any questions.
- Chris.
Copy link to clipboard
Copied
That is pretty darn good. My end result was a tad off but then I just keep changing the percentage ever so little to get it to the right spot. I brought my m2v file into Premiere to get the non-Encore time as MediaInfo wasn't giving me seconds cause my run time was over an hour (it was just saying 1hr 42mins).
Now a tool that you could just plug in both numbers and it spits out the %, that would be nice.
Excellent job!
thanks
Copy link to clipboard
Copied
I'm 2.5 years late to this party, but can't help mentioning ...
Cdrazar wrote: "The video file is 54min 31s long.
And Adobe Encore shows it is 00:54:28:08"
Note1: Encore sees the video as 3 seconds shorter.
Note2: "00:54:28:08" has colons, not semicolons.
3 seconds per hour is about the difference in playback speed between 23.976 and 24.000.
24.000 is a faster rate, so the video finishes sooner, i.e. is shorter.
Colons indicate non-drop-frame timecode,
i.e. a whole number fps, like 24 or 30.
Although Cdrazar says the frame rate is 23.976,
the data he posted show that it's variable, from ~23.8 to ~24.4
So it looks like Encore processed his video at an average speed of 24.000 fps,
while he created subtitles in an app that presented it at 23.976 fps,
and that fps difference caused the problem.
Would this be a good way to avoid this kind of problem:
// jon
Copy link to clipboard
Copied
Looks like I'm a little late to this conversation but this post helped me tremendously! I made a little spreadsheet in Excel that helps speed up the process of converting the time codes. I used all the math that you posted here Cdrazar. Here is a link to the download. Hope it helps someone else!
I left a couple of examples in there that I used this for to help it make sense.
Just type in the hours, minutes, seconds and frames from Encore, and the Hours, minutes and seconds as shown in VLC and it will let you know the scale factor that you can use in Subtitle Edit.
Copy link to clipboard
Copied
I am working on a project with 5 sub tracks, this is awesome! Thanks much for taking the time to do it.
Find more inspiration, events, and resources on the new Adobe Community
Explore Now