World Conquest Chronicles

World Conquest Chronicles

FPS Fixer, v1.1.0

The utility for fixing FPS in videos.

Improve logging, parse the options via CLI, handle processing errors, add support for specifying a base path to original videos, and add the mode without real processing of videos.

Change Log

  • parse the options via CLI;
  • handle processing errors;
  • add support for specifying a base path to original videos;
  • add the mode without real processing of videos, only with search of them and check of their FPS;
  • improve logging:
    • colorize log messages;
    • add to log messages:
      • add timestamps to log messages;
      • add log levels to log messages.

Features

  • search of videos:
    • filtering by a video file extension;
    • skipping videos with near target FPS;
  • fixing FPS in videos that have FPS less than or greater than the specified FPS;
  • automatic directory creation for fixed videos;
  • the mode without real processing of videos, only with search of them and check of their FPS;
  • logging:
    • logging of a video name and FPS at the beginning of processing;
    • logging of a fixed video path at the end of processing.

Usage

$ fps_fixer.bash -v | --version
$ fps_fixer.bash -h | --help
$ fps_fixer.bash [options] [<path>]

Options:

  • -v, --version — show the version;
  • -h, --help — show the help;
  • -e EXTENSION, --extension EXTENSION — video file extension (default: mp4);
  • -b PATH, --base-path PATH — base path for fixed videos (should be relative to argument <path>; default: ./fixed-videos);
  • -f FPS, --fps FPS — target FPS (default: 60);
  • -E EPSILON, --epsilon EPSILON — allowable error when comparing FPS (default: 2);
  • --no-process — don't process videos, only search for them and check their FPS.

Arguments:

  • <path> — base path to original videos (default: .).

Repository

Link: https://github.com/thewizardplusplus/fps-fixer/tree/v1.1.0.

Content: code.

License: MIT.

Screenshots

Demonstrating error handling when the script cannot access some video files

Running the script in no-process mode to check video FPS