- Added information on installing mediacurator from APT repository and PyPi.
- Included relevant links for installation instructions, APT repository, and PyPi page.
- Updated installation documentation to include instructions for installing mediacurator via APT repository.
- Added a table of contents for easier navigation.
- Moved FFmpeg installation instructions to the bottom, noting that they are only required when installing via pip if not already installed.
- Added detailed highlights of the major CLI overhaul and expanded format support.
- Clarified dropped support section to reflect changes in the CLI API and naming conventions.
- Enhanced the new features section to accurately list all improvements and modifications.
This release introduces a major overhaul of the `mediacurator` command-line interface (CLI) and comprehensive updates to the documentation. The CLI has transitioned from a custom argument parsing system to utilizing Python's `argparse` and `argcomplete` libraries, greatly enhancing usability and flexibility. Due to these significant changes, the version is incremented from **0.0.13** to **1.0.1**.
- **Refactored** `tools.py` for standardized command-line argument handling using `argparse` and `argcomplete`.
- **Improved** user interaction with structured arguments and built-in help, error handling, and validation.
- **Consolidated** video detail printing logic into a reusable method within the `Video` class.
- **Enhanced** `MediaLibrary` class with better clarity, functionality, and expanded support for video formats.
- **Reorganized** `main.py` to streamline argument handling and improve error feedback.
- **Updated** `setup.py` for release preparation, including new classifiers and dependencies.
- **Revised** README.md for clarity, including structured command usage and improved descriptions.
- **Moved** and improved old documentation, removing outdated content and adding new screenshots.
- **Maintained** legacy commands for backward compatibility while enhancing usability with clear examples.
- **Removed** non-existent `bcolors` from the public API.
- **Upgraded** requirements.txt to include `argcomplete` for command-line completion.
- **Updated** docstrings and function documentation for clarity on functionality and parameters.
- Added line break in conversion output before each video for improved readability.
- Implemented handling for odd pixel dimensions by adding black pixel padding to ensure even width and height.
- Modified makedocs script to allow execution from the project root directory, updating paths for source and build directories.
- Fixed a missing sentence in the 1.0.1 release notes, ensuring clarity and completeness in the changelog documentation.
Formatted code to improve consistency and readability across the following files:
- mediacurator/__init__.py
- mediacurator/library/__init__.py
- mediacurator/library/medialibrary.py
- mediacurator/library/tools.py
- mediacurator/library/video.py
- mediacurator/mediacurator.py
- setup.py
No functional changes were made, only cosmetic improvements.
- Breaking change: Renamed the project from 'MediaCurator' to 'mediacurator' to standardize naming conventions (all lowercase).
- Updated all references across documentation and source files:
- README.md
- Various .rst documentation files (installation, manual, use cases, errors, warnings)
- Python source files in 'mediacurator/library' and main 'mediacurator.py'
- setup.py
- Incremented version from 0.0.13 to 1.0.1 to reflect breaking changes.
- Added release notes for 1.0.1 in docsource/source/releasenotes/1.0.1-changelog.rst
Added '-map_metadata', '0' to the ffmpeg command to ensure all metadata from the input file is preserved in the output file. This change enhances the output quality by retaining important information such as title, year, and other metadata associated with the media files.
- Added explicit stream mapping for video (-map 0:v), audio (-map 0:a?), and subtitles (-map 0:s?) to preserve all streams during conversion.
- Removed '-strict experimental' for AV1 as it's no longer necessary for most ffmpeg builds.
- Introduced CRF (Constant Rate Factor) settings for AV1 and x265 for better control over quality and file size.
- Standardized audio and subtitle copying with '-c:a copy' and '-c:s copy' for efficiency.
- Added support for .mov and .ts formats in MediaCurator.
* Enhanced clarity by refining comments
* Improved code readability through cleanup and organization
* Ensured consistency and enhanced readability by adjusting variable names