{"id":20312550,"url":"https://github.com/annimon/ffmpegbot","last_synced_at":"2025-06-14T15:33:00.335Z","repository":{"id":144595122,"uuid":"587356390","full_name":"aNNiMON/ffmpegbot","owner":"aNNiMON","description":"Telegram ffmpeg bot for re-encoding media","archived":false,"fork":false,"pushed_at":"2025-03-20T21:32:44.000Z","size":160,"stargazers_count":7,"open_issues_count":0,"forks_count":17,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-11T16:59:20.554Z","etag":null,"topics":["ffmpeg","telegram","telegram-bot","yt-dlp"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aNNiMON.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-01-10T15:05:41.000Z","updated_at":"2025-03-20T21:32:48.000Z","dependencies_parsed_at":null,"dependency_job_id":"ef14c284-294f-4e3d-b8ba-86d9dc746d54","html_url":"https://github.com/aNNiMON/ffmpegbot","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/aNNiMON/ffmpegbot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aNNiMON%2Fffmpegbot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aNNiMON%2Fffmpegbot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aNNiMON%2Fffmpegbot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aNNiMON%2Fffmpegbot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aNNiMON","download_url":"https://codeload.github.com/aNNiMON/ffmpegbot/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aNNiMON%2Fffmpegbot/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259837990,"owners_count":22919504,"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","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","telegram","telegram-bot","yt-dlp"],"created_at":"2024-11-14T18:06:38.750Z","updated_at":"2025-06-14T15:33:00.298Z","avatar_url":"https://github.com/aNNiMON.png","language":"Java","readme":"# ffmpegbot\n\nTelegram Bot for re-encoding media\n\n## Features\n\n - change a video resolution, bitrate, frame rate, speed\n - change an audio bitrate, volume, pitch\n - apply audio effects, compressor\n - extract or remove audio from the video\n - resend video note as a regular video, or video as an audio track\n - output audio spectrum for quick analysis\n\n## Requirements\n\n - Telegram bot username and token, [@BotFather](https://t.me/BotFather)\n - JRE 17+ or JDK 17+ (for build)\n - `ffmpeg` must be installed and available in `PATH`.\n - `python3` version 3.8+ must be installed and available in `PATH`.\n - `yt-dlp` for `/dl` command.\n\n## Installation\n\n### Manual\n\n```bash\n# Build\n./gradlew shadowJar\n# Config\ncp ffmpegbot.yaml.template ffmpegbot.yaml\nvim ffmpegbot.yaml\nmkdir {input,output}\n# Run\njava -jar ./build/libs/ffmpegbot-1.2-SNAPSHOT-all.jar\n```\n\n\n### Using Docker\n\nNote: FFmpeg binary might be installed with limited number of filters and codecs. Some bot features might not work (Audio pitch, robot effect, etc).\n\n```bash\ndocker run -d -t -i \\\n  -e BOT_TOKEN='...' \\\n  -e APP_ID='...' \\\n  -e APP_HASH='...' \\\n  -e SUPERUSERS='12345' \\\n  -e ALLOWED_USERS='12346,12347' \\\n  --name ffmpegbot ghcr.io/annimon/ffmpegbot:latest\n```\n\n#### Environment variables\n\n - `BOT_TOKEN` — Telegram bot token\n - `APP_ID` — Telegram API app_id (see https://core.telegram.org/api/obtaining_api_id)\n - `APP_HASH` — Telegram API app_hash\n - `SUPERUSERS` — Comma-separated list of superusers. Superuser can execute /run command\n - `ALLOWED_USERS` — Comma-separated list of allowed user ids\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fannimon%2Fffmpegbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fannimon%2Fffmpegbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fannimon%2Fffmpegbot/lists"}