reverse video search
RVSearch is a tool to do a reverse video search on YouTube.
The comparison is done using pHash and Linear search algorithm, thus it is fast and precise to find exact similar frames between any videos, but not smart enough to find some what similar frames when the video is distorted, swinged, transitioned and overall, changed, enough to escape YouTube own copyright detection algorithm.
Finding similarity between distorted and changed images can be done using basic object detection algorithms, but when importing them to compare videos it will be unbearably slow.
Requirements
- Python 3 or greater
For other missing packages first you need to install them using pip:
pip install pandas youtube_dl opencv-python numpy setuptools scikit-video PyQt5 Pillow pip pytz scipy python-dateutil six
Installation:
python3 pip install rvsearch
Usage:
You can work directly with RVSearch's command line interface:
rvsearch input.csv
Input:
For input you only need to provide the URLs for source and target videos in
a .csv format file, under columns Compilation and Source.
For example:
i | Compilation | Source |
----------------------------------------------------------
0 | https://you.tube/video | https://you.tube/video |
----------------------------------------------------------
1 | | https://you.tube/video |
----------------------------------------------------------
2 | | https://you.tube/video |
Note: Only ONE compilation per file is supported for now.
If you want to give multiple inputs, you can.
for example:
rvsearch input1.csv input2.csv input3.csv
But note that output file name will be redundant. If you want to manually specify the output file's name, see Advance Usage.
Output:
The output will be saved as a .csv file on current working directory. To see where a similarity
between two videos happened, checkout the timestamp of both videos.
Below you can see an example of output format:
| Cmpl_url | Cmp_name | Cmp_chnl | Source_url | Source_name | Source_chnl | Cmp_TimeStamp | Source_TimeStamp |
-----------------------------------------------------------------------------------------------------------------------
| https://... | Name | Name | https://... | Name | Name | 12:34 | 1:23 |
Cmpl_url: Web URL for the compilation videoCmp_name: Title of the compilation videoCmp_chnl: Channel name (uploader) of the compilation videoSource_url: Web URL for the Source videoSource_name: Title of the Source videoSource_chnl: Channel name (uploader) of the Source videoCmp_TimeStamp: The timestamp on compilation video where similarity foundSource_TimeStamp: The timestamp on source video where similarity found
Advance Usage:
| Argument | Explanation |
|---|---|
-h |
Displays help message listing all command-line arguments |
-q |
Be quiet. Doesn't show anything about what you do |
-v |
Be verbose. Output everything, used mostly for debugging the program. |
-o |
Specifies the name for output file |
For example:
rvsearch input1.csv input2.csv -o results.csv -q
License
Copyright (c) 2021 by sadiqush. All rights reserved.
RVSearch is licensed under the GPLv3 License as stated in the LICENSE file.
Metadata
Release files for rvsearch 1.3.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| rvsearch-1.3.4-py3-none-any.whl | Python 3 | none | any | Details for rvsearch-1.3.4-py3-none-any.whl |
Release files / rvsearch-1.3.4-py3-none-any.whl
| Download URL | rvsearch-1.3.4-py3-none-any.whl |
|---|---|
| Size | 28.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d1614f339cec796ea331e9581bea23c00aecf77b2ef7f2fe666671cc42ea9f34
|
|
BLAKE2b-256 checksum How to use checksums |
9446ebffbc365f27fe72d54a51665ba45f6b50b9bacd88cc5aee1041bfdf5feb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.2
|
Security for rvsearch 1.3.4
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.