Question
The code name for this App is Loggy, which is meant to offer functionality for a personal journal where users can log their daily activities
The code name for this App is "Loggy", which is meant to offer functionality for a personal journal where users can log their daily activities through text, voice and video.
The challenge you have in front of you now, is to perform actions to attachments such as, automatic translation, transcoding, automatic closed captioning. These actions are triggered once the media file is uploaded.
As an initial step, you must create the skeleton of the back-end service for performing the automatic closed captioning under these assumptions:
- The closed captioning is performed through an external service (AWS or GCloud).
- There should be an internal controller that:
- Receives the recordings to be processed from a requester
- Sends the recordings to the external service
- Receives its response
- Updates the recoding with the resulting closed captioning; and
- Responds back to the requester
- The recordings can be processed simultaneously, but there is a limit of only 5 concurrent processes that can be handled by the sender.
- Therefore, there should be a queue that will act as a buffer for the overhead.
- Once the recording is processed, the external service responds with a callback, therefore a listener should be ready to receive that request and update the object with a text file containing the strings for the closed captioning.
- Only audio and video can be processed.
- The processing time depends of the length of the recording.
TaskMain class
- Write a Main class that you will use as the simulator for testing you Classes
Closed-captioning controller
- Write the class that will simulate the recording to be processed, which contains an id, the media, a length and the strings for closed captioning.
- Write a class that will be the actual controller (or spooler).
- Write a class that will act as the worker for processing closed captioning though an external service
- Implement the queue and callback actions
SubmissionYour submission should include:
- Java code of your final solution.
- Report of your observations on the changes you had to do to your code while following the recommended steps. Add snippets of code to the report to show intermediate steps.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started