{"id":20844630,"url":"https://github.com/seiyagame/extract_video_frame","last_synced_at":"2026-04-27T00:31:43.308Z","repository":{"id":164132183,"uuid":"590937404","full_name":"SeiyaGame/extract_video_frame","owner":"SeiyaGame","description":"This is a Python script that allows you to extract images from TV shows","archived":false,"fork":false,"pushed_at":"2023-02-28T20:26:22.000Z","size":136,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-21T16:03:09.395Z","etag":null,"topics":["export-image","ffmpeg","frame","python3","tv-shows","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-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SeiyaGame.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":"2023-01-19T15:06:09.000Z","updated_at":"2023-01-26T21:38:42.000Z","dependencies_parsed_at":"2023-06-02T02:00:23.291Z","dependency_job_id":null,"html_url":"https://github.com/SeiyaGame/extract_video_frame","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SeiyaGame/extract_video_frame","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SeiyaGame%2Fextract_video_frame","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SeiyaGame%2Fextract_video_frame/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SeiyaGame%2Fextract_video_frame/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SeiyaGame%2Fextract_video_frame/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SeiyaGame","download_url":"https://codeload.github.com/SeiyaGame/extract_video_frame/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SeiyaGame%2Fextract_video_frame/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32318417,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T23:26:28.701Z","status":"ssl_error","status_checked_at":"2026-04-26T23:26:25.802Z","response_time":129,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["export-image","ffmpeg","frame","python3","tv-shows","video"],"created_at":"2024-11-18T02:10:16.673Z","updated_at":"2026-04-27T00:31:43.286Z","avatar_url":"https://github.com/SeiyaGame.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Image Extraction Script\nThis script allows you to extract images from TV shows and upload them to slow.pics (In the future)\n\n## Requirements\n- Python 3\n- ffmpeg-python\n- ffmpeg\n\n### Installing ffmpeg-python\nThe latest version of ffmpeg-python can be acquired via a typical pip install:\n```\npip install ffmpeg-python\n```\n\n### Installing ffmpeg\n\nThere are a variety of ways to install FFmpeg, such as the [official download links](https://ffmpeg.org/download.html), or using your package manager of choice (e.g. `apt install ffmpeg` on Debian/Ubuntu, `brew install ffmpeg` on OS X, etc.).\nOtherwise you can put the binaries in the root of the project\n\n\n## Usage\nThe script can be run from the command line with the following arguments:\n\n```\nusage: extract_frame.py [-h] [-c COMPARISONS_SOURCE [COMPARISONS_SOURCE ...]] [-t FILE_TYPE] [-e EPISODES [EPISODES ...]] [--num_frames NUM_FRAMES] source\n\nExtracts images from TV shows and uploads them to slow.pics.(In the future)\n\npositional arguments:\n  source                The path of the folder/file containing the TV show files\n\noptions:\n  -h, --help            show this help message and exit\n  -c COMPARISONS_SOURCE [COMPARISONS_SOURCE ...], --comparisons_source COMPARISONS_SOURCE [COMPARISONS_SOURCE ...]\n                        The path of the folder/file containing the TV show files you want to compare\n  -t FILE_TYPE, --file_type FILE_TYPE\n                        The file type of the TV show files (e.g. mp4, avi, default: mkv)\n  -e EPISODES [EPISODES ...], --episodes EPISODES [EPISODES ...]\n                        A list of episode numbers to extract images from (e.g. 1 2 3) (Default: All)\n  --num_frames NUM_FRAMES\n                        The number of frames to extract from the same TV show\n```\n\n- The `source` argument is required and should be the path of the folder/files containing the TV show files of the first source.\n- The `comparisons_source` argument is optional and should be the path of the folder/files containing the TV show files you want to compare. \n- The `file_type` argument is optional and defaults to 'mkv'.\n- The `episodes` argument is optional and defaults to None.\n- The `num_frames` argument is optional and defaults to 1.\n\nFor example, to extract 1 image from a random episode of a TV show in the 'folder_path' folder with the file type 'mkv', you would run the following command:\n```\npython extract_frame.py folder_path\n```\n\nTo extract 1 images from episode 5,6,7,9 of a TV show with the file type 'mkv' and with one comparison, you would run the following command:\n```\npython extract_frame.py folder_path -c folder_comparison -e 5 6 7 9\n```\n\nTo extract 3 images from episode 5,6,7,9 of a TV show with the file type 'mkv' and with one comparison, you would run the following command:\n```\npython extract_frame.py folder_path -c folder_comparison -e 5 6 7 9 --num_frames 3\n```\n\n# Output\nThe script will extract the specified number of images from the TV show and save them in the same folder as the script with the format `{human_timecode}_{filename}-{episode_number}.png`. \nThe timecode of the extracted image is selected randomly for the moment.\n\n# Note\nThe script assumes that the TV show files have their episode number in the file name. If it can't find the episode number in the file name, it will return an error message and exit.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseiyagame%2Fextract_video_frame","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseiyagame%2Fextract_video_frame","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseiyagame%2Fextract_video_frame/lists"}