I’ve been having sync issues with a project I’m working on and finally figured out what was causing it. Some of the transitions and clips appear to be changing length after closing and reopening a project. It’s not all of them, but about 4 of them in a 20-minute long project.
Here are the steps to reproduce that I’ve come up with:
- Create a project with a timeline.
- Add clips and transitions between them.
- Save project to .mlt file.
- Close Shotcut.
- Restart Shotcut and reopen the .mlt.
The reason I noticed this is that I also have a separate audio track that I’m syncing all of the clips to. It’s a concert where I have one continuous wide shot with close up clips spliced in throughout. So, I have to be frame-accurate for it to look and sound decent. When they kept staying off-sync, that’s when I noticed the issue.
Here’s a diff of the .mlt as saved the first time along compared to what it looked like after reopening it and saving it again:
--- "Concert.mlt" 2017-12-05 15:34:42.086666700 -0600
+++ "Concert - Reopened.mlt" 2017-12-06 08:42:01.434836100 -0600
@@ -1589,18 +1589,18 @@
<property name="shotcut:transition">lumaMix</property>
<track producer="producer45" in="00:01:26.933" out="00:01:27.900"/>
<track producer="producer46" in="00:24:02.633" out="00:24:03.600"/>
- <transition id="transition44" out="00:00:00.967">
+ <transition id="transition44" out="00:00:01.000">
<property name="a_track">0</property>
<property name="b_track">1</property>
<property name="factory">loader</property>
<property name="mlt_service">luma</property>
</transition>
- <transition id="transition45" out="00:00:00.967">
+ <transition id="transition45" out="00:00:01.000">
<property name="a_track">0</property>
<property name="b_track">1</property>
+ <property name="mlt_service">mix</property>
<property name="start">0</property>
<property name="accepts_blanks">1</property>
- <property name="mlt_service">mix</property>
</transition>
</tractor>
<producer id="producer47" title="Anonymous Submission" in="00:00:00.000" out="00:00:45.567">
@@ -2161,19 +2161,19 @@
<blank length="00:00:14.633"/>
<entry producer="producer56" in="00:13:42.700" out="00:13:52.700"/>
<blank length="00:03:53.333"/>
- <entry producer="producer57" in="00:17:46.100" out="00:18:06.400"/>
+ <entry producer="producer57" in="00:17:46.100" out="00:18:06.433"/>
<blank length="00:01:01.133"/>
<entry producer="producer58" in="00:19:07.600" out="00:19:17.700"/>
<blank length="00:01:44.633"/>
<entry producer="producer59" in="00:21:02.333" out="00:22:05.633"/>
<blank length="00:01:12.433"/>
- <entry producer="producer60" in="00:23:17.967" out="00:24:03.600"/>
+ <entry producer="producer60" in="00:23:18.000" out="00:24:03.600"/>
<blank length="00:00:24.100"/>
<entry producer="producer61" in="00:24:27.733" out="00:24:40.100"/>
</playlist>
<tractor id="tractor26" title="Shotcut version 17.12.03" global_feed="1" in="00:00:00.000" out="00:21:49.000">
<property name="shotcut">1</property>
- <property name="shotcut:scaleFactor">3.73999</property>
+ <property name="shotcut:scaleFactor">0.468647</property>
<track producer="background"/>
<track producer="playlist0"/>
<track producer="playlist1" hide="audio"/>
I appreciate anything you can do. I’m running Shotcut 17.12.03, but I also noticed it in previous versions.