{"id":19979594,"url":"https://github.com/mmastrac/automedia","last_synced_at":"2025-08-20T01:08:09.457Z","repository":{"id":38285055,"uuid":"480142819","full_name":"mmastrac/automedia","owner":"mmastrac","description":"A set of tools for automatically managing bitrot and format in large quantities of media","archived":false,"fork":false,"pushed_at":"2022-05-11T19:55:34.000Z","size":666,"stargazers_count":92,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-04T04:33:30.470Z","etag":null,"topics":["ffmpeg","flac","media","mp3","mp4","par2","python","python3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mmastrac.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-04-10T21:20:33.000Z","updated_at":"2025-03-12T02:53:22.000Z","dependencies_parsed_at":"2022-08-25T02:31:50.393Z","dependency_job_id":null,"html_url":"https://github.com/mmastrac/automedia","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/mmastrac/automedia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmastrac%2Fautomedia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmastrac%2Fautomedia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmastrac%2Fautomedia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmastrac%2Fautomedia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mmastrac","download_url":"https://codeload.github.com/mmastrac/automedia/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmastrac%2Fautomedia/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271247988,"owners_count":24726004,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-19T02:00:09.176Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ffmpeg","flac","media","mp3","mp4","par2","python","python3"],"created_at":"2024-11-13T03:38:16.401Z","updated_at":"2025-08-20T01:08:09.399Z","avatar_url":"https://github.com/mmastrac.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Automedia\n\n[![PyPI](https://img.shields.io/pypi/v/automedia)](https://pypi.org/project/automedia/)\n\nAutomedia is a tool to manage bitrot and formats in large media libraries, whether it be audio or video.\n\nThe tool currently supports the following operations:\n\n * **Printing/logging to list media files**: view your media files at a glance\n * **Verification of media correctness via `ffmpeg`**: test-decoding of supported files to find bitrot\n * **Transcoding media libraries to other formats via `ffmpeg`**: archive your media in a lossless/high-quality format, transcode for daily use or for older devices\n * **PAR2 creation and verification**: prevent future bitrot of data at rest\n\n## But why?\n\nYou can replace much of what this tool does using `find`, `xargs`, `grep` and a dash of scripting, but `automedia` deals with all of\nthe incantations itself and has some intelligence to handle interaction with complex tools like as `ffmpeg`.\n\n## Requirements\n\n`automedia` requires the `ffmpeg` and `par2` executables to be fully operational. These must exist on the path for the application to function. It is\nrecommended to use the dockerized version of this application as these requirements will be packaged up with it.\n\n## Installation\n\n`automedia` can be installed via pip, or can be run with all binary dependencies in a Docker container. \n\n### Via pip\n\nAutomedia is available as a `pip` package. You can download it with:\n\n```bash\npip install automedia\nautomedia --help\n```\n\n### Via Docker\n\nIf you wish to run Automedia via Docker, a script has been provided that transparently runs Automedia on your machine as\nif it were not running within a container (by mounting the entire root of your drive within the container).\n\nThis script may be copied to a directory on your local `$PATH` and will automatically invoke the appropriate Docker container.\n\n```bash\ncp automedia-docker /usr/local/bin/automedia\nautomedia --help\n```\n\n## Usage\n\nPrint a list of media files we find:\n\n`automedia --root /media print`\n\nVerify the media files we find using `ffmpeg`:\n\n`automedia --root /media verify`\n\nTranscode the media files from `/media` to `/mnt/usb_stick` to 64k AAC format:\n\n`automedia --root /media transcode --preset aac-64k --output=/mnt/usb_stick`\n\nTranscode the media files from `/media` to `/mnt/usb_stick` to FLAC format:\n\n`automedia --root /media transcode --preset flac --output=/mnt/usb_stick`\n\nCreate PAR2 files for the media files we find:\n\n`automedia --root /media par2-create`\n\nVerify PAR2 files for the media files we find:\n\n`automedia --root /media par2-verify`\n\n## Screenshots\n\n![An animated GIF showing automedia running a verify operation](docs/render.gif)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmmastrac%2Fautomedia","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmmastrac%2Fautomedia","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmmastrac%2Fautomedia/lists"}