Skip to content

Option to segment each clip of interest, rather than based on set time interval #1

@evnb

Description

@evnb

By default vwrt_py segments input video into 5-minute clips to avoid slowdowns from ffmpeg's memory bottleneck. (Each processed clip is then stitched together using concatsplitfiles().) This solution certainly cuts down on processing time but is hacky and might produce momentary glitches where the processed clips meet.

Want to try splitting input based on calculated poi's from getcleansilence(). [Potential method]

Hypothesized pro/con list:

  • Pros
    • faster processing
      • smaller clips -> faster processing (ffmpeg processing speed seems inversely related to input file size)
      • no need for complex_scripts (each clip will only be one speed)
      • 1.0x speed clips can skip processing altogether and be directly sent to concatsplitfiles()
    • Might reduce noticeable glitches in the output
  • Cons
    • significantly more intermediate files (greater by orders of magnitude)
      • Could this make the total size of intermediate files larger? (may not be able to compress as well)
      • Unforeseen issues when dealing with so many files?
    • may require repetitive seeking for makesplit()
      • potentially much longer split time
    • Will require precise precision. Even a few frames of error (i.e. repeated or skipped frames) in every split might snowball into a large cumulative impact on the output's quality/usability

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions