Page MenuHome

Rewrote VSE Sound Crossfade script to support unlimited input strips and fix bugs
Open, Needs Triage by DeveloperPublic

Description

I'm having trouble creating a diff through the system ("Unhandled Exception ("AphrontQueryException") #1048: Column 'filename' cannot be null"), so I've attached it here. Sorry.

The changes here are driven by my own needs for this functionality in Blender, and are an extension of the existing functionality, mostly for time savings reasons. Tested on 2.79b on Windows.

New functionality:

  • Support unlimited sound strips
  • Improved strip position validation
  • Explicit error feedback so users can identify exact problem spots

Bugs fixed:

  • Re-running the script with the same strips selected may have resulted in one of the curves being flattened to zero (which one depended on the current frame). I determined this was a result of using context.scene.frame_current instead of context.scene.frame_set(), and a simple replacement fixed the issue.
  • Handled the case where the strip on the right side of the transition already had a keyframe set on the volume property. Previously, this resulted in an incorrect keyframe value being set on that strip due to an unexpected intermediate keyframe state.

Details

Type
Patch

Related Objects

Event Timeline

Richard Antalik (ISS) claimed this task.

I also rewrote this operator in patch D4290: VSE new python operators

Will look at other fixes and include them if appropriate

Oh, my bad, I didn't mean to step on your toes.

I'm a little unclear what your plan for this is based on your comment, but I had a look at the code you wrote, and TBH it will probably save time to start with the code in my patch and integrate into that instead of the other way around.

Feel free to ping me when there's a finalized version that needs testing, and I'll be happy to help out. Thanks.

Oh, my bad, I didn't mean to step on your toes.

Naah.

I haven't looked at your code yet.

I will probably wait until I see how this discussion goes https://devtalk.blender.org/t/python-based-operators-for-vse/5788/

As it may mean a major rewrite of all operators.