Practical overview
When it fits
Use it when a video library needs text-based discovery of moments without manually scanning each file. The repository documents upload/indexing, search, listing, and deletion endpoints.
Who it is for
- People maintaining searchable video archives or media libraries.
- Developers exploring a self-hosted semantic video indexing and retrieval pipeline.
Documented uses
- Index uploaded videos for later retrieval.
- Find objects, scenes, or moments by describing them in natural language.
- Retrieve ranked video timestamps and manage indexed-video records.
Requirements & limits
The repository is public and identifies the project as GPL-3.0 licensed. It documents Docker Compose and local-development setup options.
- Video content is indexed by extracting frames and generating semantic embeddings; searches return timestamps rather than a textual transcript.
- The documented stack separates video-frame ingestion from text-query inference and uses Qdrant as the vector database.
- The README describes CPU execution without a GPU requirement; its performance figures are project-reported benchmarks, not a compatibility or performance guarantee.
- Local setup documents FFmpeg, Qdrant collection creation, and model quantization as prerequisites or preparation steps.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Start the Docker Compose stack
Launch the documented backend and Qdrant services and open the API documentation.
Before you start
- A clone of the repository
- Docker Compose
Steps
Clone the repository and change into its directory.
Run
docker-compose up --build -dto start the backend and Qdrant.Open
http://localhost:8000/docsto view the API documentation.
Expected outcome
The documented service stack is started and its API documentation is accessible at the local URL.
Guide limitations
- This setup sequence does not describe uploading or searching a video.
- The repository gives no hardware compatibility guarantee.
Prepare a local development environment
Install the local dependencies, start Qdrant, create its collection, prepare the model, and start the API server.
Before you start
- A clone of the repository
- FFmpeg installed and available in PATH
- Docker for the documented Qdrant container command
Steps
Install Python dependencies with the command below.
pip install -r requirements.txtStart Qdrant with the command below.
docker run -d -p 6333:6333 -p 6334:6334 qdrant/qdrantCreate the collection with the command below.
python db/setup_collection.pyRun the command below to quantize and split the model.
python tools/quantize_model.pyStart the API with
uvicorn app.main:app --reload.
Expected outcome
The documented local setup sequence starts the API after preparing Qdrant and the model.
Guide limitations
- The README presents this as a local development option; this sequence alone does not index or search video.
- The listed steps do not specify platform-specific installation instructions.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 15 October 2026
- Original website title
- Aniket-16-S/Semantic_Video_Search · Official homepage title · retained in its source language

