The Platform’s REST API is designed to rapidly create automated encoding solutions and to facilitate the integration of LCEVC-enhanced encoding into other services and platforms. To learn more about the options for integrating LCEVC contact V-Nova at www.v-nova.com/contact.
This section details how to use the platform’s API to retrieve encode information from a previous job or start a new job with defined parameters for VOD or live content.
In order to authenticate your user account with the platform's API you must acquire an API key. Please bear in mind this key will give full access to your account and it is therefore recommended to store the key in a secure location to guard against the potential security risk of exposing an account API key to third parties. The platform API only supports JSON.
To access your API key
Login into the platform, then go to System on the left-hand navigation panel and select Users.
Edit the user you wish to assign API access to. At the bottom of the user page you will find the API Key for that user.
If the API key has not been generated, then go to API Key Refresh, select Generate and save the user. You may need to logout and back in again to retrieve the key.
This will allow you to get the details of your account's encodes, if you specify a content ID it will only pull back the information of that particular job, if not it will pull back information on all of the encodes.
Usign content ID is a GET method only.
Headers
Name
Type
Description
{
"Message": "VOD Listing Successful ",
"Username": "Demo",
"Total VOD Contents": 1,
"EncodingParameters": {
"packaging": {
"Description": "Packaging Options available on the platform",
"Values": {
"Hls_ts": "0",
"Dash_fmp4": "1"
}
},
"encodingType": {
"Description": "Encoding Engine to be used for the encoding of this profile",
"Values": [
"2",
"3"
]
},
"width": {
"Description": "width of the encoded video for this profile"
},
"height": {
"Description": "height of the encoded video for this profile"
},
"transform": {
"Description": "specify the transform type for encoding.",
"Values": [
"dd",
"dds"
]
},
"ditherStrength": {
"Description": "setting strength of dither"
},
"x264Preset": {
"Description": "setting preset parameters for x264",
"Values": [
"very fast",
"fast",
"medium",
"slow",
"very slow",
"placebo",
"dual pass"
]
},
"QpMin": {
"Description": "Advanced perseus parameter forspecifying the minimum quanatization for the encoding in thisprofile."
},
"QpMax": {
"Description": "Advanced perseus parameter forspecifying the maximum quanatization for the encoding in thisprofile."
},
"maxgop": {
"Description": "maximum no of gop present in a chunk"
},
"videoBitrate": {
"Description": "video bitrate per second for the video profile"
},
"audioBitrate": {
"Description": "audio bitrate per second for the video profile"
}
},
"VodAssets": {
"catalogue:": [
{
"Title": "XXX",
"ContentId": "XXXXXX",
"ContentDuration": "00:00:10.00",
"IsPremium": false,
"IsEnabled": true,
"AdURL": "https://s3.eu-west-2.amazonaws.com/XXXX",
"Packaging": "HLS - ts chunks",
"ManifestURL": "https://s3.eu-west-2.amazonaws.com/origin-lon.v-nova.com/XXXX",
"ThumbnailImage": "https://s3.eu-west-2.amazonaws.com/origin-lon.v-nova.com/images/XXXX",
"PosterImage": "https://s3.eu-west-2.amazonaws.com/origin-lon.v-nova.com/images/XXXX",
"Description": "",
"Cast": "",
"NoofProfiles": "1",
"Chunksize": "10",
"Profiles": [
{
"Resolution": "1920X1080",
"Bitrate": "1024000",
"Maxgop": "50",
"ProfileNo": 1,
"Size": "1.250000",
"Audiobitrate": "64"
}
]
}
]
}
}
{
"Error Code": "411 ",
"Message": "Database Error ",
"Username": "Demo ",
"Query Error": "sql: no rows in result set ",
"Error": "There was an issue fetching the data from the database. 'XXXXX' does not exist."
}
/presets returns a list of presets and their parameters.
/presets/{presetID} retrieves the preset's parameters that can be used to populate all parameters in a post job.
The body of a post must take the form below. If a presetID is set the profile parameters do not need to be defined. See next chapter. We have set default values in the below body. If you wish to generate more than one profile, simply duplicate the profile parameters in the same POST string.
Errors are returned within standard http syntax, these are shown above in the response tab of the GET or POST headers. If you experience any errors or wish to file a bug report, please contact your V-Nova representative or support@v-nova.com and include the API response concerned.