Skip to main content

mediacurator is a Python command line tool to manage a media database.

Project description

mediacurator

mediacurator is a Python command line tool to manage a media database.

  • List all the videos and their information with or without filters
  • Batch find and repair/convert videos with encoding errors
  • Batch recode videos to more modern codecs (x265 / AV1) based on filters: extensions, codecs, resolutions …

Documentation

The documentation is available on the following link

Releases

mediacurator is released on PyPi. Installation instructions are found on the GitHub page.

Usage

    mediacurator <command> [options]

    # Command options
    mediacurator [list convert] [-del/--delete]
        [-i/--inputs any 3gp asf avi divx dv f4v flv gif m2ts m4v mkv mov mp4 mpeg mpg mts ogm ogv rm swf ts vid vob webm wmv]
        [-fl/--filters fferror old lowres hd 720p 1080p uhd mpeg mpeg4 x264 wmv3 wmv]
        [-o/--outputs mkv/mp4 x265/av1]
        [-p/--printop list formatted verbose]
        [-d/--dirs "/mnt/media/" "/mnt/media2/"]
        [-f/--files "file1.ext" "file2.ext"]

Available commands:

  • list: List all videos with specified filters.
  • convert: Convert videos to specified formats.

Options:

  • -del or --delete: Delete found results after successful operations. Use with caution.
  • -i <input> or --inputs <input>: Specify input file formats (default: any).
  • -fl <filter> or --filters <filter>: Apply filters to the selection of videos.
  • -o <output> or --outputs <output>: Specify output formats (default: mkv, x265).
  • -p <print_option> or --printop <print_option>: Set print options (default: list).
  • -f <file> or --files <file>: Specify files to process.
  • -d <directory> or --dirs <directory>: Specify directories to process.

For multiple files or filenames, use space-separated values ( ).

Default options (if not specified):

  • -i/--inputs: any
  • -fl/--filters: (none)
  • -o/--outputs: mkv, x265
  • -p/--printop: list

Examples

# List all videos with old codecs in formatted output
mediacurator list --filters old --printop formatted --dirs "/mnt/media/" "/mnt/media2/" >> ../medlist.txt

# Convert all MPEG4 videos to AV1 in MP4 format, and delete originals after conversion
mediacurator convert --delete --filters mpeg4 --outputs av1 mp4 --dirs "/mnt/media/" "/mnt/media2/"

# Convert videos with AVI or MPG extensions, print formatted and verbose output, and delete originals
mediacurator convert --delete --inputs avi mpg --printop formatted verbose --dirs "/mnt/media/" "/mnt/media2/"

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

GNU GPLv3

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mediacurator-1.0.1.tar.gz (25.4 kB view details)

Uploaded Source

Built Distribution

mediacurator-1.0.1-py3-none-any.whl (25.9 kB view details)

Uploaded Python 3

File details

Details for the file mediacurator-1.0.1.tar.gz.

File metadata

  • Download URL: mediacurator-1.0.1.tar.gz
  • Upload date:
  • Size: 25.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for mediacurator-1.0.1.tar.gz
Algorithm Hash digest
SHA256 a0faf7296280a33da6baa716d7503fe4bce6197f8c1f44ca4bdecadeee4edad5
MD5 509ee7a5d969d118160be2241149dac8
BLAKE2b-256 0ef5c5ea11beba3dfa8a1a635531067231139c38ca305678011e59aab47ebba3

See more details on using hashes here.

File details

Details for the file mediacurator-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: mediacurator-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 25.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for mediacurator-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 81451b144d0fb4e51caa1c2caff5be1b50dceec115664b793c9d45a140bf6fd5
MD5 3791d651396527f4587b4da14dfccd93
BLAKE2b-256 ad9e00fe710a75861678f024f2a1c406aaff91b08c125bf8e09e2a2ee0aa3fd1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page