Challenge Overview
The Hercules Player is an application that allows customers to download videos to their computer or device for offline playback, along with streaming playback of videos for online playback.
The Hercules Fog project has stripped out some key portions of the Hercules Player application into a new test application for downloading videos from a server, modifying the manifest, and then playing back on various mobile and TV devices.
The current implementation is C++ and will run on:
- Windows
- Linux
- Mac
The code is relatively stable, but we have had issues with race conditions due to the number of mutexes used in the code. This challenge will investigate each mutex usage and ensure that it's appropriate. Documentation is key here - you must fully and clearly document your submission, what validation you did, and what you did to fix any issues seen.
Requirements
These Gitlab ticket covers specifics:
* https://gitlab.com/hercules-fog/Fog-CLI/issues/189
* https://gitlab.com/hercules-fog/Fog-CLI/issues/190
* https://gitlab.com/hercules-fog/Fog-CLI/issues/191
Sample player
This site is what will be used by reviewers to test playback:
http://player.b1.app.cloud.comcast.net/
It is expected that reviewers will need to run Google Chrome with web security disabled to get around XSS / CORS issues when playing back from a Fog recorded URL.
How to test
Playback and recording details will be provided in the forum.
Submission
Your code must be submitted as a Git patch file against the "master" branch
https://ariejan.net/2009/10/26/how-to-create-and-apply-a-patch-with-git/
Base your patch file against commit hash 8dadc60db0c505d2b4018a0f2e642862c3fdc0a4.
Please make sure to test your patch before submission!