Stay organized with collections
Save and categorize content based on your preferences.
This page describes how to annotate a video stream from standard live
streaming protocols.
The Video Intelligence API Streaming API enables real-time streaming
analysis for live media. Supported features include:
Live Label Detection
Live Shot Change Detection
Live Explicit Content Detection
Live Object Detection and Tracking
The AIStreamer
ingestion library provides a set of open source interfaces and
example code to connect to the Video Intelligence API Streaming API. The
library supports:
HTTP Live Streaming (HLS): an HTTP based media streaming and communication
protocol.
Real Time Streaming Protocol (RTSP): a network control protocol for
streaming media servers. It is used in conjunction with
Real Time Protocol (RTP) and Real Time Control Protocol (RTCP).
Real Time Messaging Protocol (RTMP): a protocol for streaming audio,
video, and data over the Internet.
To start using AIStreamer
The AIStreamer ingestion library includes the following examples (incuding
a Docker example).
Live Streaming:
Instructions for supporting live streaming protocols
(HLS, RTSP and RTMP) in Video Intelligence API.
Docker & Kubernetes:
Instructions for using our docker example and kubernetes deployment.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,["# Stream live videos\n\n| **Beta**\n|\n|\n| This feature is subject to the \"Pre-GA Offerings Terms\" in the General Service Terms section\n| of the [Service Specific Terms](/terms/service-terms#1).\n|\n| Pre-GA features are available \"as is\" and might have limited support.\n|\n| For more information, see the\n| [launch stage descriptions](/products#product-launch-stages).\n\nThis page describes how to annotate a video stream from standard live\nstreaming protocols.\n\nThe Video Intelligence API Streaming API enables real-time streaming\nanalysis for live media. Supported features include:\n\n- Live Label Detection\n\n- Live Shot Change Detection\n\n- Live Explicit Content Detection\n\n- Live Object Detection and Tracking\n\nThe [AIStreamer](https://github.com/google/aistreamer/tree/master/ingestion)\ningestion library provides a set of open source interfaces and\nexample code to connect to the Video Intelligence API Streaming API. The\nlibrary supports:\n\n- HTTP Live Streaming (HLS): an HTTP based media streaming and communication\n protocol.\n\n- Real Time Streaming Protocol (RTSP): a network control protocol for\n streaming media servers. It is used in conjunction with\n Real Time Protocol (RTP) and Real Time Control Protocol (RTCP).\n\n- Real Time Messaging Protocol (RTMP): a protocol for streaming audio,\n video, and data over the Internet.\n\nTo start using AIStreamer\n-------------------------\n\nThe AIStreamer ingestion library includes the following examples (incuding\na Docker example).\n\n- [Live Streaming](/video-intelligence/docs/streaming/live-streaming):\n Instructions for supporting live streaming protocols\n (HLS, RTSP and RTMP) in Video Intelligence API.\n\n- [Docker \\& Kubernetes](/video-intelligence/docs/streaming/docker-kubernetes):\n Instructions for using our docker example and kubernetes deployment.\n\n- [Live Label Detection](/video-intelligence/docs/streaming/live-label-detection):\n Instructions for streaming label analysis.\n\n- [Live Shot Change Detection](/video-intelligence/docs/streaming/live-shot-change-detection):\n Instructions for streaming shot change analysis.\n\n- [Live Explicit Content Detection](/video-intelligence/docs/streaming/live-explicit-content):\n Instructions for streaming explicit content analysis.\n\n- [Live Object Detection and Tracking](/video-intelligence/docs/streaming/live-object-tracking):\n Instructions for streaming object detection and tracking analysis.\n\nCode architecture\n-----------------\n\nThe AIStreamer ingestion library includes the following three directories:\n\n- [client](https://github.com/google/aistreamer/tree/master/ingestion/client):\n Python \\& C++ client libraries for connecting to Video Intelligence.\n\n- [env](https://github.com/google/aistreamer/tree/master/ingestion/env):\n Docker example for AIStreamer ingestion.\n\n- [proto](https://github.com/google/aistreamer/tree/master/ingestion/proto):\n Proto definitions and gRPC interface for Video Intelligence.\n\nThird-party dependencies\n------------------------\n\nThe open source AIStreamer ingestion library is based on the following\nGoogle-owned and third-party open source libraries.\n\n- [Bazel](https://bazel.build/): A build and test tool with multi-language support.\n\n- [gRPC](https://grpc.io/): A high performance, open-source universal RPC framework.\n\n- [Protobuf](https://developers.google.com/protocol-buffers): Google's\n language-neutral, platform-neutral, extensible mechanism for serializing structured data.\n\n- [rules_protobuf](https://github.com/pubref/rules_protobuf): Bazel rules for building protocol buffers and gRPC services.\n\n- [glog](https://github.com/google/glog): C++ implementation of the Google logging module.\n\n- [gflags](https://github.com/gflags/gflags): C++ library that implements command-line flags processing.\n\n- [ffmpeg](https://www.ffmpeg.org/): A complete, cross-platform solution to\n record, convert and stream audio and video.\n\n- [gStreamer](https://gstreamer.freedesktop.org/): Another cross-platform multimedia processing and streaming framework."]]