{"id":31920371,"url":"https://github.com/3urobeat/mp4sizer","last_synced_at":"2025-10-13T21:59:09.393Z","repository":{"id":92573278,"uuid":"333875774","full_name":"3urobeat/mp4sizer","owner":"3urobeat","description":"📽 Easily compress a folder full of mp4 files to reach a target size!","archived":false,"fork":false,"pushed_at":"2024-09-29T12:56:49.000Z","size":74,"stargazers_count":20,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-24T16:49:39.354Z","etag":null,"topics":["compress","compression","converter","discord","linux","moviepy","mp4","python","video"],"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/3urobeat.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"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},"funding":{"github":"HerrEurobeat","custom":["paypal.me/3urobeat"]}},"created_at":"2021-01-28T19:19:21.000Z","updated_at":"2024-10-01T12:04:31.000Z","dependencies_parsed_at":"2023-04-25T02:33:55.344Z","dependency_job_id":null,"html_url":"https://github.com/3urobeat/mp4sizer","commit_stats":null,"previous_names":["3urobeat/mp4sizer"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/3urobeat/mp4sizer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/3urobeat%2Fmp4sizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/3urobeat%2Fmp4sizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/3urobeat%2Fmp4sizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/3urobeat%2Fmp4sizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/3urobeat","download_url":"https://codeload.github.com/3urobeat/mp4sizer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/3urobeat%2Fmp4sizer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279017012,"owners_count":26085952,"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-10-13T02:00:06.723Z","response_time":61,"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":["compress","compression","converter","discord","linux","moviepy","mp4","python","video"],"created_at":"2025-10-13T21:58:45.580Z","updated_at":"2025-10-13T21:59:09.384Z","avatar_url":"https://github.com/3urobeat.png","language":"Python","funding_links":["https://github.com/sponsors/HerrEurobeat","paypal.me/3urobeat"],"categories":[],"sub_categories":[],"readme":"# mp4sizer\nAutomatically let a python script compress a folder full of mp4 files for you.  \nJust provide a file size in MB which your video files should reach and the script will take care of the rest.  \nIt is also possible to easily change the framerate and resolution of all clips.  \n\n**Use case example:** Get a bunch of video clips below 8 MB to be able to send them on Discord.  \n\n\u0026nbsp;\n\n## Download \u0026 Install:  \nYou can either use a build (easy) or use it from source (a bit more complicated).  \n\n### Use a build:  \n[Download the latest release](https://github.com/3urobeat/mp4sizer/releases) for your platform and extract the folder.  \n\u003e On Linux you have to run the executable from/in a Terminal.  \n\n### Use from Source:  \nMake sure to have [Python 3](https://www.python.org/downloads/) (`Windows x86-64 executeable installer`) installed.  \nIf you are using Linux then you should be able to download python3 from your distribution's packet manager.  \n\n[Download this script](https://github.com/3urobeat/mp4sizer/archive/master.zip) and extract the folder.  \nOpen up a terminal in the new folder and install the dependencies using pip, preferably inside a python virtual environment:  \n```bash\npython -m venv ./venv\n# On Linux\n./venv/bin/pip install moviepy opencv-python colorama\n# On Windows\n.\\venv\\Scripts\\pip.exe install moviepy opencv-python colorama\n```\n\n\u0026nbsp;\n\n## Usage:  \nPut all your mp4 files to compress into the `files` folder.  \n\u003e Note: Please avoid putting clips into the folder that are already below your target size as they can get bigger after compressing.  \n  \nStart the script and input the file size in MB you would like your clips to have.  \nTo see more options type `help`. This will show how you can also change the framerate and resolution of your files for example.  \n\nWhen running the binary from a terminal (which you do on Linux), the syntax looks like this:  \n`./mp4sizer \u003csize_in_MB\u003e [options]`, e.g. `./mp4sizer 8 --res 1920x1080`  \nWhen not running the binary but the source file, make sure to use the venv python binary from the previous step instead:  \n`./venv/bin/python mp4sizer.py \u003csize_in_MB\u003e [options]`, e.g. `./venv/bin/python mp4sizer.py 8 --res 1920x1080`\n\nThe script will now try to get all your clips as close to the target file size you chose and output them into the `compressed` folder.  \n\u003e Disclaimer: If your output files look bad afterwards please consider cutting them shorter or raising your target file size.  \n\n\u0026nbsp;\n\n## Additional information:  \n`moviepy` does seem to only support CPU Encoding (at least for me on Linux) so bigger files might take longer.  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F3urobeat%2Fmp4sizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F3urobeat%2Fmp4sizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F3urobeat%2Fmp4sizer/lists"}