I know that there is a simple solution to play videos one after another in HTML
. However, I have yet to find one that transitions from videos smoothly. My problem is that I have a very long stream of videos on my server composed of multiple MP4
files. I serve these files to my web client through HTTP and play them with video.js
. To play one file after another, I simply implemented this solution which simply changes the source on the ended
event. The problem is that there is a small stutter when a video ends and a new one starts. To the user, these small files must appear as a single continuous video, so I cannot accept a small stutter when files change.
Is there a way to do this in videojs
or just in the video
element of HTML5
? I currently save my MP4 files as blob
s on my client, so I was thinking that maybe I could try to 'merge' blobs together to avoid changing the source. However, I don't think I can simply concatenate MP4 files together in a blob
and play them as a single source. Is there another format that could support 'merging' video files on the fly to avoid changing the video source?
Please note that any HTTP
streaming protocols such as HLS
or DASH
would not work for me. My server must fetch MP4 files from possibly long-term archive storage and the total duration of the video is not known to me. Therefore, I cannot really build a manifest for the chunks. I also have my files in plain MP4
, not fragmented MP4
.