Streaming a Video

Stream RGB-D/IR .mkv (matroska) Videos

The current .mkv video format supported is the .mkv file type created by the Azure Kinect's recorder utility

We provide a sample .mkv video in the instructions below so you can check out how SSP works without needing to buy an Azure Kinect

Streaming .mkv is a good idea for Windows/Linux/Mac testing. Although you can stream a local .mkv from an iOS device it isn't a "real" use case (why would that be needed?).

Sensor Stream Server currently supports streaming .mkv files. Azure Kinect comes with a recorder app that allows you to create .mkv files from a live Azure Kinect feed.

You can use Sensor Stream Server to stream these videos to Sensor Stream Client. We have provided an .mkv file to download to get you started if you want to quickly see what is going on with Sensor Stream Pipe.

1.0 Download an RGB-D Video

Moetsi has made available a few RGB-D recordings taken with the Azure Kinect to be used for testing.

1.1 Install "wget" to download the file

brew install wget

1.2 Use wget (or cURL) to download an example file

Video file of a moving sensor (if using for SfM/SLAM pipelines):


Video file of a static sensor and a moving human body (for body tracking pipelines):


2.0 Prepare Sensor Stream Pipe

2.1 Follow installation instructions for Linux/Windows/MacOS to build Sensor Stream Pipe on your development platform.

2.2 Move the downloaded .mkv file to the same folder as the Sensor Stream Server executable (not required but this way you will not need to define the path to the video file in the config yaml in step 2.2)

2.2 Update line 10 (path) in Sensor-Stream-Pipe/configs/serve_video.yaml to point at the downloaded .mkv file (or the path of any mkv file)

If you are using the downloaded .mkv file and placed it in the same folder as the server executable then line 10 would be:

      path: "1080p_ShadesDown_Darker_Closer_Right_Moving_Right.mkv"

3.0 Run Sensor Stream Client and Sensor Stream Server

3.1 Run Sensor Stream Client with OpenCV (this will use OpenCV to visualize incoming streams)

./ssp_client_opencv 9999

Run with whatever port you have set in the config yaml (default is 9999)

3.2 Run Sensor Stream Server

./ssp_server ../../configs/serve_video.yaml

You will need to provide an argument which has a path to the config yaml you want to use

Last updated