I know this is an old thread but I need to do something similar and I’m really not loving any of my options.
The problem with the first solution is that this won’t allow the videos to be recorded by OpenVidu as far as I can tell? Unless I am missing something. Perhaps I could merge the stream recording with the pre-recorded video once the OpenVidu session is closed although this sounds like a painful endeavor.
Another option I spent a lot of hours on in the past day was trying to use HTMLMediaElement.captureStream() to get the video and audio tracks from a video element (with the src set to my video URL) and then passing those tracks to my publisher.
Unfortunately, it seems like captureStream() is still a very buggy API on both Chrome and Firefox. I could get video to stream (although Chrome has some issues that require workarounds) but it seems like audio just doesn’t work for some reason. Again, unless I am missing something.
Another option I saw was doing a screen share and then playing the video in the tab/window that is shared. However in my tests of this, the video/audio quality was pretty poor.
With regards to @pabloFuente 's second implementation idea, I’m not entirely clear what you mean by “stream a video available in disk”. Would that be from the client/browser side using the KurentoPlayer API? Or would that be done on the server side directly somehow? Any additional insights there would be much appreciated.