Here looking for some pointers on a project I’m supposed to be working on for my buddy’s father. The details are pretty straightforward, but I’m specifically having trouble coming up with a setup that will support the project requirements.
The man's company produces hardware used for precision timing applications. The goal of the project is to overlay live timestamp data, sourced from one of their boxes, on top of an hdmi video feed, and output the result to a display.
- the ‘clock' has a cat5 port which can be used to query for current timestamp data (the overlaid timestamp string should show the most recent timestamp from the box)
- there needs to be an interface by which a user can configure the size and location of the overlaid string in the output video frame
- overall latency < 1s (ideally); latency here refers to the delay from receipt of the input data (video/current timestamp) until the composed frame is visualized on screen
- it’d be great to be able to switch between various streams as the input video
My original thought was to use a raspberry pi 3 to do the following:
- setup a node environment that runs an express server
- expose some api for allowing a user to manage attributes (x, y, height, width, color, background color, etc.) of the overlaid time-string
- host a basic webpage using plain html (or some suitable front-end framework) that offers some interface for leveraging the api mentioned above ^
- run an asynchronous loop that is constantly querying the external source for the current timestamp which gets stored in a variable
- use the ffmpeg node package to overlay the textual information on the input video stream
Given all that background; my main question is:
Does this seem like a reasonable approach to anyone here who might know what the hell they’re doing a bit better than I? At this point I’m not even sure a raspberry pi is a viable solution here, since:
- the pi has no hdmi input port
- there would be video quality limitations in doing an hdmi to usb conversion, which would also not support capturing audio from the hdmi
Is there a way to have the pi capture the hdmi input via ethernet connection? Would a hub allow me to both capture the hdmi input as well as query the ‘clock’?
My specialty is application software, but when it comes to hardware setup, and/or lower level config work, I’m a total newb.
Thanks for any and all thoughts, tips, pointers, prayers, and recommendations.