


{"id":11087,"date":"2017-09-09T00:54:11","date_gmt":"2017-09-09T00:54:11","guid":{"rendered":"https:\/\/expressplay.local\/?page_id=11087"},"modified":"2021-08-02T11:53:41","modified_gmt":"2021-08-02T18:53:41","slug":"getting-started","status":"publish","type":"page","link":"https:\/\/www.expressplay.com\/ko\/developer\/getting-started\/","title":{"rendered":"Tutorial: Getting Started with ExpressPlay"},"content":{"rendered":"<style type=\"text\/css\">\n<p>h2,h3,hr {<br \/>\n    margin: 20px 0;<br \/>\n}<\/p>\n<p>code {<br \/>\n    word-break: break-all;<br \/>\n    white-space: pre-wrap;<br \/>\n    font-size: 14px;<br \/>\n    color: #555;<br \/>\n    margin: 20px 0;<br \/>\n}<\/p>\n<p>h4 {<br \/>\n    font-size: 20px;<br \/>\n    margin: 10px 0;<br \/>\n}<br \/>\n<\/style>\n<div style=\"border: 1px solid #ddd; padding: 20px; margin-bottom: 20px;\">\n<div>\n<h3 style=\"margin-top: 5px;\"><span style=\"font-weight: 600;\">NOTE:<\/span> We\u2019ve updated our service. <a class=\"link-ar\" style=\"color: #1b589e;\" href=\"\/ko\/developer\/portal-update\/\">\ub354 \uc54c\uc544\ubcf4\uae30<\/a><\/h3>\n<p>If we\u2019ve <strong>not yet<\/strong> migrated you to the new service, <a class=\"link-ar\" style=\"color: #1b589e;\" href=\"\/ko\/developer\/getting-started-legacy\/\">click here to see the <strong>Legacy<\/strong> Getting Started with ExpressPlay Tutorial<\/a><\/p>\n<\/div>\n<\/div>\n<div style=\"text-align: center;\">\n<h2 style=\"margin-bottom: 40px;\">Getting Started with ExpressPlay<\/h2>\n<h4>These tutorials take you through the step-by-step process on how to package the content and to use the ExpressPlay Service for streaming and download use cases.<\/h4>\n<hr style=\"margin: 30px 0 40px 0;\" \/>\n<\/div>\n<div class=\"flex flex-wrap -mx-6 mb-12\">\n<div class=\"w-full lg:w-6\/12 px-6\">\n<div class=\"bg-grey-100 p-8\">\n<h4 style=\"margin-bottom: 10px; font-weight: 400; font-size: 20px;\">Requirements<\/h4>\n<ul class=\"tutorial_container\">\n<li>An MP4 file e.g. big_buck_bunny.mp4<\/li>\n<li>Download and install the Bento4 tools (available from <a href=\"http:\/\/www.bento4.com\/\" target=\"_blank\" rel=\"noopener noreferrer nofollow\">bento4.com<\/a>)<\/li>\n<li>An HTTP server running on your computer<\/li>\n<li>An Android or IOS device connected to the same WiFi and subnet of your HTTP Server e.g. your mobile device can reach your HTTP Server<\/li>\n<li>Download the ExpressPlayer application for either iOS or Android<\/li>\n<li>An ExpressPlay account that can be obtained at <a href=\"https:\/\/portal.expressplay.com\" target=\"_blank\" rel=\"noopener noreferrer nofollow\">https:\/\/portal.expressplay.com<\/a><\/li>\n<li>The ExpressPlay client test SDK for either iOS or Android or for both<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<div class=\"w-full lg:w-6\/12 px-6\"><img decoding=\"async\" class=\"mx-auto\" src=\"\/wp-content\/uploads\/2017\/08\/developer-packager.png\" alt=\"\" \/><\/div>\n<\/div>\n<div>\n<div class=\"\">\n<div class=\"bg-grey-100 p-4 mb-12\">\n<h4>Part A: Play DASH content using the ExpressPlayer app with MS3 token<\/h4>\n<\/div>\n<div>\n<div>\n<div>\n<p>STEP 1 &#8211; Fragment your MP4 file<\/p>\n<\/div>\n<ul>\n<li>MPEG DASH format requires the MP4 files to be fragmented<\/li>\n<li>Open the terminal to the folder that has the MP4 file<\/li>\n<li>Use the bento4 tool \u2018mp4fragment,\u2019 type the name of your MP4 file and the name of the output fragmented MP4 file.<\/li>\n<li>For example:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>mp4fragment big_buck_bunny.mp4  big_buck_bunny.mf4<\/code><\/div>\n<\/li>\n<\/ul>\n<hr \/>\n<div class=\"\">\n<p>STEP 2 &#8211; Package and encrypt your content into DASH format<\/p>\n<\/div>\n<ul>\n<li>Always use the Bento4 tool MP4DASH to encrypt and package your content into DASH format.<\/li>\n<li>You can do by typing the following:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>mp4dash --encryption-key=43215678123412341234123412341234:12341234123412341234123412341234 --marlin\u00a0big_buck_bunny.mf4<\/code><\/div>\n<\/li>\n<li>Notice:\n<ul style=\"list-style: none;\">\n<li>&#8211; The command option \u2014encryption-key indicates the content encryption key (CK) to use and it is followed by the key-id (KID) . In this case the value of the KID is equal to: 43215678123412341234123412341234 while the KEY is equal to: 12341234123412341234123412341234<\/li>\n<li>&#8211; The command option \u2014marlin indicates that you want to use Marlin DRM. As MPEG-DASH is a streaming format supported by other DRMs like PlayReady and Widevine, it is possible to use the same MP4DASH tool to signal the use of different DRMs schema within the same stream. For now, we will focus on Marlin.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<div class=\"\">\n<p>STEP 3 &#8211; Copy the whole \u201coutput\u201d folder to your HTTP Server working folder<\/p>\n<\/div>\n<ul>\n<li>Create a folder in your HTTP Web Server working directory.\n<ul style=\"list-style: none;\">\n<li>&#8211; For example on a Mac:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>mkdir \/Library\/WebServer\/Documents\/video\/expressplay<\/code><\/div>\n<\/li>\n<\/ul>\n<\/li>\n<li>Copy the content of the output folder into the newly created folder.\n<ul style=\"list-style: none;\">\n<li>&#8211; For example on a Mac:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>cp -R output\/ \/Library\/WebServer\/Documents\/video\/expressplay<\/code><\/div>\n<\/li>\n<\/ul>\n<\/li>\n<li><strong>Note:<\/strong>\n<ul style=\"list-style: none;\">\n<li>&#8211; The commands above are just an example, your HTTP Server may have a different folder structure and therefore the folder path may differ from the one provided above.<\/li>\n<li>&#8211; You must configure the MIME-TYPE of your HTTP Server to handle the mime-type for the DASH manifest descriptor file or mpd files. The mime-type for the mpd file needs to be set to application\/DASH+xml<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<div class=\"\">\n<div>STEP 4 &#8211; Create an MS3 URL<\/div>\n<\/div>\n<div class=\"\">\n<p>Create an MS3 URL using the <a href=\"\/ko\/developer\/restapi\/#ms3-token-request\">REST API<\/a> using the following parameters:<\/p>\n<ol>\n<li>customerAuthenticator = Your customer authenticator<\/li>\n<li>contentID = This should be a unique identifier, for example one derived from the keyId from step 2 (urn:marlin:kid:43215678123412341234123412341234)<\/li>\n<li>contentKey = This should be the key from step 2 (12341234123412341234123412341234)<\/li>\n<li>contentURL = This should point the location of the MPD on your HTTP Server from Step 3 ( http:\/\/video\/expressplay\/stream.mpd)<\/li>\n<\/ol>\n<p>Below is a sample request that generates an MS3 url and stores it in a file.<\/p>\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>curl -d \"customerAuthenticator=YOUR_CUSTOMER_AUTHENTICATOR_CODE&amp;contentId=urn:marlin:kid:43215678123412341234123412341234&amp;contentKey=12341234123412341234123412341234&amp;ms3Extension=wudo,false,AAAAAA==&amp;contentURL=http:\/\/gittahnc.s3-website-us-west-1.amazonaws.com\/expressPlay\/tutorial1\/output\/stream.mpd\" https:\/\/ms3-gen.test.expressplay.com\/hms\/ms3\/token &gt; ms3_token.txt <\/code><\/div>\n<hr \/>\n<div class=\"mb-6\">\n<div>STEP 5 &#8211; Play Content using the ExpressPlayer App<\/div>\n<\/div>\n<div class=\"flex flex-wrap -mx-6 mb-12\">\n<div class=\"w-full lg:w-3\/12 px-6\">\n<p><img decoding=\"async\" class=\"mydrop\" src=\"\/wp-content\/uploads\/2017\/08\/DASH-streaming5-4.jpg\" \/><\/p>\n<\/div>\n<div class=\"w-full lg:w-8\/12 px-6\">\n<ol style=\"padding-left: 15px; padding-top: 20px;\">\n<li><a href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.intertrust.ExpressPlayer\" target=\"_blank\" rel=\"noopener noreferrer nofollow\">Download the ExpressPlayer App from the Google Play Store<\/a><\/li>\n<li>Open the ExpressPlayer App<\/li>\n<li>Click on \u201cVideo\u201d<\/li>\n<li>Select DASH<\/li>\n<li>Paste the MS3 URL obtained from Step 5<\/li>\n<li>Select MS3<\/li>\n<li>Click \u201cPlay\u201d<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"mb-6\">\n<div class=\"bg-grey-100 p-4 mb-12\">\n<h4>Part B: Play DASH content using your own iOS app, with MS3 token<\/h4>\n<\/div>\n<div>\n<div>\n<div class=\"mb-6\">\n<p>STEP 1 &#8211; Fragment your MP4 file<\/p>\n<\/div>\n<ul>\n<li>MPEG DASH format requires the MP4 files to be fragmented<\/li>\n<li>Open the terminal to the folder that has the MP4 file<\/li>\n<li>Use the bento4 tool \u2018mp4fragment,\u2019 type the name of your MP4 file and the name of the output fragmented MP4 file.<\/li>\n<li>For example:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>mp4fragment big_buck_bunny.mp4  big_buck_bunny.mf4<\/code><\/div>\n<\/li>\n<\/ul>\n<hr \/>\n<div class=\"\">\n<p>STEP 2 &#8211; Package and encrypt your content into DASH format<\/p>\n<\/div>\n<ul>\n<li>Always use the Bento4 tool MP4DASH to encrypt and package your content into DASH format.<\/li>\n<li>You can do by typing the following:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>mp4dash --encryption-key=43215678123412341234123412341234:12341234123412341234123412341234 --marlin\u00a0big_buck_bunny.mf4<\/code><\/div>\n<\/li>\n<li>Notice:\n<ul style=\"list-style: none;\">\n<li>&#8211; The command option \u2014encryption-key indicates the content encryption key (CK) to use and it is followed by the key-id (KID) . In this case the value of the KID is equal to: 43215678123412341234123412341234 while the KEY is equal to: 12341234123412341234123412341234<\/li>\n<li>&#8211; The command option \u2014marlin indicates that you want to use Marlin DRM. As MPEG-DASH is a streaming format supported by other DRMs like PlayReady and Widevine, it is possible to use the same MP4DASH tool to signal the use of different DRMs schema within the same stream. For now, we will focus on Marlin.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<div class=\"\">\n<p>STEP 3 &#8211; Copy the whole \u201coutput\u201d folder to your HTTP Server working folder<\/p>\n<\/div>\n<ul>\n<li>Create a folder in your HTTP Web Server working directory.\n<ul style=\"list-style: none;\">\n<li>&#8211; For example on a Mac:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>mkdir \/Library\/WebServer\/Documents\/video\/expressplay<\/code><\/div>\n<\/li>\n<\/ul>\n<\/li>\n<li>Copy the content of the output folder into the newly created folder.\n<ul style=\"list-style: none;\">\n<li>&#8211; For example on a Mac:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>cp -R output\/ \/Library\/WebServer\/Documents\/video\/expressplay<\/code><\/div>\n<\/li>\n<\/ul>\n<\/li>\n<li><strong>Note:<\/strong>\n<ul style=\"list-style: none;\">\n<li>&#8211; The commands above are just an example, your HTTP Server may have a different folder structure and therefore the folder path may differ from the one provided above.<\/li>\n<li>&#8211; You must configure the MIME-TYPE of your HTTP Server to handle the mime-type for the DASH manifest descriptor file or mpd files. The mime-type for the mpd file needs to be set to application\/DASH+xml<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<div class=\"\">\n<div>STEP 4 &#8211; Create an MS3 URL<\/div>\n<\/div>\n<div class=\"\">\n<p>Create an MS3 URL using the <a href=\"\/ko\/developer\/restapi\/#ms3-token-request\">REST API<\/a> using the following parameters:<\/p>\n<ol>\n<li>customerAuthenticator = Your customer authenticator<\/li>\n<li>contentID = This should be a unique identifier, for example one derived from the keyId from step 2 (urn:marlin:kid:43215678123412341234123412341234)<\/li>\n<li>contentKey = This should be the key from step 2 (12341234123412341234123412341234)<\/li>\n<li>contentURL = This should point the location of the MPD on your HTTP Server from Step 3 ( http:\/\/video\/expressplay\/stream.mpd)<\/li>\n<\/ol>\n<p>Below is a sample request that generates an MS3 url and stores it in a file.<\/p>\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>curl -d \"customerAuthenticator=YOUR_CUSTOMER_AUTHENTICATOR_CODE&amp;contentId=urn:marlin:kid:43215678123412341234123412341234&amp;contentKey=12341234123412341234123412341234&amp;ms3Extension=wudo,false,AAAAAA==&amp;contentURL=http:\/\/gittahnc.s3-website-us-west-1.amazonaws.com\/expressPlay\/tutorial1\/output\/stream.mpd\" https:\/\/ms3-gen.test.expressplay.com\/hms\/ms3\/token &gt; ms3_token.txt <\/code><\/div>\n<\/div>\n<hr \/>\n<div class=\"mb-6\">\n<p>STEP 5 &#8211; SDK Download<\/p>\n<\/div>\n<div class=\"flex flex-wrap -mx-6\">\n<div class=\"lg:w-5\/12 px-6\"><img decoding=\"async\" class=\"mydrop\" src=\"\/wp-content\/uploads\/2019\/10\/downloads-tab.jpg\" \/><\/div>\n<div class=\"lg:w-7\/12 px-6\">\n<ol style=\"padding-left: 15px; padding-top: 20px;\">\n<li>Log in to your ExpressPlay account<\/li>\n<li>Select &#8220;DRM Services&#8221;<\/li>\n<li>Download the <strong>test<\/strong> iOS SDK<\/li>\n<\/ol>\n<p><strong>Note:<\/strong> ExpressPlay provides test and production SDKs and associated cloud service. Development and testing should be done using the test SDK while production SDKs must be used with a commercial service<\/p>\n<\/div>\n<\/div>\n<hr \/>\n<div class=\"mb-12\">\n<p>STEP 6 &#8211; iOS Sample<\/p>\n<\/div>\n<div class=\"flex flex-wrap -mx-6\">\n<div class=\"lg:w-5\/12 px-6\"><img decoding=\"async\" class=\"mydrop\" src=\"\/wp-content\/uploads\/2017\/08\/DASH-streamingB2.jpg\" \/><\/div>\n<div class=\"lg:w-7\/12 px-6\">\n<ol style=\"padding-left: 15px; padding-top: 20px;\">\n<li>Open the ExpressPlayExample project in Xcode<\/li>\n<li>Open the ViewController.m file within the project<\/li>\n<li>Replace the value of the MS3URL variable with the one obtained in step 5<\/li>\n<li>Set the media stream type to WSB_PPMST_DASH<\/li>\n<li>Run your code (you can choose to run it on an emulator or an iOS device)<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div>\n<div class=\"bg-grey-100 p-4 mb-12\">\n<h4>Part C: How to package and to play your own protected DASH content on a bser with Widevine<\/h4>\n<\/div>\n<div>\n<div class=\"flex flex wrap -mx-6\">\n<div class=\"w-full lg:w-6\/12\">\n<h4>Overview<\/h4>\n<ul>\n<li>This tutorial will cover the following:\n<ul>\n<li>To package of a video into DASH format with PlayReady, Widevine and Marlin signaling.<\/li>\n<li>To request a PlayReady and a Widevine token via command line<\/li>\n<li>To play the content from a web bser<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"w-full lg:w-6\/12\">\n<h4>Assumptions<\/h4>\n<ul>\n<li>This tutorial follows assumes the following\n<ul>\n<li>You have a fragmented MP4 file e.g. video_mango.mp4<\/li>\n<li>You have downloaded and installed the Bento4 tools (available from <a href=\"https:\/\/www.bento4.com\/\" target=\"_blank\" rel=\"noopener noreferrer nofollow\">bento4.com<\/a>)<\/li>\n<li>You have an ExpressPlay account that can be obtained from <a href=\"https:\/\/portal.expressplay.com\" rel=\"nofollow noopener\" target=\"_blank\">https:\/\/portal.expressplay.com<\/a><\/li>\n<li>You have an Amazon AWS S3 account (<a href=\"https:\/\/aws.amazon.com\/s3\/\" target=\"_blank\" rel=\"noopener noreferrer nofollow\">https:\/\/aws.amazon.com\/s3\/<\/a>)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<hr \/>\n<div class=\"\">\n<p>STEP 1 &#8211; Fragment your MP4 file<\/p>\n<\/div>\n<ul>\n<li>MPEG DASH format requires the MP4 files to be fragmented<\/li>\n<li>Open the terminal to the folder that has the MP4 file<\/li>\n<li>Use the bento4 tool \u2018mp4fragment,\u2019 type the name of your MP4 file and the name of the output fragmented MP4 file.<\/li>\n<li>For example:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>mp4fragment video_mango.mp4  video_mango.mf4<\/code><\/div>\n<\/li>\n<\/ul>\n<hr \/>\n<div class=\"\">\n<p>STEP 2 &#8211; Create the DASH content<\/p>\n<\/div>\n<ul>\n<li>Open the terminal to the folder where you have you MP4 file<\/li>\n<li>Use the bento4 tool mp4dash and type the following:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>mp4dash --encryption-key=12341234123412341234123412341234:43215678123412341234123412341234 --marlin --widevine --widevine-header=provider:intertrust#content_id:2a --playready --playready-header=https:\/\/pr.service.expressplay.com\/playready\/RightsManager.asmx video_mango.mf4<\/code><\/div>\n<\/li>\n<li>We do suggest to study documentation of each of the bento4 tool<\/li>\n<\/ul>\n<hr \/>\n<div class=\"\">\n<p>STEP 3 &#8211; Copy the \u201coutput\u201d folder to your S3 bucket<\/p>\n<\/div>\n<div class=\"\">\n<p><img decoding=\"async\" class=\"mydrop\" src=\"\/wp-content\/uploads\/2017\/08\/step2.jpg\" \/><\/p>\n<ul>\n<li>Copy the \u201coutput\u201d folder obtained from the previous step into a S3 bucket<\/li>\n<li>Ensure that the mime-type of the .mpd file is set to: <strong>application\/dash+xml<\/strong><\/li>\n<li>Ensure that all the files within the buckets output folder are <strong>\u201cmade public\u201d<\/strong><\/li>\n<\/ul>\n<\/div>\n<hr \/>\n<div class=\"\">\n<p>STEP 4 &#8211; Setting CORS Configurations<\/p>\n<\/div>\n<div class=\"\">\n<p><img decoding=\"async\" class=\"mydrop\" src=\"\/wp-content\/uploads\/2017\/08\/step3.jpg\" \/><\/p>\n<\/div>\n<ul>\n<li>Set the CORS of your S3 bucket as following:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code><br \/>\n&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;<br \/>\n&lt;CORSConfiguration xmlns=\"http:\/\/s3.amazonaws.com\/doc\/2006-03-01\/\"&gt;<br \/>\n&lt;CORSRule&gt;<br \/>\n&lt;AllowedOrigin&gt;*&lt;\/AllowedOrigin&gt;<br \/>\n&lt;AllowedMethod&gt;GET&lt;\/AllowedMethod&gt;<br \/>\n&lt;AllowedMethod&gt;POST&lt;\/AllowedMethod&gt;<br \/>\n&lt;MaxAgeSeconds&gt;3500&lt;\/MaxAgeSeconds&gt;<br \/>\n&lt;AllowedHeader&gt;*&lt;\/AllowedHeader&gt;<br \/>\n&lt;\/CORSRule&gt;<br \/>\n&lt;\/CORSConfiguration&gt;<br \/>\n<\/code><\/div>\n<\/li>\n<\/ul>\n<hr \/>\n<div class=\"\">\n<p>STEP 5 &#8211; Request content licenses<\/p>\n<\/div>\n<ul>\n<li>Using the command line:<\/li>\n<li>Widevine token request:\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>curl -k 'https:\/\/wv-gen.service.expressplay.com\/hms\/wv\/token?customerAuthenticator=YOUR_CUSTOMER_AUTHENTICATOR_CODE&amp;errorFormat=json&amp;kid=12341234123412341234123412341234&amp;contentKey=43215678123412341234123412341234&amp;securityLevel=1&amp;hdcpOutputControl=0'<\/code><\/div>\n<\/li>\n<li>PlayReady token request:<\/li>\n<li>\n<div class=\"bg-grey-100 p-8 mb-12 mt-12\"><code>curl -k 'https:\/\/pr-gen.service.expressplay.com\/hms\/pr\/token?customerAuthenticator=YOUR_CUSTOMER_AUTHENTICATOR_CODE&amp;errorFormat=json&amp;kid=12341234123412341234123412341234&amp;contentKey=43215678123412341234123412341234&amp;rightsType=BuyToOwn&amp;analogVideoOPL=100&amp;compressedDigitalAudioOPL=100&amp;compressedDigitalVideoOPL=100&amp;uncompressedDigitalAudioOPL=100&amp;uncompressedDigitalVideoOPL=100'<\/code><\/div>\n<\/li>\n<li>Please refer to the ExpressPlay Service API documentation for: <a href=\"\/ko\/developer\/restapi\/\">https:\/\/www.expressplay.com\/developer\/restapi\/<\/a><\/li>\n<\/ul>\n<hr \/>\n<div class=\"\">\n<div>STEP 6 &#8211; Playback on Chrome \/ Shakaplayer and Widevine<\/div>\n<\/div>\n<div class=\"\">\n<ul style=\"margin-bottom: 20px;\">\n<li>Using the Shaka Player player from: <a href=\"http:\/\/shaka-player-demo.appspot.com\/demo\/\" target=\"_blank\" rel=\"noopener noreferrer nofollow\">http:\/\/shaka-player-demo.appspot.com\/demo\/<\/a><\/li>\n<li>Select \u201ccustom asset\u201d<\/li>\n<li>Copy the URL of the .mpd file to the first input filed<\/li>\n<li>Copy the License Acquisition URL including the token, from the Widevine token request, to second input field.<\/li>\n<\/ul>\n<p><img decoding=\"async\" class=\"mydrop\" src=\"\/wp-content\/uploads\/2017\/08\/step5.jpg\" \/><\/p>\n<\/div>\n<hr \/>\n<div>\n<div>STEP 6<\/div>\n<p>Playback on Safari \/ SL-Playready plug-in<\/p>\n<\/div>\n<div>\n<p><img decoding=\"async\" class=\"mydrop\" src=\"\/wp-content\/uploads\/2017\/08\/DASH-streamingE-6.jpg\" \/><\/p>\n<ul>\n<li>Using the test-app player from: <a href=\"\/ko\/developer\/test-apps\/\">https:\/\/www.expressplay.com\/developer\/test-apps\/<\/a><\/li>\n<li>Copy the URL of the .mpd file to the first input filed<\/li>\n<li>Copy the License Custom Data, from the PlayReady token request, to second input field.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>NOTE: We\u2019ve updated our service. Learn more If we\u2019ve not yet migrated you to the new service, click here to see the Legacy Getting Started with ExpressPlay Tutorial Getting Started with ExpressPlay These tutorials take you through the step-by-step process on how to package the content and to use the ExpressPlay Service for streaming and [&hellip;]<\/p>\n","protected":false},"author":124,"featured_media":0,"parent":10924,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-expressplay-developer.php","meta":{"_acf_changed":false,"footnotes":""},"tax_page_type":[512],"coauthors":[621],"class_list":["post-11087","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.expressplay.com\/ko\/wp-json\/wp\/v2\/pages\/11087","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.expressplay.com\/ko\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.expressplay.com\/ko\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.expressplay.com\/ko\/wp-json\/wp\/v2\/users\/124"}],"replies":[{"embeddable":true,"href":"https:\/\/www.expressplay.com\/ko\/wp-json\/wp\/v2\/comments?post=11087"}],"version-history":[{"count":0,"href":"https:\/\/www.expressplay.com\/ko\/wp-json\/wp\/v2\/pages\/11087\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/www.expressplay.com\/ko\/wp-json\/wp\/v2\/pages\/10924"}],"wp:attachment":[{"href":"https:\/\/www.expressplay.com\/ko\/wp-json\/wp\/v2\/media?parent=11087"}],"wp:term":[{"taxonomy":"tax_page_type","embeddable":true,"href":"https:\/\/www.expressplay.com\/ko\/wp-json\/wp\/v2\/tax_page_type?post=11087"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.expressplay.com\/ko\/wp-json\/wp\/v2\/coauthors?post=11087"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}