Skip to content

Releases: ivansaul/CLI-Video-Compressor

v0.3.1

10 Oct 08:33
Compare
Choose a tag to compare

v0.3.1 (2024-10-10)

Fix

  • fix: input validation and error handling

Adds validation to ensure the input file or directory exists before processing. Also, provides a more informative error message when the input path is invalid. (463c120)

Unknown

  • Merge pull request #24 from ivansaul/fix/input-validation

fix: input validation and error handling (1479b22)

v0.3.0

10 Oct 08:10
Compare
Choose a tag to compare

v0.3.0 (2024-10-10)

Documentation

  • docs: add Windows installation tutorial link

Adds a link to a YouTube tutorial for installing the necessary software on Windows.
This makes it easier for Windows users to get started with the CLI Video Compressor. (2d094ad)

Feature

  • feat: add basic unit tests

Adds basic unit tests for the CLI and helper functions.
Includes:

  • Test cases for compression with various codecs, quality settings, overwrite options, and output paths.
  • Tests for checking if FFmpeg is installed and file existence. (da5640e)

Unknown

  • Merge pull request #23 from ivansaul/feature/implement-tests

feat: add basic unit tests (60300ac)

  • Merge pull request #20 from ivansaul/develop

docs: add Windows installation tutorial link (b85a6f5)

v0.2.1

07 Oct 04:54
Compare
Choose a tag to compare

v0.2.1 (2024-10-07)

Fix

  • fix: inherit str in VideoCodec enum for Typer compatibility

Inherit from str in VideoCodec enum to ensure it behaves like a string, resolving Typer compatibility issue. (d6251f1)

  • fix: enforce valid quality range

Added validation to ensure the quality argument falls within a valid range (0-100). This prevents potential errors and ensures that the user's input is always treated correctly. (631e60d)

Unknown

  • Merge pull request #19 from ivansaul/fix/cli-arguments-validations

Fix cli arguments validations (30dbf9a)

v0.2.0

07 Oct 00:54
Compare
Choose a tag to compare

v0.2.0 (2024-10-07)

Documentation

  • docs: update language switcher HTML for proper GitHub rendering (70e21b7)

  • docs: add Spanish README

Add a Spanish translation of the README.md (414d595)

Feature

  • feat: add support for libx265 video codec

Adds the ability to choose between h264 and libx265 video codecs for compression, offering a more efficient compression option for users with modern GPUs. (61c71ab)

Unknown

  • Merge pull request #18 from ivansaul/feature/add-codec-option

feat: add support for libx265 video codec (1f1aed8)

  • Merge pull request #17 from ivansaul/develop

docs: update language switcher HTML for proper GitHub rendering (efe91f8)

  • Merge pull request #16 from ivansaul/develop

docs: add Spanish README (731aa00)

v0.1.1

06 Oct 07:02
Compare
Choose a tag to compare

v0.1.1 (2024-10-06)

Documentation

  • docs: update README.md

Update the README to reflect the new package name "vidpack" and provide the installation command using pip (568da86)

Fix

  • fix: update pack script path in pyproject.toml

The pack script was previously referencing the wrong path, causing an error when trying to run the command. This commit fixes the issue by updating the path to correctly point to the vidpack.cli:app entry point. (1e46b00)

Unknown

  • Merge pull request #15 from ivansaul/develop

Fix script path and update README.md (91b115d)

v0.1.0

06 Oct 06:42
Compare
Choose a tag to compare

v0.1.0 (2024-10-06)

Chore

  • chore: initial project setup

Adds basic project structure, dependencies, and testing infrastructure.

The project utilizes Typer for CLI handling, ffmpeg for video compression, and a comprehensive testing suite with pytest and Ruff for linting. (ebcfd39)

Documentation

  • docs: update README.md (67aff8c)

  • docs: update README.md

Add demo GIF to README.md (2b7b5a8)

  • docs: update README.md

Update user guide with detailed usage instructions and examples (67730c1)

Feature

  • feat: automate releases with semantic versioning

Adds a GitHub Actions workflow to automate the release process, including semantic versioning, publishing to PyPI, and GitHub Release Assets. (fcfecf3)

  • feat: add short option aliases for CLI arguments

Add short option aliases (-o, -q, -w, -d, -v) to the CLI arguments for improved usability and consistency. (999cf0a)

  • feat: add video quality control

Adds a new quality option to allow users to control the output video quality.

The quality level is a number between 0 and 100, where a lower number means higher compression and lower quality, and a higher number means lower compression and higher quality. The default quality level is 75. (c76f6d9)

  • feat: add option to delete original video

Add a new command-line option (--delete-original) to allow users to delete the original video file after compression. This provides a convenient way to clean up space after processing. The option is disable by default. (b5e3625)

  • feat: add functionality for bulk compression
  • The input CLI argument can be a file or a directory. If a directory is provided, all videos in the directory will be processed.

  • Renameutils.py to core.py for better organization and consistency with the project structure. This change ensures all core functionality resides within the core module. (4d2495b)

  • feat: add core functionality for video compression

Adds basic CLI interface, video compression logic, and helper functions for managing input/output files.

Includes basic tests for the implemented functionality. (e25f212)

Fix

  • fix: update PyPI action to use release/v1 tag (1119b4a)

  • fix: publish to PyPI

Switch release workflow to publish to the official PyPI repository instead of Test PyPI. Also, update the versioning to correctly publish with master branch instead of develop. (8e74db8)

  • fix: update PyPI action for testPYPI (f3ce44a)

  • fix: re-handle "File already exists" error on Linux (af5c067)

  • fix: handle potential "File already exists" error on Linux

The ffmpeg command sometimes throws an error indicating that the output file already exists, even when using the -n (overwrite) flag. This commit introduces logic to detect and handle such errors, particularly on Linux systems. (44f47a3)

  • fix: file already exists error on Linux

Prevented errors on Linux with the '-n' (no overwrite) option in ffmpeg when the output file exists; no error occurs on macOS. (e8bc3aa)

  • fix: add missing override argument

Add the override argument to the compress_video function call. (0acb3ae)

Refactor

  • refactor: rename project to 'vidpack'

Move code to 'src' directory, updated package name, and adjusted dependencies, scripts, and tests to reflect the new project name. (aba52a2)

  • refactor(compress_video): change from subprocess to ffmpeg-python

Change from using subprocess and ffmpeg_progress_yield to ffmpeg-python for video compression and progress tracking. (94efc83)

Unknown

  • Merge pull request #14 from ivansaul/develop

fix: update PyPI action to use release/v1 tag (a0e8179)

  • Merge pull request #13 from ivansaul/develop

Setup semantic versioning (47b03f9)

  • Merge pull request #12 from ivansaul/feature/semantic-release

feat: automate releases with semantic versioning (5f22cf7)

  • Merge pull request #11 from ivansaul/develop

Add new features and important fixes (42554d3)

  • Merge pull request #10 from ivansaul/docs/update-readme

docs: update README.md (c0d322c)

  • Merge pull request #9 from ivansaul/docs/update-readme

docs: update README.md (f611e92)

  • Merge pull request #8 from ivansaul/feature/setup-short-commands

feat: add short option aliases for CLI arguments (ef67376)

  • Merge pull request #7 from ivansaul/feature/add-quality-option

feat: add video quality control (a22713e)

  • Merge pull request #6 from ivansaul/feature/bulk-compression

feat: add functionality for bulk compression (b99ec07)

  • Merge pull request #5 from ivansaul/refactor/compress-video

refactor(compress_video): change from subprocess to ffmpeg-python (7cbdb85)

  • Merge pull request #4 from ivansaul/develop

typo: replace 'override' with 'overwrite' (f16d64d)

  • typo: replace 'override' with 'overwrite' (1b945af)

  • Merge pull request #3 from ivansaul/develop

fix: file already exists error on Linux (eb5e143)

  • Merge pull request #2 from ivansaul/develop

fix: add missing override argument (b20ff22)

  • Merge pull request #1 from ivansaul/develop

feat: add core functionality for video compression (ac8679f)