Publishing a Video Asset Using the API
In LightFlow, an asset is a video, including the output formats used to watch it online or offline, and the set of optimizations applied to maximize the viewer's quality of experience (QoE). To publish an asset using the LightFlow API, send a POST to the /assets
endpoint:
curl -XPOST 'https://api.lightflow.media/assets' \
-H 'authorization: Bearer API_KEY' \
-H 'content-type: application/json' \
-d '{
"parameters": {
"input": {
"urlPath": "https://xx.com/your-video.mp4"
},
"perceptual-quality": {
"h264": {
"maxBitrate": 8000,
"minBitrate": 250,
"maxResolution": 1080,
"targetQuality": 100
}
}
}
}'
In the example above, an optimized version of "your-video.mp4" will be published. The API call supports many other other options. For example, you can specify values for the packaging parameter to publish your video deliverable as an MP4 file and/or HLS and MPEG-DASH streams. The perceptual quality object sets the inputs for our analysis engine. With systems other than LightFlow you typically just define some static configuration that has to be applied for every video. With the LightFlow engine, you can impose some limits. In this example, we are telling LightFlow to perform an analysis of this video and then to come back with the most optimal encoding settings, but to not go beyond 8 megabits per second and not below 250. This LightFlow feature, preparing content for transcoding, is called DeepEye.
All of the perceptual quality parameters (only 4 are shown in this example) that you can configure and adjust to limit the operation of the optimization engine are described in the DeepEye Content Aware Optimization section.
Important
Before you start issuing any API calls, you will need to get your authentication token from the Settings section of the LightFlow portal.