{"id":13907965,"url":"https://github.com/TheGreatMcPain/python-media-scripts","last_synced_at":"2025-07-18T06:31:59.474Z","repository":{"id":133060484,"uuid":"269783463","full_name":"TheGreatMcPain/python-media-scripts","owner":"TheGreatMcPain","description":"Python scripts I use for preparing BluRay videos for my media server. (mirror)","archived":false,"fork":false,"pushed_at":"2024-10-30T23:22:22.000Z","size":183,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-10-31T00:21:23.944Z","etag":null,"topics":["bdsup2sub","ffmpeg","mkvtoolnix","python"],"latest_commit_sha":null,"homepage":"https://gitlab.com/TheGreatMcPain/python-media-scripts/","language":"Python","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/TheGreatMcPain.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}},"created_at":"2020-06-05T21:31:09.000Z","updated_at":"2023-12-29T07:58:45.000Z","dependencies_parsed_at":null,"dependency_job_id":"fa3dc37b-f069-4315-9b6e-d8f4dfe58f83","html_url":"https://github.com/TheGreatMcPain/python-media-scripts","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheGreatMcPain%2Fpython-media-scripts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheGreatMcPain%2Fpython-media-scripts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheGreatMcPain%2Fpython-media-scripts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheGreatMcPain%2Fpython-media-scripts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TheGreatMcPain","download_url":"https://codeload.github.com/TheGreatMcPain/python-media-scripts/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226361621,"owners_count":17612930,"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":["bdsup2sub","ffmpeg","mkvtoolnix","python"],"created_at":"2024-08-06T23:02:21.417Z","updated_at":"2025-07-18T06:31:59.462Z","avatar_url":"https://github.com/TheGreatMcPain.png","language":"Python","readme":"# Some Python scripts I use for BluRay re-encodes\n\nOne of my hobbies is managing a media server which involves backing up BluRays,\nand preparing their contents for my server.\n\nThese are some Python scripts I wrote to make the process more automatic.\n\n## Extract Bluray\n\nThe `extract_bluray` script will batch mkvmerge files from a BluRay.\n\nIt will ask the user for filenames with the extension mpls, or m2ts,\nand will ask for an output folder name which will be automatically created later.\n\nAfter that the script will begin creating `source.mkv` files.\n\nThe script will also create a `bluray_data.json` file in the event that the script\nis killed prematurely. If the script finds the `bluray_data.json` file on the next run\nit will ask the user if they want to just use the json file instead of creating a new list\nof files to extract.\n\n# 'batchconvert.py' Usage\n\nEach `source.mkv` will sit in its own folder, and along\nwith it will be a `info.json`.\n\nThe `info.json` file contains information about the video which\nwill determine the resulting video file.\n\n(`utils/info.py` can be used to generate an `info.json`)\n\n`vapoursynth-filter.py` can be used to pre-process the video via VapourSynth during transcoding.\nThis is useful for deinterlacing, cropping, and/or resizing.\n\n(See example `info.json` and `vapoursynth-filter.py`)\n\nExample directory structure:\n\n```\nbloopers/source.mkv\nbloopers/info.json\ndeleted-scenes/source.mkv\ndeleted-scenes/info.json\ndeleted-scenes/vapoursynth-filter.py\nbatchconvert.py\n```\n\n## Requirements (I think I got all of them.)\n\n- mkvtoolnix\n- ffmpeg\n- bdsup2sub (or bdsup2sub++) \"The script needs to know where bdsup2sub is at.\"\n- VapourSynth\n- psutil (Only used for setting cpu priority)\n- sup2srt\n","funding_links":[],"categories":["HarmonyOS"],"sub_categories":["Windows Manager"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTheGreatMcPain%2Fpython-media-scripts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FTheGreatMcPain%2Fpython-media-scripts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTheGreatMcPain%2Fpython-media-scripts/lists"}