Challenge Overview
Hard | Topcoder Skill Builder Competition | EdgeNet Video Enablement
This is the Hard 1000 points problem of our EdgeNet Video Enablement
Skill Builder
Competition. In this
challenge, you will learn how to stream a streaming media file within
your web-app you created in the medium challenge.
In the Medium problem, we created a web application that loaded a .mp4
video in the embedded video player. Now, you will extend what you
created in the previous challenge into a web media player app capable of
handling streaming media files according to the** HLS protocol** with
content served from an Edge Location.
HLS stands for HTTP Live Streaming. In short, HLS is a media streaming
protocol for delivering visual and audio media to viewers over the
internet.
m3u8
is a file format that is used in video streaming. It is the Unicode
version of the M3U computer
file format. The file extension for this file type is ".m3u8". HLS is
built upon the m3u8 file format, so sometimes "HLS streaming" is
referred to as "m3u8
streaming."
Learn More
Solving this problem you will learn:
- How to handle a streaming media file using HLS Protocol
- Understand how a video streaming service can be compared based on
latency.
What do you need to do?
- Copy the web app you created in the Medium challenge and continue to
work on the copy. - Use the Edge API to whitelist the domain for the web service you've
created. - Use the Edge API to add a streaming media file to your Service (feel
free to use the example file:
https://dummypartner.testalef.net/demo/myencoding.m3u8). - Modify your solution from the previous challenge to work with
streaming media files (.m3u8) Feel free to use the HLS.js library
for this (
https://github.com/video-dev/hls.js/
) - By now, you should have two video players embedded in your web app,
that are capable of HLS streaming. - Do some research and be creative in displaying the video streaming
statistics in a comparable fashion to show why Edge is the
preferable solution for your Enterprise. - Access your web app through the sandbox as in the previous
challenges and tests.
Resources
Submission Deliverables
Follow the steps below to make your submission:
- Create a folder with "code" as the folder name then zip.
- Please remove the node_modules folder before submission.
- Please create a url.txt file inside the "code" folder and place your
application's URL in that file. This URL will be different from the
URL you submitted in the Medium Challenge. - Zip the "code" folder and submit it to the challenge
Judging Criteria
Your submission will be reviewed manually and you will earn points as
the score for your valid submission.
- Functional requirements (70%) - Are the requirements fulfilled?
- Innovation (20%) - What kind of comparison statistics are you
showing? How are you showing these statistics to amplify the
comparison between Edge and Cloud? - UI/UX (10%) - Does the web application look good?
In case you don't see a score, make sure you understand the submission
guidelines. You can also discuss in the challenge forum any issues.
Topcoder Skill Builder Problems | EdgeNet Video Enablement API
- Host Challenge: https://www.topcoder.com/challenges/30178339
- Easy | 250 Points: https://www.topcoder.com/challenges/30181666
- Medium | 500 Points: https://www.topcoder.com/challenges/30181695
- Hard | 1000 Points: https://www.topcoder.com/challenges/30181703