{"id":15684311,"url":"https://github.com/victornpb/quote-clipper","last_synced_at":"2026-03-10T02:33:35.485Z","repository":{"id":40320768,"uuid":"325866385","full_name":"victornpb/quote-clipper","owner":"victornpb","description":"A CLI Tool for creating video compilations of quotes of series/movies/animes automatically","archived":false,"fork":false,"pushed_at":"2022-06-26T00:47:23.000Z","size":37,"stargazers_count":13,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-09-02T13:51:58.453Z","etag":null,"topics":["anime","animes","clips","mkv","movies","mp4","quotes","series","subtitles","subtitles-parsing","video-manipulation","videos"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/victornpb.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}},"created_at":"2020-12-31T20:07:04.000Z","updated_at":"2025-03-13T23:28:36.000Z","dependencies_parsed_at":"2022-08-25T12:20:47.766Z","dependency_job_id":null,"html_url":"https://github.com/victornpb/quote-clipper","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/victornpb/quote-clipper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/victornpb%2Fquote-clipper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/victornpb%2Fquote-clipper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/victornpb%2Fquote-clipper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/victornpb%2Fquote-clipper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/victornpb","download_url":"https://codeload.github.com/victornpb/quote-clipper/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/victornpb%2Fquote-clipper/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30322645,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T01:36:58.598Z","status":"online","status_checked_at":"2026-03-10T02:00:06.579Z","response_time":106,"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":["anime","animes","clips","mkv","movies","mp4","quotes","series","subtitles","subtitles-parsing","video-manipulation","videos"],"created_at":"2024-10-03T17:14:31.516Z","updated_at":"2026-03-10T02:33:35.470Z","avatar_url":"https://github.com/victornpb.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Quote Clipper\n\n![quote-clipper](https://user-images.githubusercontent.com/3372598/175794893-c98b9be2-4f8b-4969-88a4-dd43b2af97d9.jpg)\n\nA CLI Tool for finding quotes in series/movies/animes and automatically creating video compilations.\n\n# Usage\n```\nUsage: quoteclipper [OPTIONS] [DIRECTORY]\n\nOptions:\n  -m, --match TEXT                [required]\n  -o, --output PATH               Name of the output movie.  [default:\n                                  ./Compilation of {}.mp4]\n\n  -e, --export-clips              Export individual clips\n  -ed, --export-clips-dir PATH    Directory to export clips to (must exist)\n                                  [default: .]\n\n  -et, --export-clips-template TEXT\n                                  Template to be used as clips filenames.\n                                  (Variables: n, index, basename, quote,\n                                  start, end, duration)  [default: {n} -\n                                  {quote}.mp4]\n\n  --dry-run / --no-dry-run        Skip the generation of clips\n  -t, --offset \u003cstart\u003e \u003cend\u003e      Offset the start and end timestamps. For\n                                  example --offset -1.5 1.5 will make each\n                                  clip 3s longer.  [default: 0.0, 0.0]\n\n  -c, --case-sensitive            Case sensitive match (ignored by --regex)\n  -re, --regex                    Interpret matches as regular expressions.\n                                  Example '/foo \\w+/i'\n\n  --help                          Show this message and exit.\n```\n# Examples\n\n### Finding occurences of a word\n```sh\nquoteclipper -match Hello\n```\n\n### Multiple words\nYou can use the parameter `-m` or `-match` as many times as you want\n```sh\n# find quotes containing Hello or Hey\nquoteclipper -m Hello -m Hi -m Hey\n```\n\n### Sentences\nYou need to use quotes if a sentence contain spaces\n```sh\nquoteclipper -m \"Good Morning\" -m \"Good Night\"\n```\n\n### Specifying a folder\nThe last argument is the path it will scan files, by default it scans the current directory.\n```sh\n# Will look for every video inside the \"video\" folder\nquoteclipper -m Hello \"./videos\"\n```\n\n### Changing the output filename and path\nYou can change the output file name and location with the `--output` or `-o` parameter.\n```sh\nquoteclipper -m Hello -o \"~/Desktop/Greetings.mp4\"\n```\n\n### Exporting individual clips\nYou can also export individual clips with `--export-clips` or `-e`.\nFor changing the default file name and location see `--export-clips-dir` and `--export-clips-template` in the Help\n```sh\nquoteclipper -m Hello --export-clips\n```\n#### Clip naming\nWhen using `--export-clips` or `-e` you can change the default naming patter using `--export-clips-template` or `-et`\n```sh\n--export-clips-template \"Clip {n} - {quote} from ({basename}).mp4\"\n```\nVariables:\n - `n` - number (keep things in sequence and avoid overriding clips)\n - `index` - original subtitle index\n - `basename` - name of the original file without extension\n - `quote` - the quote text\n - `start` - original start timestamp\n - `end` - original end timestamp\n - `duration` - duration of the clip\n\n\n## Extending clips\nIf you need to add extra time before and after each clip, you can offset the start and end cuts with the `--offset` or `-t`.\n```sh\n# starting 1.5s earlier and 1.5 after (3s longer)\nquoteclipper -m Hello --offset -1.5 1.5\n ```\n\n\n## Regular expressions\nFor a more advanced matching, you can use power of python regular expressions by enabling the `--regex` or `-re` flag.\n\nRegular expressions need to be delimited by `-m \"/re/flags\"`\n\n#### Case sensitiveness\nRegular expressions are case sensitive by default, and the `--case-sensitive` or `-c` flag has no effect when this mode is enabled.\nTo make a regex insensitive add the `i` flag like `/re/i` to each regex.\n\n#### Escaping\nDue to the nature of POSIX commands, you need to use quotes around the regex if it contains spaces, and in some cases you also need to escape extra characters like ! needs to be scaped as \"\\!\". \n\n```sh\nquoteclipper -re -m \"/foo/i\"\nquoteclipper -re -m \"/foo/i\" -m \"/bar/i\" \n\nquoteclipper -re -m \"/Call 555.\\d+/i\" \nquoteclipper -re -m \"/Car?s|sandwich(es)?/i\"\nquoteclipper -re -m \"/(Ya?|You)'? ?Know\\!/i\"\n```\n# Instalation\n\nClone this repository and run\n```sh\npip3 install .\n```\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvictornpb%2Fquote-clipper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvictornpb%2Fquote-clipper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvictornpb%2Fquote-clipper/lists"}