What is Self-Hosted Content?

Zype offers a direct import flow for you to bring your content from your own CDN. If your content resides on a third-party CDN and/or existing hosting provider, you can import it as a Self-Hosted video source to Zype.

General Information and Requirements on Self-Hosted Videos

  • Self-Hosted videos MUST be imported from a publicly-accessible and secure HTTPS URL.
  • Cross-origin resource sharing must be enabled if you intend to broadcast to public domains. The players make use of CORS for downloading manifests, video files, and encryption keys from the streaming infrastructure. If CORS headers are not present on these server(s), the player assumes that it is not allowed to play the provided link.
  • Manifest URLs should not contain any tokenization, as expired tokens will cause playback to fail.
  • Zype supports the following asset formats for self-hosted import at this time:
    • HLS (ending in /./.m3u8)
    • MP4 Progressive (ending in /./.mp4)
    • MP3 (ending in /./.mp3
  • For HLS manifests, you MUST include the master /./.m3u8 in the URL. Zype will not redistribute child manifests.
  • For HLS Live manifests, you are responsible for all quality of service requirements of those streams. You are also responsible for any ABR (adaptive bitrate transcoding).
  • For HLS VOD manifests, you are responsible for all quality of service requirements of those streams. You are also responsible for any ABR (adaptive bitrate transcoding).
  • For MP4 progressive and MP3 assets, the client is responsible for all quality of service requirements of those streams.

Importing Self-Hosted Content

To import a Self-Hosted video, follow the steps below.

  1. On the Zype navigation menu,  click Import & Upload, then Self-Hosted.

  2. Enter the media URL, and the video’s title and description. You may also change the video’s title and description after it has been added to your Video Library.

  3. By default, the Add Video and Auto Active options are turned On, meaning that the imported video will automatically be added to your Video Library and be set to active. You may toggle Off these options.

  4. If you are importing a Self Hosted linear live stream, make sure to set the On Air flag to On. 
  5. Click Add Video.

After Zype imports the video, you can view or edit the video details by going to your Video Library.

Managing Self-Hosted Videos

To update the media URL and ad timings for a self-hosted video, follow the steps below.

  1. On the Zype navigation menu, click Library.

  2. On the Video Library, click the self-hosted video to be edited.

  3. On the Edit Video page, you may edit the media URL of your video by navigating to the Video Details page and selecting Media URLs - Ad Timings and editing the URL of the video:

  4. Click Save Changes.

Generating Dynamic URL Parameters on Self-Hosted Manifest Requests

Zype supports the ability to generate certain dynamic URL parameters against Self-Hosted manifest requests. This is useful in situations where your manifest server requires some dynamic information specific to an individual user who is requesting your self-hosted stream.

For example, you may have entered a manifest URL that is generated by your SSAI (server-side ad insertion) server, where in order to optimize ad fills they require a unique user ID. In this case, you can use Zype's Unique User ID [uuid] manifest parameter to dynamically return the uuid value for that user as part of the manifest request.

Below is a list of all supported dynamic manifest parameters that can be used as URL replacements for self-hosted manifests:

  • [id] The ID of the video.
  • [title] The title of the video.
  • [description] The short description of the video.
  • [keywords] A comma separated list of the Video's Keywords.
  • [url] The URL of the web page where the player is being rendered.
  • [non_encoded_url] The non encoded URL of the web page where the player is being rendered.
  • [domain_url] From where the viewer is watching the content.
  • [player_width] Width of the player.
  • [player_height] Height of the player.
  • [player_dimensions] Dimensions of player, e.g. 1024x768.
  • [episode] The episode number of the video if available.
  • [season] The season number of the video if available.
  • [duration] The duration of the video.
  • [autoplay] 0 if autoplay is off, 1 if autoplay is on.
  • [random] A randomly generated string; useful for cache busters.
  • [vpaid] Specifies the returning of javascript creative with the value of "js".
  • [ip_address] IP address of the viewer.
  • [uuid] Unique identifier for each user and/or device.
  • [user_agent] User agent string.
  • [position] Indicates if the position of the ad request is being sent from pre-roll, mid-roll, or post-roll.
  • [custom_attributes] Sends URL-encoded key value pair 'Name' and 'Value' metadata added to individual videos within the 'Custom Attributes' metadata field in the following format: <name>=<value>. If a video has multiple sets of Name and Value key value pairs, each set will be separated by a URL-encoded ampersand symbol as follows: <name1>=<value1>&<name2>=<value2>. Used when you are pairing specific ad creatives/campaigns to keyword values.
  • [app_name] Name of the application.
  • [app_bundle] The application bundle, e.g. com.zype.android.
  • [app_domain] The application domain, e.g. com.zype.android.
  • [device_make] Manufacturer of a device, e.g. Apple.
  • [device_ifa] Device identifier for advertising, e.g. Apple IDFA, Google Advertising ID, or Roku RIDA.
  • [device_model] Model of device, e.g. iPhone 11.
  • [app_id] ID of the application.
  • [access_token] Token used by the viewer to watch the content.
  • [series_id] The series id of the video if available. 
  • [vpi] Indicates whether to serve inline VMAP. Possible values are 1 to return VAST, and 0 to return redirect tags.