In my company, we are currently looking for a solution to enrich a given video stream (which is being broadcasted via RTMP) from a remote webcam with dynamic information, such as current date/time, special measure values which are available on a server or the most recent entries in a database. Basically we want to achieve a simple, dynamic on-screen display as, for example, TV stations are using. The modified stream should then be restreamed, for example to be viewed in VLC Player or on YouTube.

So far, I came up with the following ideas:

  • Using OBS with some own scripts and plugins - that's disadvantageous because we would like to run the solution on a high-network performance server 24/7 without a GUI. Basically I'd need a fully command-line based version of OBS.

  • Using ffmpeg: I know that there are text filters available, but they are mainly static (or periodically polling a file with text) and don't allow for any design adjustments other than font, font size and color. It would be great if there was some way of overlaying a Webkit browser view onto the stream, because this would allow us to design the overlays in HTML5 and CSS and using WebSocket technology for updating the data.

    • The overlay could be captured with PhantomJS, but how should we unify it with the stream and would it be fast enough to render 30 FPS?

Are there additional (preferably open source) tools we could use? What would be the best strategy to implement this without buying expensive TV broadcasting software?

  • Look into zmq filter. – llogan Nov 19 '16 at 18:48
  • Any more info on this? I asked a similar question recently but I'm not getting any answers sadly – Liam Martens Jun 24 '17 at 14:51

Have a look at CasparCG. It should be able to do what you want.

An alternative would be to create something using MLT and, say, Python, but that requires some programming, though it should be mostly assembling modules together.

  • Can you explain what MLT is in your answer? – Michael Tiemann Sep 10 '17 at 14:33
  • @MichaelTiemann Thanks for the feedback, I added a link. – odinho - Velmont Sep 10 '17 at 14:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.