• Skip to content
  • Skip to primary sidebar
  • Skip to footer

Foliovision

Main navigation

  • Weblog
    • FV Player
    • WordPress
    • Video of the Week
    • Case Studies
    • Business
  • About
    • Testimonials
    • Meet the Team
    • We Support
    • Careers
    • Contact
    • Pricing
  • Products
  • Support
    • FV Player Docs
    • Pro Support
  • Login
  • Basket is empty

How to setup encrypted HLS stream with Amazon Elastic Transcoder

[Solved]

Foliovision › Forums › FV Player › How to … › How to setup encrypted HLS stream with Amazon Elastic Transcoder

  • Ahmed 8 years, 2 months ago

    hello

    does this mean, that everytime i need to upload a video i have to go from step 7 each time?

    is there any easier way?

Viewing 52 replies - 1 through 52 (of 52 total)
  • Eduard 8 years ago
    Avatar photo

    Hi Ahmed,

    Unfortunately yes, you have to create each HLS stream manually, since it has to convert each video to m3u8 individually. There is no easy way when working with AWS.

    Thanks,
    Eduard

    Eduard 8 years ago
    Avatar photo

    Hi Ahmed,

    I apologize – there is a way to create a script for converting larger batches of videos, however we have no experience with it yet. I have found this article that might be helpful to you – How To Convert Videos With Elastic Transcoder.

    Thanks,
    Eduard

    Ahmed 8 years ago

    hello thanks for reply, looks like Azure media service is much easier, I sent email to the support about that, are you going to support it?

    Eduard 8 years ago
    Avatar photo

    Hi Ahmed,

    The Azure media service can be used for hosting a simple MP4 and HLS stream already (you can see it in this demo. We will discuss further integration in our team.

    Thanks,
    Eduard

    Ahmed 8 years ago

    I found the Azure media service expensive because it is necessary to have a running endpoint.

    -to make it easy on you what I need is:

    *prevent the user from downloading the videos/ or sharing its link

    what is the best for that?

    thanks in advance.

    Eduard 8 years ago
    Avatar photo

    Hi Ahmed,

    Yes, I did some testing over the last couple of days and it seems more complicated than I first thought + it’s probably more expensive than AWS. We will probably integrate it some time in the future anyway.

    If you want a relatively cheap hosting with content protection, you can use KeyCDN. You can serve encrypted videos (as you can see in this demo) that will not be accessible without the proper key even when downloaded. I haven’t tested it with HLS yet, though. Here is a guide on how to start with KeyCDN, how to create the distribution and how to use it with FV Player – Using KeyCDN With FV Player.

    Thanks,
    Eduard

    Ahmed 8 years ago

    KeyCDN has a min $50 per year, AWS don’t

    -what about embedding URLs, is it anyway to prevent users from embedding the url, in other websites.

    Eduard 8 years ago
    Avatar photo

    Hi Ahmed,

    You’ve got a point, AWS doesn’t have a minimum payment.

    I apologize, because I might have misled you in my previous message – the videos from KeyCDN are not ‘encrypted’. They are protected from downloading and hotlinking by the secure token, but not encrypted per se. That means no one without the unique access key should be able to use the video link for downloading or using the link on their website.

    Thanks,
    Eduard

    aliajmat 8 years ago

    its just a demo to test, no need to reply back. thank you. :)

    Ahmed 8 years ago

    Update:

    I managed to solve the isssue but have some video warnings, although I inserted the CORS file inside the s3 folder

    please advise solving these video warnings

    Ahmed 8 years ago

    I edited the cors using this guide: https://foliovision.com/player/video-hosting/hls

    -However, I need to restrict access to the CloudFront, as if someone enters click on the CloudFront domain he gets all the files

    shall the CloudFront content protection is compatible with HLS encryption? or it is not necessary anyway?

    • This reply was modified 8 years ago by Eduard.
    Ahmed 8 years ago

    also do I need to enable this:
    Settings -> FV Player -> Setup tab -> Integrations/Compatibility and check the box Enable HLS.js.

    -if so u need to include that into the plugin guide

    Ahmed 8 years ago

    also DRM Text (beta), dosn’t show on the video

    Ahmed 8 years ago

    More over can we adjust the sizing of the logo overlay.

    sorry, for posting too many, Im just excited that i made it work

    Ahmed 8 years ago

    hello again

    I have a very hard time to setup the HLS via amazon and got it done well, but cant display it on my website using ur plugin, every time I enter the encryption code and press the decrypt buton I got nothing

    • This reply was modified 8 years ago by Eduard.
    • This reply was modified 8 years ago by Eduard.
    Eduard 8 years ago
    Avatar photo

    Hello Ahmed,

    I’ve edited your first post, so the access credentials don’t show up here.

    As for your questions:

    1) The CloudFront hotlinking protection is not necessary, since the stream is only accessible with the unique decryption key

    2) It actually is in the guide, check this part

    3) DRM Text shouldn’t be visible. Here is a guide that should explain it – Protecting Videos With DRM Text

    4) Adjusting the logo size is currently possible only outside FV Player – meanin you have to edit the original image and then upload the resized version again

    Thanks,
    Eduard

    Ahmed 8 years ago

    hello, I didn’t know that this forum is public, please remove the domains above too.

    and also can u advise why I’m seeing this warning message:

    We recommend that you also provide your M3U8 video in MP4 or WEBM format. HTTP Live Streaming (m3u8) is only supported by Apple iOS devices (iPhone, iPad…) and thanks to the new FV Flowplayer core also on all computers with Flash, so your coverage is not that bad.

    Analysis of https://DOMAIN.COM/5_bunny.m3u8

    This looks like a valid HLS stream.
    Video:

    —-
    For DRM text, can it be moving to the four corners to make it hard for the end user to edit it or mask it using video editing software?

    Eduard 8 years ago
    Avatar photo

    Hi Ahmed,

    I edited your previous posts for you.

    That message is a bit outdated and we are planning to remove it, since you don’t need MP4 alternative on desktop thanks to HLS.js.

    Interesting idea about the DRM Text. Do you mean that it would kind of rotate, appearing in one corner at a time?

    Thanks,
    Eduard

    Ahmed 8 years ago

    OK cool thanks alot.

    -yes I mean the text rotates and even change in color a little to prevent the color masking in video editing software

    -for the decryption key in the HLS videos, looks like each video encoded on aws have its own key, why in the guide on the website, it states that “you only need to do that once?”
    in this guide
    https://foliovision.com/player/securing-your-video/hls-stream

    -for the encoding presets on aws, what shall I do to make it work on mobile/desktop stream, and different bandwidth?

    I’m currently using 600k, 1M, 2M

    is there any way to make the folio player auto switch according to the enduser internet speed? what shall I do to enable that? my master list already points to the 600k, 1M, 2M files

    Eduard 8 years ago
    Avatar photo

    Hi Ahmed,

    1) I’ll discuss it with the rest of the team. Thanks for the idea.

    2) The Access Key stored in the FV Player Pro settings is set only once, but the Encryption Key is different for each transcoding job, therefore for each HLS stream

    3) The point of HLS is that it will automatically switch to optimal quality based on the viewer’s bandwidth and the device he’s using, so you don’t have to worry about that. The pre-sets you are using are ok, but you don’t have to limit yourself to them and create your own. But more presets means transcoding and storing more data, so keep that in mind. I think that having about 4-5 qualities should cover all possible devices, maybe except 4k and such.

    Thanks,
    Eduard

    Eduard 8 years ago
    Avatar photo

    Hi Ahmed,

    We have just released new version of FV Player Pro (0.8.17), that improves the DRM Text by adding the rotation of the text box position and also adds the site name to the text.

    Thanks,
    Eduard

    Eduard 8 years ago
    Avatar photo

    Hi Ahmed,

    Sorry, I forgot to add that it’s currently available only in the Beta mode.

    Thanks,
    Eduard

    Ahmed 8 years ago

    that is cool, thanks :)

    -since folio are great in HLS,
    what is the common practice for HLS formats (I know I discussed this b4)
    but really need to know what is the best for mobile and desktop play

    -also, the license acquisition url in amazon can be 2 urls?

    Eduard 8 years ago
    Avatar photo

    Hi Ahmed,

    We usually use the 600k, 1M, 2M settings, but if you need more variants, you could use 400k, 800k, 1200k and 2200k. It’s easy to create your own profiles, so you can use whatever you want. Here is a https://developer.apple.com/library/content/technotes/tn2224/Art/tn2224_settings_May_2016.jpg made by Apple, that might help you.

    As for the license acquisition URL – no, the encrypted stream is created for a specific page only.

    Thanks,
    Eduard

    Bradley S. 8 years ago

    I’ve followed all of these steps… and it’s not working. Spent hours configuring everything as accurately as I can to the guides here, but I think it’s the final step that’s going wrong. The video player says “Admin: Video Issues” and reports as follows (note: I’ve replaced my domain with a placeholder, in case this comment is seen by others):

    ——-

    Mime Type: application/x-mpegURL
    Encryption: Your HLS stream is properly encrypted. The decryption key is loaded from https://(mydomain).com/?fv_player_hls_key=module1-lesson1.
    Video: Due to the encryption we can’t provide any further details about the video.

    CORS headers missing – won’t play in desktop browsers without flash player

    ERROR: crossdomain.xml not found – won’t play in desktop browsers

    ——

    I followed the steps to create a crossdomain.xml and put it in the main bucket, so I’m not sure what’s wrong. I’ve got to admit, I’m kind of following these guides blindly. I’m following the steps, but I don’t 100% understand them…

    What do I do?

    Eduard 8 years ago
    Avatar photo

    Hi Bradley,

    We have been discussing this in the support ticket you opened, but you can share how you have managed to fix the issue if you have some spare time.

    Thanks,
    Eduard

    Peter 6 years ago

    What is meant by ‘Elastic_Transcoder_Default_Role’?
    Is that a user?

    Martin 6 years ago

    Hello Peter,

    yes and it should be already present if you start using Elastic Transcoder. Make sure that you are in the correct region when looking at the IAM screen. It has to be a region where you Elastic Transcoder pipeline exists. Just follow that part of our guide step by step: https://foliovision.com/player/securing-your-video/hls-stream#creating-encryption-key

    Thanks,
    Martin

    Peter 6 years ago

    Hi, in point 14 the tab Security Credentials is not there. The other fields Groups, Permissions, Access Advisor are there. What did I do wrong?
    How can you make visible that field in point 13?
    Thanks
    Peter

    Peter 6 years ago

    I found it thanks.

    Peter 6 years ago

    Hi,
    in step 13 when I hover over the lock, i only see the License Acquisition URL. I do not see ‘Encrytion Key’, ‘Encrytion Key MD5’ and ‘Encryption Initialization Vector’. Did I do something wrong?
    Thanks
    Peter

    Martin 6 years ago

    Hello Peter,

    I would recommend you to check step 9.

    Thanks,
    Martin

    Hongxia 6 years ago

    This is Vincent Represent Hongxia to ask this question.

    About License Acquisition URL Part, do we have to add /{Master Playlist Name}? if our Master Playlist Name is index? Are they same about below 2 License Acquisition URL.

    https://foliovision.com/?fv_player_hls_key=swan_lake_reloaded/index
    https://foliovision.com/?fv_player_hls_key=swan_lake_reloaded

    I didn’t add the “/index” and it seems work on my site, but just want to confirm if it will bring any issues? As we have transcode many videos without “/index”

    Thank you,

    Vincent Wang

    Martin 6 years ago

    Hello Vincent,

    as long as it’s unique it will work. But it’s best to include the master playlist name. In case of issues you can just edit your m3u8 files in the S3 bucket, no need to reencode the videos.

    Thanks,
    Martin

    Peter 6 years ago

    Hi,
    can you also write a similar workflow that is using Amazon Media Convert instead of Elastic Transcoder?
    Thanks
    Peter

    Martin 6 years ago

    Hello Peter,

    we did check Amazon Media Convert before. I was really looking forward to it as Elastic Transcoder is not the best interface I have seen. Unfortunately Media Convert is not much better.

    But I’m sure it has other advantages. It seems it’s easier to import presets so perhaps we should be offering that.

    Thanks,
    Martin

    Alec Kinnear 6 years ago
    Avatar photo

    This is a great suggestion, Peter. We will support Amazon Media Convert if possible. It may take us a couple of months to get there though as we are still working through major improvements via the database and WordPress 5 changes as well as a huge custom project.

    Md. Alamin 6 years ago

    Hello, how do I get data key??
    From where I can get it?

    Martin 6 years ago

    Hello Md. Alamin,

    please let us know which data key you mean.

    Thanks,
    Martin

    Neil 6 years ago

    Hi
    What cause/s the hlsjs-lite: Network Error message when using encrypted HLSv4 audio files distributed via CloudFront ? I have checked all my settings CORS, Cross Domain files in the S3 bucket, encryption keys, access keys, Whitehead settings and so on and everything seems to be ok. I have carried out an invalidation to clear the CloudFront Cache but the message continues.
    Can you advise what I should check/adjust next to solve this error.
    Regards
    Neil

    Neil 6 years ago

    Hi Sorry with reference to the above there are some inaccuracies which need correcting:
    Ok
    What are the possible cause/s that produce the ‘hlsjs-lite: Network Error message’ when using encrypted HLSv4 audio files distributed via CloudFront ? I altered the urls to include the Cloudfront domain, I performed an invalidation after doing the recommended Whitelist changes and checking CORS and Cross Domain were in place. HLS.js is eanbled in the settings. Decryption is working. All access keys seem to be fine . The audio files are accessible/viewable in the S3 Browser and are in the relevant S3 output bucket that is part of the three bucket HLS system. The error message is still there (I also did a force refresh on the lap top).
    Can you advise what I should check/adjust next to remove this error and allow playback of the Mu38 stream?
    Regards
    Neil

    Martin 6 years ago

    Hello Neil,

    please ensure that your license acquisition URL parameter matches your m3u8 URL. It should also only match a single m3u8 URL on your website.

    You can also just post the URL here and let me check that out.

    Thanks,
    Martin

    Neil 6 years ago

    Hi Martin – Thank you for the reply. The License Acquisition URL for the MU38 in question is https://jazz4all.org.au/?fv_player_hls_key=jazz_stream/index
    Regards
    Neil

    Neil 6 years ago

    Hi Martin
    I refreshed the page and my ‘awaiting moderation’ reply disappeared so not sure If you got my reply with the license acquisition URL in it – so here it is again just in case. https://jazz4all.org.au/?fv_player_hls_key=jazz_stream/index
    By the way I am working at an annotated document for the other matters we are discussing.
    Regards
    Neil

    Martin 6 years ago

    Hello Neil,

    I was about to send a reply to you, but I can’t see it here, so perhaps I forgot to send it.

    Please also send the URL of the actual HLS stream and a screenshot of the post editing interface where the video is inserted. If the shortcode is like [fvplayer id="1234"] then please send the export of that player. You can get it from the wp-admin -> FV Player screen, it’s one of the actions in each row of the list table.

    Thanks,
    Martin

    Neil 6 years ago

    Hi Martin
    Not sure if you missed my email from late last week with the information you requested. However, I have been checking the various Foliovision player settings under the Hosting Tab. Under Amazon S3 Protected Content I have specified the bucket where the HLS is stored along with encryption keys. However, when I remove either the specified bucket name or the encryption keys, I can no longer access the bucket from within the player editor ‘Add Video’ S3 tab function.
    Regards
    Neil

    Neil 6 years ago

    Would using the Amazon S3 protected Content function cause the error we have been discussing?
    Neil

    Neil 6 years ago

    Hi Martin
    You have probably been very busy but it has now been two weeks since I sent you the information you asked for (18/01/19). If the question involves too much time to answer on a free basis I am happy to submit a professional support request – just let me know.
    Regards
    Neil Barclay

    Martin 6 years ago

    Hello Neil,

    sorry about the delay. At a glance it appears it should work.

    Perhaps multiple videos matching the “jazz_stream/index” part of URL. Please try to search for that in wp-admin -> “FV Player” and also in wp-admin -> “Posts” -> “All post” (and any other place where you posted videos using [fvplayer] shortcode, perhaps Pages and some custom post types).

    You should be only getting one search result. If you get multiple results, then your HLS stream might be getting incorrect decryption key.

    We are happy to help you solve this issue right on your website if you order or Pro support. But we can also continue giving you troubleshooting tips if you prefer that.

    Thanks,
    Martin

    Peter 6 years ago

    Hi Martin,
    can you also write a similar workflow that is using Amazon Media Convert instead of Elastic Transcoder? In MediaConvert the dialogues are different. You somehow have to select Static key in the DRM encryption for HLS AES encryption. Elastic Transcoder is not developed further by AWS, so it will be good to switch to MediaConvert.
    Thank you
    Peter

    Martin 6 years ago

    Hello Peter,

    to conclude this thread – we are almost ready with the MediaConvert guide. You ordered our services, so we helped you with the setup.

    Thanks,
    Martin

    JBlivestream 6 years ago

    Awesome tutorial, gonna give it a try, thanks for this.

Viewing 52 replies - 1 through 52 (of 52 total)
Reply To: How to setup encrypted HLS stream with Amazon Elastic Transcoder



Please Sign in or Register to upload files.

Related Posts

  1. How to setup encrypted HLS stream with Amazon Elastic Transcoder – Deprecated

  2. Cómo configurar HLS stream con Amazon Elastic Transcoder

  3. Wie einrichten man den HLS Datenstrom mit Amazon Elastic Transcoder

Primary Sidebar

Sign in Register
FV Player Docs Post New Topic

Welcome

to Foliovision support forums! We'll be happy to provide free support to resolve all the reported bugs. You always can start by specifying your OS and browser and steps to reproduce the bug.

If you need help with the installation on your site, please submit a request for a Pro Support Incident. We'll have you up and running in no time, with detailed instructions on how to resolve your issue yourself in the future.

Facing a hard to solve WordPress problem? On a tight deadline?

Let us take care of it for you
right now.

Pro Support Buy FV Player

Footer

Our Plugins

  • FV WordPress Flowplayer
  • FV Thoughtful Comments
  • FV Simpler SEO
  • FV Antispam
  • FV Gravatar Cache
  • FV Testimonials

Free Tools

  • Pandoc Online
  • Article spinner
  • WordPress Password Finder
  • Delete LinkedIn Account
  • Responsive Design Calculator
Foliovision logo
All materials © 2025 Foliovision s.r.o. | Panská 12 - 81101 Bratislava - Slovakia | info@foliovision.com
  • This Site Uses Cookies
  • Privacy Policy
  • Terms of Service
  • Site Map
  • Contact
  • Tel. ‭+421 2/5292 0086‬

We are using cookies to give you the best experience on our website.

You can find out more about which cookies we are using or switch them off in .

Powered by  GDPR Cookie Compliance
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

Necessary Cookies

Strictly Necessary Cookie allow you to log in and download your software or post to forums.

We use the WordPress login cookie and the session cookie.

If you disable this cookie, we will not be able to save your preferences. This means that every time you visit this website you will need to enable or disable cookies again.

Support Cookies

Foliovision.com uses self-hosted Rocket.chat and self-hosted Freescout support desk to provide support for FV Player users. These cookies allow our visitors to chat with us and/or submit support tickets.

We are delighted to recommend self-hosted Rocket.chat and especially Freescout to other privacy-conscious independent publishers who would prefer to self-host support.

Please enable Strictly Necessary Cookies first so that we can save your preferences!

3rd Party Cookies

This website uses Google Analytics and Statcounter to collect anonymous information such as the number of visitors to the site, and the most popular pages.

Keeping this cookie enabled helps us to improve our website.

We reluctantly use Google Analytics as it helps us to test FV Player against popular Google Analytics features. Feel free to turn off these cookies if they make you feel uncomfortable.

Statcounter is an independent Irish stats service which we have been using since the beginning of recorded time, sixteen years ago.

Please enable Strictly Necessary Cookies first so that we can save your preferences!