{"id":13613313,"url":"https://github.com/Sadiqush/RVSearch","last_synced_at":"2025-04-13T15:32:58.861Z","repository":{"id":216140393,"uuid":"327543190","full_name":"Sadiqush/RVSearch","owner":"Sadiqush","description":"Tool to reverse search videos on YouTube based on frame similarities found","archived":false,"fork":false,"pushed_at":"2021-03-06T07:41:58.000Z","size":195,"stargazers_count":18,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-02T16:02:44.986Z","etag":null,"topics":["opencv","phash","python","video-search","youtube-search"],"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/Sadiqush.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}},"created_at":"2021-01-07T08:00:44.000Z","updated_at":"2025-01-20T04:16:02.000Z","dependencies_parsed_at":"2024-01-14T04:44:57.953Z","dependency_job_id":"b823a211-cf7a-47e0-8197-715817345beb","html_url":"https://github.com/Sadiqush/RVSearch","commit_stats":null,"previous_names":["sadiqush/rvsearch"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sadiqush%2FRVSearch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sadiqush%2FRVSearch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sadiqush%2FRVSearch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sadiqush%2FRVSearch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Sadiqush","download_url":"https://codeload.github.com/Sadiqush/RVSearch/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247941698,"owners_count":21022038,"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":["opencv","phash","python","video-search","youtube-search"],"created_at":"2024-08-01T20:00:43.965Z","updated_at":"2025-04-13T15:32:58.602Z","avatar_url":"https://github.com/Sadiqush.png","language":"Python","readme":"# reverse video search\n\nRVSearch is a tool to do a reverse video search on YouTube.\n\nThe comparison is done using pHash and Linear search algorithm, \nthus it is fast and precise to find **exact** similar frames between any videos,\n but not smart enough to find **some what** similar frames when the video is distorted, swinged, transitioned and overall,\n changed, enough\n to escape YouTube own copyright detection algorithm.\n\nFinding similarity between **distorted** and **changed** images can be done using basic object detection algorithms, but when importing them\nto compare videos it will be unbearably slow. \n\nRequirements\n------------\n- Python 3 or greater\n\nFor other missing packages first you need to install them using `pip`:\n```\npip install pandas youtube_dl opencv-python numpy setuptools scikit-video PyQt5 Pillow pip pytz scipy python-dateutil six\n```\n\nInstallation:\n------------\n```\npython3 pip install rvsearch\n```\n\n\nUsage:\n------\nYou can work directly with RVSearch's command line interface:\n```\nrvsearch input.csv\n```\n\nInput:\n-----\n\nFor input you only need to provide the URLs for source and target videos in\n a `.csv` format file, under columns `Compilation` and `Source`.\n\nFor example:\n\n```bash\ni |         Compilation        |          Source          |\n----------------------------------------------------------\n0 |  https://you.tube/video    |   https://you.tube/video |\n----------------------------------------------------------\n1 |                            |   https://you.tube/video |\n----------------------------------------------------------\n2 |                            |   https://you.tube/video |\n```\n**Note**: Only **ONE** compilation per file is supported for now.\n\nIf you want to give multiple inputs, you can.\n\nfor example:\n\n```\nrvsearch input1.csv input2.csv input3.csv\n```\nBut note that output file name will be redundant. If you want to manually specify the output file's name, see Advance Usage.\n\nOutput:\n------\n\nThe output will be saved as a `.csv` file on current working directory. To see where a similarity\n between two videos happened, checkout the timestamp of both videos.\n\nBelow you can see an example of output format:\n\n```\n|    Cmpl_url   |  Cmp_name | Cmp_chnl |   Source_url  | Source_name | Source_chnl | Cmp_TimeStamp | Source_TimeStamp |\n-----------------------------------------------------------------------------------------------------------------------\n|  https://...  |    Name   |   Name   |  https://...  |    Name     |    Name     |     12:34     |      1:23        |\n```\n- `Cmpl_url`: Web URL for the compilation video\n- `Cmp_name`: Title of the compilation video\n- `Cmp_chnl`: Channel name (uploader) of the compilation video\n- `Source_url`: Web URL for the Source video\n- `Source_name`: Title of the Source video\n- `Source_chnl`: Channel name (uploader) of the Source video\n- `Cmp_TimeStamp`: The timestamp on compilation video where similarity found\n- `Source_TimeStamp`: The timestamp on source video where similarity found\n\nAdvance Usage:\n-------------\n| Argument | Explanation |\n| -------- | ----------- |\n| ```-h``` | Displays help message listing all command-line arguments |\n| ```-q``` | Be quiet. Doesn't show anything about what you do|\n| ```-v``` | Be verbose. Output everything, used mostly for debugging the program.|\n| ```-o``` | Specifies the name for output file|\n\nFor example:\n```\nrvsearch input1.csv input2.csv -o results.csv -q\n```\n\n## License\n\nCopyright (c) 2021 by [sadiqush](https://github.com/sadiqush). All rights reserved.\u003cbr\u003e\n[RVSearch](https://github.com/sadiqush/rvsearch) is licensed under the GPLv3 License as stated in the [LICENSE file](LICENSE).\n","funding_links":[],"categories":["Python"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSadiqush%2FRVSearch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSadiqush%2FRVSearch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSadiqush%2FRVSearch/lists"}