openshot-qt icon indicating copy to clipboard operation
openshot-qt copied to clipboard

Copying keyframes

Open MoodsinMusic opened this issue 2 years ago • 10 comments

Describe the bug Won't properly copy and paste keyframes

Steps to reproduce the behavior:

  1. Downloaded and installed daily build.
  2. Deleted log files
  3. Started OpenShot
  4. Turned on Debug Mode
  5. Opened project
  6. Copied keyframes from one clip to another.

Expected behavior The keyframes should have been the same. If you look at the before and after (will upload), you will see that something was copied, but not the keyframes from the original clip. The original keyframes are all Location-Y. The keyframes copied into the new clip include the initial Location-Y only, then some Alpha changes which are not in the original clip. I tried copying just the Location keyframes, but with the same result.

System Details

  • OpenShot Version: 3.1.1
  • libopenshot Version: 0.3.2
  • Platform: Windows 11 Pro 22621.2283
  • Processor: Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz 3.00 GHz
  • Machine: Dell Inspiron 3671
  • Daily Build: Verified issue still exists in daily build: OpenShot-v3.1.1-daily-11627-2034f45d-08c2cdd1-x86_64.exe Log Files
  • openshot-qt.log (18 KB)
  • libopenshot.log: File too small or empty (not uploaded)

Exception / Stacktrace No stacktrace found in log files

Screenshots (Optional) If applicable, add screenshots to help explain your problem. You can include screenshots by copy/pasting them on GitHub or dragging-and-dropping into the GitHub page. All images are public, so please don't post screenshots containing personal information.

MoodsinMusic avatar Oct 11 '23 14:10 MoodsinMusic

https://github.com/OpenShot/openshot-qt/assets/112771727/ebb42897-f642-4298-8268-933b19dc54d3

MoodsinMusic avatar Oct 11 '23 14:10 MoodsinMusic

I see the libopenshot.log didn't upload. I repeated the experiment only copying the Location keyframes. The only keyframe in the destination clip was the initial Location Y. As Location data is an option in the Copy menu, one would think it should copy the Location keyframes.

  1. Deleted log files
  2. Started OpenShot
  3. Turned on Debug Mode
  4. Opened project
  5. Copied keyframes from one clip to another.

Attached the new log files.

openshot-qt.log libopenshot.log

MoodsinMusic avatar Oct 11 '23 14:10 MoodsinMusic

Just so you can see the quandary: The keyframes are synced with music, so they have to be in very specific locations. To copy manually means either moving the playback head to the exact position by sliding the playback head and then using the arrow keys (often involving zooming in and out and moving along the timeline) or moving between clips to sync the locations. Then typing in the value for each and every value in each and every clip. Yikes!

MoodsinMusic avatar Oct 11 '23 14:10 MoodsinMusic

Hello @MoodsinMusic. I know for a fact that the Shear properties (keyframes) do not current get copied and pasted. There is an open ticket on this and is in the queue to be fixed. I just tested positionin, scaling, rotating and Alpha keyframes and those worked. Shear, as I mentioned did not.

Please list the other keyframes you are setting that didn't copy/paste properly so we can test, confirm, and include in the bug ticket.

Also, please share your version of OpenShot (help | about openshot), including the build# and what operating sytem/version you are running on.

Colorjet3 avatar Oct 11 '23 17:10 Colorjet3

Check out the uploaded video. It didn't copy Location Y. You can find most of the information, the video, and the logs, in my original posts, but I'll include it here: https://github.com/OpenShot/openshot-qt/issues/5341

Describe the bug Won't properly copy and paste keyframes

Steps to reproduce the behavior:

  1. Downloaded and installed daily build.
  2. Deleted log files
  3. Started OpenShot
  4. Turned on Debug Mode
  5. Opened project
  6. Copied keyframes from one clip to another.

Expected behavior The keyframes should have been the same. If you look at the before and after (uploaded), you will see that something was copied, but not the keyframes from the original clip. The original keyframes are all Location-Y. The keyframes copied into the new clip include the initial Location-Y only, then some Alpha changes which are not in the original clip. I tried copying just the Location keyframes, but with the same result.

System Details

  • OpenShot Version: 3.1.1
  • libopenshot Version: 0.3.2
  • Platform: Windows 11 Pro 22621.2283
  • Processor: Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz 3.00 GHz
  • Machine: Dell Inspiron 3671
  • Daily Build: Verified issue still exists in daily build: OpenShot-v3.1.1-daily-11627-2034f45d-08c2cdd1-x86_64.exe

On Wed, Oct 11, 2023 at 1:54 PM Colorjet3 @.***> wrote:

Hello @MoodsinMusic https://github.com/MoodsinMusic. I know for a fact that the Shear properties (keyframes) do not current get copied and pasted. There is an open ticket on this and is in the queue to be fixed. I just tested positionin, scaling, rotating and Alpha keyframes and those worked. Shear, as I mentioned did not.

Please list the other keyframes you are setting that didn't copy/paste properly so we can test, confirm, and include in the bug ticket.

Also, please share your version of OpenShot (help | about openshot), including the build# and what operating sytem/version you are running on.

— Reply to this email directly, view it on GitHub https://github.com/OpenShot/openshot-qt/issues/5341#issuecomment-1758193813, or unsubscribe https://github.com/notifications/unsubscribe-auth/A24MFD4D3ICGL2MWLFBFSQLX63MMPANCNFSM6AAAAAA54DZMEQ . You are receiving this because you were mentioned.Message ID: @.***>

MoodsinMusic avatar Oct 11 '23 18:10 MoodsinMusic

Thank you @MoodsinMusic for all the information. I have assigned this to the lead developer and flagged it as a "Bug". I am going to perform some additional testing and document as much possible to assist the developer with troubleshooting the root cause and hopefully a fix in a near future release.

Colorjet3 avatar Oct 11 '23 18:10 Colorjet3

Great, Colorjet3!

Meanwhile, {click, ctrl-right, read number, click, shift-right, oops, that moved the clip, fumble, move it back, fumble, click, write number, click, set Bezier} * 100

Sincerely,

Moods in Music www.moodsinmusic.com

PS. I do appreciate all the hard work.

MoodsinMusic avatar Oct 11 '23 19:10 MoodsinMusic

Hello @MoodsinMusic. I've been playing around a bit and things to be working ok for me. Here is what I tested so far:

  1. Drag two images onto Track 5 and Track 4 respectively that are are aligned at the left edge and the same duration.
  2. Select the image on Track 5 with the playhead at the left edge of the clip (the beginning).
  3. Change Location Y to some value.
  4. Right click | Copy | Keyframes | Location.
  5. Now I select the 2nd clip on Track 4, Right Click and Paste.
  6. What happens here at first is that in the Preview window the clip on Track 4 doesn't move (location Y) until you click on Play.

So then I did a bit more testing starting from scratch with the same two images I tested above.

  1. Dragged them onto Tracks 5 & 4 and aligned.
  2. Selected the first clip and made the following changes: At 2 seconds in changed the Alpha attributes, another 3 seconds in changed Location X & Y using the mouse, 10 seconds in changed Rotation, 16 seconds in changed Scale X & Y.
  3. I then Copied the Keyframes and applied them to the 2nd clip
  4. Everything worked.
  5. Then I jumped to the end of the clip on Track 5 and changed Location Y using the mouse.
  6. I then Copied only the Location keyframe and pasted it onto the clip on Track 4.
  7. Now I noticed that Location Y did not get copied. I copied All the keyframes and pasted and that didn't do the trick either.
  8. Selected the clip on Track 5, set the playhead on the last keyframe (end of the clip) and checked the Location Y properties and noted that the color of the label was Blue. I then changed the Location Y value by manually typing it in. I just typed the same value (whatever it was) and this time the color of the lable (Location Y) changed to Green.
  9. Now the Copy of Location keyframe works. Weird!!!

I noticed something else that isn't working properly even when I am able to copy and paste the keyframes and it has to do with the Origin X & Y attributes. Even though I am not changing them, they get changed by OpenShot and Origin Y value gets skewed further down in the clip. I need to do some more testing and information gathering after I have repeatable process.

I have a big favor to ask you. I would like a step-by-step instructions of what and how your are making your changes to the original clip (the one you are copying from) so I can replicate your activity. The logs don't tell the whole story, at least for me, of all of your movements. I like to know when you used the mouse to make a change and when you used the keyboard to change the attributes manually. Also, include what the duration of your clip is and approximately at what duration you applied which change. Thank You In Advance!

Hopefully later tonight I can share my additional test results.

Colorjet3 avatar Oct 12 '23 15:10 Colorjet3

Colorjet3: "I would like a step-by-step instructions of what and how your are making your changes to the original clip (the one you are copying from) so I can replicate your activity."

All the changes were made by moving the playhead to the correct position, typing in the keyframe value, then setting the Bezier. I don't use the mouse as it doesn't give me the exact values I require for this project.

I tried to recreate the problem from scratch with a fresh file with just two clips. I haven't been able to duplicate the error. But it isn't just this particular case. I've seen it before.

I tried copying keyframes from other clips in the same project, and they seem to be copying correctly. That means, whatever the problem, it is in the origin clip itself. To test this, I recreated the clip typing in all the keyframe values as before. Now, it copied fine. Something in the clip itself is apparently bugged. That's actually not so bad. How the bug occurred, I don't know, but it is easier to work around than if the bug applied to all clips.

QUIRK: By the way, keyframes must be stored with more resolution than shows. That's great, because it allows much greater control. It's bad because you can't copy the old value exactly. And 1/1000 is quite apparent in many cases, so I couldn't duplicate the clip exactly. That's because Y-Position = 0.371 and Y-Position 0.373 read out as 0.37.

NEW BUG: I was still using the daily build 11627 from 10/9/2023. I went back to look at other projects to find examples of the keyframe bug. The audio was actually blanking out the video. I set the alpha to zero, but it still blanked out the video. Only deleting the audio fixed the problem. So, I rolled back OpenShot to the official 3.1.1. The bug disappeared.

Sincerely,

Moods in Music www.moodsinmusic.com

MoodsinMusic avatar Oct 12 '23 17:10 MoodsinMusic

Thank you again @MoodsinMusic. Again, thank you for all your feedback and the additional testing you did. It is time for the lead developer to look into all of this.

Colorjet3 avatar Oct 12 '23 17:10 Colorjet3