Skip to content

Auto Fill Duplicate Frames

Jerry Hogsett edited this page Jun 27, 2023 · 7 revisions

Auto-Fill Duplicate Frames - Detect duplicate frames and fill with interpolated replacements

How It Works

  1. Set Input PNG Files Path to a path on this server for the PNG files being deduplicated
  2. Set Output PNG Files Path to a path on this server to store the deduplicated PNG files
    • Output PNG File Path can be left blank to use the default folder
    • Tip: The default folder is set by the config.directories.output_deduplication setting
  3. Set Detect Threshold to specify the sensitivity to frame differences
    • A lower value finds fewer duplicates; a higher value finds more
    • This value requires experimentation. See More Details below.
  4. Set Maximum Duplicates Per Group to limit consecutive found duplicate frames
    • This can help to find a suitable upper limit for Detect Threshold
    • Values:
      • Set to 0 to not limit the number of consecutive duplicates
      • Set to 1 to prevent duplicates altogether
      • Set to any other value to limit the consecutive duplicates
    • Tip: in most cases, actual duplicates will be limited to several frames only
  5. Set Search Precision to the depth of search needed for accuracy
    • High precision yields precise frame timing, but takes a long time
    • Less precision is faster, with possible imprecise frame timing
  6. Click Deduplicate Frames
  7. The Details box shows the result of the operation, or any errors encountered
  8. On completion, a report .txt file is written to the output path with details of the auto-filling

Important

  • This process could be slow, perhaps many hours long!
  • Progress is shown in the console using a standard progress bar
  • The browser window does NOT need to be left open
  • ffmpeg.exe must be available on the system path
  • Resequence Files can be used to renumber a PNG sequence
  • The Video Preview tab on the Video Blender page can be used to watch a preview video of a set of PNG files
  • The values for the Threshold and Precision sliders can be changed in the config.yaml file section deduplicate_settings

More Details

  • The FFmpeg mpdecimate video filter is used to detect and remove duplicates
    • The hi and lo mpdecimate parameters are set to the specified theshold
    • the frac mpdecimate parameter is set to 1
  • Example: a 30 FPS video with 24 FPS real frames (20% duplicated frames)
    • With Threshold set to the minimum 0, 1 frame was removed
    • When set to maximum 25000, all frames except 1 were removed
    • When set to the default 2500, 20% of the frames were removed
Clone this wiki locally