Rev Integration Functions
  
Rev Integration Functions
DME Video EdgeIngest to Rev
 
Note: Before any Rev integration functions may be performed, you must configure your DME to interface with Rev correctly.
EdgeIngest easily allows admins to bulk ingest content up into the VBrick Rev system. To do this, the admin generates a metadata file for each media file to upload (JSON formatted as described below) and then places the files into a specific directory within the DME. The DME takes over from there and copies the contents up to Rev.
This is a simple and handy method for uploading Video on Demand (VOD) content. This feature is limited to VBrick Rev.
 
Note: Admins should be aware of local bandwidth constraints and impacts when uploading multiple large media (with metadata) files. Admins can limit network use and saturation by uploading the media and metadata files in small batches during low use periods.
 
*The following steps outline the use of EdgeIngest to upload videos from any DME to Rev:
1. Prepare the required media and metadata (JSON) files for ingestion
2. FTP the files to the EdgeIngest directory (in the base FTP directory)
3. Monitor and troubleshoot the ingestion as needed
Required File Types for Bulk Video Upload
Two files are needed for each video EdgeIngest upload; the video file itself in .mp4 format and a corresponding metadata file in JSON format with the exact same name. These are the two files Rev’s API will use to upload the video to Rev’s interface; all other file types will be ignored. For example, for a video named VirginiaVideo, two files will be supplied: VirginiaVideo.mp4 and VirginiaVideo.json.
The following data fields may be included in the JSON metadata file.
Title
Description
Uploader
Categories
Tags
EnableComments
EnableRatings
EnableDownloads
IsActive
VideoAccessControl
AccessControlEntities
 
Note: Files will only be uploaded if a corresponding JSON file is present and valid. Also, please do not upload more than 6000 files at any one time. For large numbers of files, it is best to stagger placing the files into the EdgeIngest folder so the DME can process them in turn.
An example of a JSON metadata file:
 
{"title":"Title for the video file",
"description":"Description for the video",
"enableComments":"false",
"enableRatings":"false",
"enableDownloads":"true",
"uploader":"adminuser",
"isActive":"true",
"tags":["video", "upload", "mp4"],
"categories":["Category1", "Category2"],
"videoAccessControl" : "Public" ,
"accessControlEntities" : [{"name":"user1", "type":"User", "canEdit":"false"}, {"name":"group1", "type":"Group", "canEdit":"false"}, {"name":"team1", "type":"Team", "canEdit":"false"}]}
Keep in mind that all fields are optional. This means that you may upload a file to Rev with no metadata. However, you will still need to supply a JSON file for the video ingestion to start.
To accomplish this, a “no metadata” keyword field has been created to alert the DME that no metadata will be sent to Rev. In this case, only the Uploader field that is identified on the DME Rev Interface page will be provided to Rev. If this field is not provided in the DME either, the DME will default the field to “DME”.
 
*To send no metadata to Rev:
 
{“noMetadata” : “any string or integer”}
Notes on JSON file formatting: The JSON format will not accept certain characters such as a Tab or Carriage Return. Processing will fail on JSON files that include these special characters. However, these characters may still be included if they are encoded.
To include these characters within your JSON file, please use the following table to encode the strings. For example, if you want a string “Hello ^t World” where ^t is a Tab character, it would be encoded as “Hello \t World”. Embedded single quotes are not supported.
\b Backspace (ascii code 08)
\f Form feed (ascii code 0C)
\n New line
\r Carriage return
\t Tab
\" Double quote
\\ Backslash character
 
Tip: Please refer to the Rev REST documentation for a complete list of metadata that Rev can accept with the Upload Video API.
Start a Bulk Video Upload to Rev
The DME monitors the EdgeIngest directory for new .mp4 and JSON files. When new files are copied to this directory, the DME will start the ingestion process to Rev.
/var/www/html/EdgeIngest
Using an FTP client, copy the video and FTP files into the directories referenced above.
Bulk Video Upload to Rev File Properties
The copied video files and their corresponding JSON (metadata) files are sent to Rev through Rev’s POST uploads/videos API found on the VBrick documentation site.
Keep in mind that if the .mp4 file or JSON file is missing any metadata fields, the DME will not supply any default fields. The exception to this is the Uploader field which may be provided through the DME’s Rev Interface page and is defaulted to “DME”. You must have a Rev user account with the same name as the Uploader field in the DME if you decide to use this function instead of supplying it through the JSON file.
Rev will also supply any default values through the API itself if you do not provide the metadata fields. To understand how these fields are handled through Rev in this case, view the Rev REST API Online help.
Once the files have been uploaded to Rev, they will be removed from the DME directory. The result of the ingestion will be logged. You may view this log at Monitor > Upload Log.
 
Tip: If the upload fails for any reason, often due to network issues, you may manually start the upload process again by using the Upload button under the Rev Interface page.
Monitor a Bulk Video Upload to Rev
The Upload Log is used to provide status on files that Rev uploads from the DME. The date, time, file name, and status of each ingestion is provided.
See: Monitor > Upload Log for details.
Keep in mind that the DME will continue the upload process controlled by the following variables (Note: These are system variables that may not be modified at this time):
Max_Rev_Uploads: The number of simultaneous upload attempts that may occur. Default = 50.
Max_Reload_Retry: The number of times to retry an upload. Default = 10.
Delay_Reload_Retry: The number of seconds to delay before the next retry. Default = 300.
 
*See Also:
Rev Interface