VideoTools/docs/CHANGELOG.md

4.3 KiB

docs/CHANGELOG.md

Changelog

All notable changes to this project will be documented in this file.

The format follows Keep a Changelog.
This project adheres to Semantic Versioning.


[0.1.2] - 2025-11-06

Added

  • Relative path headers (# docs/...) restored to the top of all documentation files for readability and navigation.
  • Updated documentation to reflect:
    • videoinfo and --verbose functionality.
    • Logging directory structure with ISO timestamps and latest.log symlink.
    • Cross-platform (Linux/Windows) compatibility details.
  • Added clarification on the --hi-rate and --portable profiles in docs/CLI_Functions.md.
  • Added reference to computed bitrate fallback in the upcoming version roadmap.

Changed

  • Documentation standardized for plain-text (Gitea-safe) format.
  • Minor corrections to examples and paths in README.md and CLI_Functions.md.
  • Clarified usage of convert-multiple and quoting rules for paths with spaces.
  • Improved layout consistency across all docs for version parity.

Planned for 0.1.3

  • Computed fallback bitrate in videoinfo for older containers (AVI, WMV, MPG).
  • Colorized technical output for clarity.
  • Header profile label display (Default / High Rate / Portable).
  • Automatic configuration detection improvements.

[0.1.1] - 2025-11-05

Added

  • --hi-rate and --portable profile options:
    • High-rate: CRF 14, preset veryslow, 320 kbps audio
    • Portable: CRF 24, preset faster, 128 kbps audio
  • videoinfo command:
    • Displays concise technical details (duration, codecs, resolution, FPS, bitrate, etc.)
    • --verbose flag outputs full ffprobe metadata for debugging
  • Automatic log directory:
    • ~/.local/share/video-tools/logs/ with ISO-timestamped filenames
    • Symlink latest.log points to the newest log
  • Conversion summary now includes bitrate, FPS, elapsed time, and mux overhead
  • Cross-platform compatibility confirmed for Linux and Windows (Git Bash / WSL)

Changed

  • Improved convert-multiple handling of spaced file paths
  • Cleaner and color-coded CLI output
  • Updated internal default values for logging and error messages
  • Improved argument parsing for optional profile flags

Fixed

  • Resolved “unbound variable output_name” in convert_multiple
  • Fixed missing log directory permissions
  • Corrected path handling issues on Windows systems
  • Ensured temporary concat lists are removed after conversion

[0.1.0] - 2025-11-04

Added

  • Initial release of Video Tools CLI
  • convert-single command:
    • Converts a single input file (AVI, MPG, MKV, MOV, etc.) into MP4
    • Uses FFmpeg with modern compression (libx264, AAC, CRF 18)
    • Automatically corrects timestamps (-fflags +genpts)
    • Outputs to ~/Videos
  • convert-multiple command:
    • Merges multiple video inputs into one MP4
    • Re-encodes using same compression settings
    • Creates and cleans temporary file lists automatically
  • Config system (config/config.json) with optional jq parsing
  • Version tracking via VERSION file
  • Color-coded CLI feedback for INFO, WARN, ERROR, OK
  • Graceful error handling with safe exits and cleanup
  • Compatible with:
    • Linux (bash / zsh / fish shells)
    • Windows (via Git Bash or WSL)

Documentation

  • docs/README.md — general usage and installation guide
  • docs/CLI_Functions.md — detailed command reference
  • docs/Conversion_Settings.md — technical breakdown of FFmpeg defaults
  • docs/Upscale.md — planned module outline for future upscaling support

Build System

  • Makefile with:
    • install / uninstall / verify / docs / help targets
    • Version-aware output and FFmpeg dependency check
    • Installs both binary and documentation to system paths

Planned for [0.2.0]

Added

  • upscale-video command:
    • FFmpeg lanczos scaling for 720p / 1080p / 4K
    • Optional H.265 (HEVC) encoding for smaller files
  • convert-batch for folder-wide conversions
  • JSON-driven override for per-run configuration (custom CRF, bitrate, etc.)
  • Optional parallel encoding support
  • Automatic codec detection before re-encoding

Improvements

  • More detailed progress bar during FFmpeg execution
  • Unified cross-platform installer for Windows (PowerShell script)
  • Expanded error handling and logging to logs/ directory

End of File