/Video-Curation-Sample

This sample implements libraries of video files content analysis, database ingestion, content search and visualization.

Primary LanguageC++MIT LicenseMIT

This sample implements libraries of video files content analysis, database ingestion, content search and visualization:

  • Ingest: Analyze video content and ingest the data into the VDMS.
  • VDMS: Store metadata efficiently in a graph-based database.
  • Visualization: Visualize content search based on video metadata.

This is a concept sample in active development.

Software Stacks

The sample is powered by the following Open Visual Cloud software stacks:

Install Prerequisites:

  • Time Zone: Check that the timezone setting of your host machine is correctly configured. Timezone is used during build. If you plan to run the sample on a cluster of machines managed by Docker Swarm or Kubernetes, please make sure to synchronize time among the manager/master node and worker nodes.

  • Build Tools: Install cmake and m4 if they are not available on your system.

  • Docker Engine:

sudo mkdir -p /etc/systemd/system/docker.service.d       
printf "[Service]\nEnvironment=\"HTTPS_PROXY=$https_proxy\" \"NO_PROXY=$no_proxy\"\n" | sudo tee /etc/systemd/system/docker.service.d/proxy.conf       
sudo systemctl daemon-reload          
sudo systemctl restart docker     

Build Sample:

mkdir build    
cd build     
cmake ..    
make     

See also: Customize Build Process.

Start/stop Sample:

Use the following commands to start/stop services via docker-compose:

make start_docker_compose      
make stop_docker_compose      

Use the following commands to start/stop services via docker swarm:

make update # optional for private registry
make start_docker_swarm      
make stop_docker_swarm      

See also: Docker Swarm Setup.

Use the following commands to start/stop Kubernetes services:

make update # optional for private registry
make start_kubernetes
make stop_kubernetes

See also: Kubernetes Setup.

Launch Sample UI:

Launch your browser and browse to https://<hostname>. The sample UI is similar to the following:


  • For Kubernetes/Docker Swarm, <hostname> is the hostname of the manager/master node.
  • If you see a browser warning of self-signed certificate, please accept it to proceed to the sample UI.

See Also