diff --git a/assets/youtubeplayersetup.gif b/assets/youtubeplayersetup.gif new file mode 100644 index 000000000..b064dce90 Binary files /dev/null and b/assets/youtubeplayersetup.gif differ diff --git a/workflows/ovp/add_kaltura_sub_accounts/readme.md b/workflows/ovp/add_kaltura_sub_accounts/readme.md new file mode 100644 index 000000000..3f1873a3f --- /dev/null +++ b/workflows/ovp/add_kaltura_sub_accounts/readme.md @@ -0,0 +1,53 @@ + + +# Add Kaltura Sub-Accounts +The best way to ensure your customers privacy, security and control is to separate different business users to individual accounts. That way customers can customize and control their accounts and content libraries without being dependent on other customers settings and workflows. + +## Multi-Account Permission Admin KS +To create sub accounts, your Kaltura parent account should be configured as a parent level multi-account. If you're unsure if you have a parent level multi-account, please contact VPaaS@kaltura.com for further details. + +If you have a parent level multi-account, create a Kaltura Session of type ADMIN ([learn more](https://developer.kaltura.com/workflows/Generate_API_Sessions/Authentication)). + +In the next step we will use the ADMIN KS to call the [Partner service](https://developer.kaltura.com/api-docs/service/partner) to add a new sub-account. + +## Add a new Sub-Account +In this step we will use the [partner.register](https://developer.kaltura.com/api-docs/service/partner/action/register/) action, passing an instance of KalturaPartner with the required basic fields. + +> The KalturaPartner object defines many fields that can be utilized as metadata to manage your many sub-accounts. We encourage you to review the docs ([KalturaPartner](https://developer.kaltura.com/api-docs/General_Objects/Objects/KalturaPartner)) to learn more. + + + +### API Call +```json +{ + "method": "post", + "path": "/service/partner/action/register", + "parameters": [ + { + "name": "body", + "schema": { + "type": "object", + "properties": { + "partner": { + "type": "object", + "properties": { + "adminEmail": {}, + "adminName": {} + } + } + } + } + }, + { + "name": "ks" + }, + { + "name": "clientTag" + } + ] +} +``` \ No newline at end of file diff --git a/workflows/ovp/youtube_ingestion/readme.md b/workflows/ovp/youtube_ingestion/readme.md new file mode 100644 index 000000000..6fa7f5cd0 --- /dev/null +++ b/workflows/ovp/youtube_ingestion/readme.md @@ -0,0 +1,200 @@ + + +# Upload YouTube videos + + +## Add a YouTube Video Entry +This workflow will guide you on how to use the [externalMedia](https://developer.kaltura.com/api-docs/service/externalMedia) service to manage YouTube hosted videos as native Kaltura videos that benefit from the same workflows, experience and analytics available for Kaltura hosted video entries. + +To add a YouTube hosted video as a Kaltura media, you will need the YouTube video ID: +To find your YouTube video ID: + +1. Visit the YouTube video page. +2. Look at the URL of that page, and at the end of it, you should see a URL param `v`. The value of `v` is the ID of your YouTube video. +For example: in this YouTube video; `https://www.youtube.com/watch?v=ioY-Cp58zkY` , the ID is `ioY-Cp58zkY`. + +That ID will be set as the value of the `referenceId` field in Kaltura when creating the `ExternalMediaEntry` object. + +> Important: Make sure that the YouTube video visibility is set to either `Public` or `Unlisted`. +> Private YouTube videos will not play outside YouTube, and as such are not supported as Kaltura external entries. + +In order to get the title and description of the YouTube video, we recommend using the [YouTube Data API](https://developers.google.com/youtube/v3/getting-started). + +### API Call +```json +{ + "method": "post", + "path": "/service/externalmedia_externalmedia/action/add", + "parameters": [ + { + "name": "body", + "schema": { + "type": "object", + "properties": { + "entry": { + "type": "object", + "properties": { + "mediaType": { + "name": "body.entry.mediaType", + "consoleDefault": 1 + }, + "externalSourceType": { + "name": "body.entry.externalSourceType", + "consoleDefault": "YouTube" + }, + "referenceId": { + "name": "body.entry.referenceId", + "consoleDefault": "ioY-Cp58zkY" + }, + "name": { + "name": "body.entry.name", + "consoleDefault": "Try Not To Laugh or Grin STER WURS (BEST OF) - Star Wars parody" + }, + "description": { + "name": "body.entry.description", + "consoleDefault": "Star Wars parody video" + } + }, + "name": "body.entry" + } + } + }, + "consoleDefault": "{}" + } + ] +} +``` + +## Create a Thumbnail for the Entry +First, create a ThumbAsset that will hold the thumbnail image for the video in Kaltura. In the next step we will import the Thumbnail from YouTube to that ThumbAsset object. + +### API Call +```json +{ + "method": "post", + "path": "/service/thumbasset/action/add", + "parameters": [ + { + "name": "body", + "schema": { + "type": "object", + "properties": { + "entryId": { + "dynamicValue": { + "fromStep": 0, + "value": "id" + } + }, + "thumbAsset": { + "type": "object", + "properties": { + "objectType": { + "consoleDefault": "KalturaThumbAsset" + } + } + } + } + }, + "consoleDefault": "{}" + } + ] +} +``` + +## Import the YouTube Thumbnail +To import the YouTube thumbnail, use the following URL structure: +`http://img.youtube.com/vi/[VIDEO_ID]/maxresdefault.jpg` +Replace [VIDEO_ID] with the YouTube ID of the video you'd like to use. + +For example: in this YouTube video; `https://www.youtube.com/watch?v=ioY-Cp58zkY` , the ID is `ioY-Cp58zkY`. +And the Thumbnail URL is: `http://img.youtube.com/vi/ioY-Cp58zkY/maxresdefault.jpg` . + +### API Call +```json +{ + "method": "post", + "path": "/service/thumbasset/action/setContent", + "parameters": [ + { + "name": "body", + "schema": { + "type": "object", + "properties": { + "id": { + "dynamicValue": { + "fromStep": 1, + "value": "id" + } + }, + "contentResource": { + "type": "object", + "properties": { + "objectType": { + "consoleDefault": "KalturaUrlResource" + }, + "url": { + "dynamicValue": null, + "consoleDefault": "http://img.youtube.com/vi/ioY-Cp58zkY/maxresdefault.jpg" + } + } + } + } + }, + "consoleDefault": "{}" + } + ] +} +``` + +## Set the thumbnail as default +In this step we will set the thumbnail imported from YouTube as the default thumbnail of the entry. +After this step, when embedding the Kaltura player with that entry ID, the player will present this thumbnail before the user clicks the play button. + +### API Call +```json +{ + "method": "post", + "path": "/service/thumbasset/action/setAsDefault", + "parameters": [ + { + "name": "body", + "schema": { + "type": "object", + "properties": { + "thumbAssetId": { + "dynamicValue": { + "fromStep": 2, + "value": "id" + } + } + } + }, + "consoleDefault": "{}" + } + ] +} +``` + +## Configure a YouTube enabled Player +To create a player that has YouTube chromeless player enabled, follow these steps: + +1. Visit the [Player Studio](https://kmc.kaltura.com/index.php/kmcng/studio/v3). +2. Create a new player (or edit an existing one). +3. Click on "Playback Options" in the side bar (the round play button icon). +4. Enable the "Support Youtube playback" check mark. +5. Save the player. + +## Finish +Note: If you're using the PlayKit Player (aka Player v7), make sure to enable the YouTube plugin in the KMC > TV Platform Studio. \ No newline at end of file