I am working on a project that involves streaming video with audio to/from various cloud streaming services with intermediate encoding steps (i.e. mixing with additional overlays).
Each stage in the complex process has been tested in isolation, and we have mocked up a local environment for internal testing purposes.
I want to put together a UAT script package that caters for a fully live configuration. In this configuration, the client will receive 4 outputs going through various pathways. For example, one video/audio stream goes through two cloud services. The source video/audio is a live recording.
I can write suitable tests for comparing the audio/video delays between each pathway.
I am struggling to come up with a viable solution to testing any of these pathways against the source video/audio.
I am considering using Skype, by having it record the audio (as a minimum, maybe video too) during a live recording. I can then measure the delays in this audio output against the output streams.
I would end up with a recording via Skype, and a recording via the stream. From this I can calculate a delay. How do I calculate the time delay between the live recording and the Skype recording?
This is critical as we are promoting our various pathways as "within x seconds" and wish to provide the customer a means of proving this during their UAT cycles.