This is part of a larger program and is the first step. The developer selected for this project is most likely going to be retained for the subsequent segments of the program - however we may choose to switch at our discretion.
As a video is playing inside an HTML5 <video></video> segment, we need to record any words (English for now) being spoken (microphone input only) on a computer or mobile device, in an audio file (MP3) along with the words being converted to text and made visible in a "textarea" field for subsequent update on a MySQL database. It is very important to track the timestamp of the entire session (every second), so that we keep the video synchronized with the audio stream being recorded and the corresponding text transcription being made. The timestamp will be in seconds for the length of the video. While the "textarea" mentioned above simply displays the speech to text content, in the background however every second for the duration of the video (starting with 0 seconds), the system needs to store either nothing or the text version of the word being spoken. For example if the word "tester" is spoken and translated to text at the 223rd second into the video, then in a two dimensional array the word "tester" would be updated on the 223 second record in the array. Upon "submit" that contents of the array would be updated in a table in the MySQL database.
Any open source speech to text APIs (such as Google) that allows speech to text translation for multiple languages, based on developer's recommendation, may be used in this process
For your information, this timestamp tracking will be required in a future milestone of the larger program, but the groundwork for that future application must be ready now. For example, if I am searching the text transcription for the word "tester" and it was 3 minutes 43 seconds into the video, then in a future application (not in the scope of this project) the user playing the video will automatically be fast forwarded to that video frame starting at 3 minutes 43 seconds and can start playing. That is the ultimate objective in a future project within the program.