Migrating Content to Vimeo OTT

I have existing content that I would like to include on my new Vimeo OTT channel, will I need to upload each individually?

No, not unless you would like to!

The Vimeo Solutions team can help you seamlessly migrate your content from an existing storage library to your new OTT channel. We will work with you to coordinate the ingestion of your content, depending on how your existing library is stored.

1) I already use Vimeo or Livestream to store my content, how do we kick-off the migration?

Before we are able to perform the migration, we will need to confirm a few details with you:

  1. The current Vimeo or Livestream website where your videos are stored
  2. The email address for the primary account owner used to log in to the account
    1. Note: We will not require the password to this login credential
  3. The total number of videos currently stored within your existing Vimeo or Livestream account - whether set to be available or unavailable
    1. Note: This is necessary to estimate how long the migration will take
  4. The estimated amount of content total hours
    1. Note: This is necessary for our team to add the appropriate transcoding time within your CMS to support the migration

Once the above information is received, your Technical Program Manager will schedule the migration with our Solutions Engineers. When the migration begins, the completion timing is based on how many files are being ingested.

When a content migration is performed from Vimeo or Livestream, please be aware of the following:

  1. Existing videos within your account will be copied into your OTT CMS using the largest source-file video bitrate available. This will not impact your current Vimeo account and videos will continue to be located within your existing account.
  2. Vimeo is not able to migrate a specific selection of videos. All videos located within your Vimeo or Livestream account will be copied over into your OTT CMS.
  3. The migrated videos will retain any titles and video descriptions that may have been set within your Vimeo or Livestream account.
  4. Any video categorization that had been performed within your Vimeo or Livestream account will not be included when the content migration is performed.

2) What if I don’t have a Vimeo or a Livestream account to migrate from?

No problem!

Our OTT platform supports the ability to bulk ingest large, existing libraries of content and metadata. You will work with your Technical Program Manager to map out a plan for a content ingestion during the on-boarding process. This will allow you to launch your service with as much of your content as possible!

The long and short of it

To conduct a bulk content ingestion, we will require that all video content and associated metadata is outlined in a .csv spreadsheet similar to this template. This .csv will be shared with your Technical Program Manager as we progress through the process. Your files will need to be named per the required file naming convention listed below. Then, once you are ready and your files are verified, your content will be transferred into your OTT CMS via an Amazon Web Services S3 location.

The nitty gritty:

1) First, you will need an Amazon S3 location (aka an S3 'bucket'). If you don't have one already, Vimeo can provision a location for you.

  • If you would like to create your own Amazon Web Services S3 location:
    • Follow Amazon's handy guide found here and follow along to the next bullet point to ensure your S3 location region is set properly.
    • NOTE - Your created S3 location needs to be set in region US-EAST-1 (N. Virginia). Any other region will not work with the Vimeo OTT platform.
  • If you have your own S3 bucket, follow these instructions to grant access to Vimeo.
  • If you do not have an S3 location provisioned:
    • By working with your Technical Program Manager, Vimeo OTT will provision a location for you!

2) Once your S3 location is defined, you will need to upload your content into it. Before you begin uploading, please ensure that your videos follow our recommended compression settings

Here are a few applications that support uploading content to S3:

  1. Cyberduck (Our recommendation)
  2. Transmit

3) Then, we will work together to ensure that all content and metadata are formatted properly within your S3 location and ingestion .csv. When configuring your .csv spreadsheet to support bulk content ingestion, please be aware of the following requirements:

  1. File Naming Convention
    • Vimeo OTT supports the ingestion of the following types of files:
      • Video
      • Images (thumbnails)
      • Text tracks (subtitles/captions)
    • Master Requirements for File Naming:
      • The file name can contain letters, numbers, and underscores. No spacing, symbols, or unicode characters are accepted.
      • The file name cannot be over 50 characters.
      • The file name must be unique per type of file located in the S3 location (more on this below!).
    • Video
      • The file name of the video will be its 'Media ID'. The 'Media ID' will be located within Column A of the .csv bulk ingestion spreadsheet
        • Example: The_Martian.mp4
      • As long as you adhere to the master requirements above, you're all set and can name your file however you'd like!
      • .mp4 or .mov files are preferred
        • Note: .mkv or .m4v are not supported encoding profiles within Vimeo OTT. Any video encoded with this profile will not upload into your CMS.
    • Video Trailer
      • The file name will need to share the same 'Media ID' of the source video and have -trailer before the file extension.
        • Example: The_Martian-trailer.mp4
      • Your video trailers do not need to be explicitly listed within the bulk ingestion .csv but they do need to be located within the same S3 location as the video it is paired with.
    • Image (Thumbnail)
      • .jpg, .jpeg, and .png files are supported
      • Recommended resolution is 3840x2160
      • If you would like to use a custom thumbnail for any of your video files:
        • The file name will need to share the same 'Media ID' of the source video but no additional suffix is needed before the file extension
          • Example: The_Martian.jpg
        • Your video thumbnails will never be explicitly listed within the bulk ingestion .csv but they do need to be located within the same S3 location as the video it is paired with.
      • If you would like to use a custom thumbnail for any category or collection you will create:
        • The file name will need to match the 'Media ID' of the category or collection you list within the bulk ingestion .csv
          • Example: Let's say you have a new series collection listed within your .csv with a 'Media ID' as 'Game_of_Thrones'. Your custom thumbnail file for this series collection will be listed within your S3 location as 'Game_of_Thrones.jpg'
    • Text-tracks (Subtitles/Captions)
      • The file name will need to share the same Media ID of the source video and must contain the two-character country ISO language code before the file extension.
        • Example: The_Martian-en.vtt  / The_Martian-sp.srt
      • The files must be either .srt or .vtt format
      • Text-tracks will never be explicitly listed within the bulk ingestion .csv but they do need to be located within the same S3 location as the video it is paired with.
  2. Content Types
    • Each 'Content Type' that you define will have an associated 'Media ID'. This ‘Media ID’ value is critical in associating content to specific collections and needs to match our file naming convention exactly.
    • Content Type Explanations:
      • Category
        • A high-level grouping of individual videos and/or collections
        • The Content Type ‘Category’ will have a ‘Media ID’ value that will never be associated to a specific source-file within your S3 location. You can have the 'Media ID' be whatever value you'd like as long as it's a value that you haven't used yet!
      • Movie
        • A type of collection that refers to a stand-alone release of a featured film, short film, documentary, or educational title. 
        • The Content Type 'Movie' will have a 'Media ID' that needs to match a corresponding video file within your S3 location
          • A movie collection can also optionally have supporting videos, which would utilize the Content Type ‘Video’. These supporting videos will also need to be available within your S3 location.
      • Playlist
        • A type of collection that will feature videos in a pre-defined sequenced
        • The Content Type 'Playlist' will have a ‘Media ID’ value that will never be associated to a specific source-file within your S3 location. You can have the 'Media ID' be whatever value you'd like as long as it's a value that you haven't used yet!
      • Series
        • A type of collection that refers to a high-level representation of a show. An example of this is the show 'Game of Thrones'
        • The Content Type ‘Series’ will have a ‘Media ID’ value that will never be associated to a specific source-file within your S3 location. You can have the 'Media ID' be whatever you'd like as long as it's a value that you haven't used yet!
      • Season
        • A collection of individual episodes that would be listed under an associated ‘Series’. An example of this would be ‘Season 1’ or ‘Season 2’
        • The Content Type ‘Season’ will have a ‘Media ID’ value that will never be associated to a specific source-file within your S3 location. You can have the 'Media ID' be whatever you'd like as long as it's a value that you haven't used yet!
        • Associating your 'Season' to a 'Series' will require you to input a corresponding value in the 'Season ID' (Column E) and 'Sequence Number' column (Column I)
          • If you plan on delivering an additional batch of content after the first ingestion has completed, an existing ‘Series’ does not need to be re-listed to add a new associated ‘Season’. Simply including the relevant Series ID value defined in the original .CSV spreadsheet delivery will connect this ‘Season’
      • Episode
        • The individual video source-file that is sequenced within a ‘Season’ and, ultimately, a part of a ‘Series’
        • The Content Type 'Episode' will have a 'Media ID' that needs to match a corresponding video file within your S3 location.
        • Associating your 'Episode' to a 'Season' and a 'Series' will require you to input a corresponding value in the 'Series ID' (Column D), 'Season ID' (Column E) and 'Sequence Number' column (Column I)
          • If you plan on delivering an additional batch of content after the first ingestion has completed, an existing ‘Series’ and 'Season' does not need to be re-listed to add a new associated ‘Episode’. Simply including the relevant Series ID and Season ID value defined in the original .CSV spreadsheet delivery will connect your videos appropriately
      • Video
        • Individual videos that may not have an association to a specific category or affiliated collection and would need to be manually organized within your CMS; OR
        • Source-files that would be considered supporting videos for the Content Type ‘Movie’; OR
        • Source-files that would be associated to the Content Type 'Playlist'. 
        • Any additional custom metadata and advertising key/values can be added as columns to the spreadsheet and named accordingly (replacing “[KEY]” with a custom key name):

3. Custom Metadata

  • Though our .csv provides multiple columns for you to include metadata, you have the ability to insert custom values. Any additional custom metadata and advertising key/values can be added as columns (starting with Column AF) to the spreadsheet and named accordingly (replacing “[KEY]” with a custom key name):
    • Metadata_Array: [KEY]
      • For lists of values, which must be separated by pipe symbols (“|”). E.g. “dog|cat”
    • Metadata_Integer: [KEY]
      • For integer values, e.g. 2007
    • Metadata_String: [KEY]
      • For any string values, e.g. “example