On January 1, 2020 this library will no longer support Python 2 on the latest released version. Previously released library versions will continue to be available. For more information please visit Python 2 support on Google Cloud.

Python Client for Google Cloud Video Intelligence

beta pypi versions

Google Cloud Video Intelligence API makes videos searchable, and discoverable, by extracting metadata with an easy to use API. You can now search every moment of every video file in your catalog and find every occurrence as well as its significance. It quickly annotates videos stored in Google Cloud Storage, and helps you identify key nouns entities of your video, and when they occur within the video. Separate signal from noise, by retrieving relevant information at the video, shot or per frame.

Quick Start

In order to use this library, you first need to go through the following steps:

  1. Select or create a Cloud Platform project.

  2. Enable billing for your project.

  3. Enable the Google Cloud Video Intelligence API.

  4. Setup Authentication.


Install this library in a virtualenv using pip. virtualenv is a tool to create isolated Python environments. The basic problem it addresses is one of dependencies and versions, and indirectly permissions.

With virtualenv, it’s possible to install this library without needing system install permissions, and without clashing with the installed system dependencies.

Supported Python Versions

Python >= 3.5

Deprecated Python Versions

Python == 2.7. Python 2.7 support will be removed on January 1, 2020.


pip install virtualenv
virtualenv <your-env>
source <your-env>/bin/activate
<your-env>/bin/pip install google-cloud-videointelligence


pip install virtualenv
virtualenv <your-env>
<your-env>\Scripts\pip.exe install google-cloud-videointelligence

Example Usage

from google.cloud import videointelligence

client = videointelligence.VideoIntelligenceServiceClient()
job = client.annotate_video(
result = job.result()

Next Steps


Because this client uses grpcio library, it is safe to share instances across threads. In multiprocessing scenarios, the best practice is to create client instances after the invocation of os.fork() by multiprocessing.Pool or multiprocessing.Process.

API Reference

This package includes clients for multiple versions of the Video Intelligence API. By default, you will get v1, the latest stable version.

A new beta release with additional features over the current stable version, spelled v1p3beta1, is provided to allow you to use these new features. These are expected to move into the stable release soon; until then, the usual beta admonishment (changes are possible, etc.) applies.

An API and type reference is provided for this beta:

The previous beta releases, spelled v1p2beta1, v1p1beta1, and v1beta2, are provided to continue to support code previously written against them. In order to use ththem, you will want to import from e.g. google.cloud.videointelligence_v1beta2 in lieu of google.cloud.videointelligence_v1.

An API and type reference is provided the these betas also: