{"id":20560821,"url":"https://github.com/aben20807/py-video-thumbnail","last_synced_at":"2026-05-16T08:03:55.100Z","repository":{"id":107925684,"uuid":"347297790","full_name":"aben20807/py-video-thumbnail","owner":"aben20807","description":"Create thumbnail from videos","archived":false,"fork":false,"pushed_at":"2023-06-18T06:05:42.000Z","size":13,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-21T05:54:14.718Z","etag":null,"topics":["batch-processing","opencv","opencv-python","thumbnail","thumbnail-generator","video","video-thumbnail","video-thumbnail-generator"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aben20807.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":"2021-03-13T06:59:15.000Z","updated_at":"2023-10-16T17:47:41.000Z","dependencies_parsed_at":"2023-06-28T18:02:31.903Z","dependency_job_id":null,"html_url":"https://github.com/aben20807/py-video-thumbnail","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/aben20807/py-video-thumbnail","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aben20807%2Fpy-video-thumbnail","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aben20807%2Fpy-video-thumbnail/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aben20807%2Fpy-video-thumbnail/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aben20807%2Fpy-video-thumbnail/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aben20807","download_url":"https://codeload.github.com/aben20807/py-video-thumbnail/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aben20807%2Fpy-video-thumbnail/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275623444,"owners_count":25498335,"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-09-17T02:00:09.119Z","response_time":84,"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":["batch-processing","opencv","opencv-python","thumbnail","thumbnail-generator","video","video-thumbnail","video-thumbnail-generator"],"created_at":"2024-11-16T03:55:55.680Z","updated_at":"2025-09-17T16:25:36.969Z","avatar_url":"https://github.com/aben20807.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# py-video-thumbnail\n\nCreate thumbnails (default 4x4) from given videos.\n\n## Environment\n\n```bash\n$ virtualenv -p python3 .venv\n$ source .venv/bin/activate\n$ pip install opencv-python Pillow requests\n```\n\n+ Tested environment\n\n```bash\n$ python --version\nPython 3.8.10\n$ pip list\nPackage            Version \n------------------ --------\ncertifi            2023.5.7\ncharset-normalizer 3.1.0   \nidna               3.4     \nnumpy              1.22.4  \nopencv-python      4.5.5.64\nPillow             9.5.0   \npip                20.0.2  \npkg-resources      0.0.0   \nrequests           2.31.0  \nsetuptools         44.0.0  \nurllib3            2.0.3   \nwheel              0.34.2\n```\n\n## Usage\n\n```bash\n$ git clone https://github.com/aben20807/py-video-thumbnail.git\n$ cd py-video-thumbnail/\n$ python pvt.py -i 'BigBuckBunny.mp4'\n# Or\n$ python pvt.py -d './'\n```\n\n```bash\n$ python pvt.py -h\n\nCreate thumbnail from a video (default 4x4).\nusage:\n    python pvt.py -d '[video folder]' 2\u003e/dev/null\n    details can be accessed by: python pvt.py -h\nexample:\n    python pvt.py -d 'videos/' 2\u003e/dev/null\nrequire:\n    pip install opencv-python\n    Support Python3\nAuthor:\n    Huang Po-Hsuan (aben20807@gmail.com)\nGitHub:\n    https://github.com/aben20807/py-video-thumbnail\n\nusage: pvt.py [-h] [-s SHAPE] [-k] [-v {0,1,2,3}] [-e EXTENSION] [--info] [--font FONT] [-i INPUT] [-d INPUT_DIR]\n\nCreate thumbnail from a video\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -s SHAPE, --shape SHAPE\n                        use NxN grid (default: 4)\n  -k, --exist           skip exist (default: True)\n  -v {0,1,2,3}, --verbose {0,1,2,3}\n                        verbose level (default: 2)\n  -e EXTENSION, --extension EXTENSION\n                        extensions for video (default: mp4,avi,mkv,m4v,flv,wmv)\n  --info                show the info in thumbnail (default: False)\n  --font FONT           the path of the custom font (default: None)\n  -i INPUT, --input INPUT\n                        single input (default: )\n  -d INPUT_DIR, --input_dir INPUT_DIR\n                        folder for processing recursively (default: )\n```\n\n## Optional for NAS\n\n```bash\n$ sudo mount -t drvfs '\\\\ben-nas\\private' /mnt/share\n$ sudo umount /mnt/share\n```\n\n## Result\n\n```bash\n$ python pvt.py -i 'BigBuckBunny.mp4'\n```\n\n![BigBuckBunny](https://github.com/aben20807/py-video-thumbnail/assets/14831545/18d35dcd-4022-4bba-9b98-b23ce4906801)\n\n```bash\n$ python pvt.py -i 'BigBuckBunny.mp4' --info\n```\n\n![BigBuckBunny](https://github.com/aben20807/py-video-thumbnail/assets/14831545/5b8cbe55-7cbe-47c1-bfe8-0dea243640ad)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faben20807%2Fpy-video-thumbnail","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faben20807%2Fpy-video-thumbnail","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faben20807%2Fpy-video-thumbnail/lists"}