-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Enhancement] Trying to use the latest video.js version #2848
Comments
We really need to dig into how all of that (HTML video playback, videoJS) works, or find someone who can do it. I'm going to be honnest: JS is my pet peeve, and video playback in a browser is quite new to me, so don't really count on me for that xD. |
I found why videojs-http-source-selector and the force to a specific quality are behaving strangely. The current video.js that we use don't support WEBm, but the latest one does, due to that it's conflicting somewhere. Omitting webm from the dash manifest fixes the bug. The bug
|
There seems to be a new algorithm in https://github.com/videojs/http-streaming that works better to retry again when the internet drop out or there is an issue with the server:
cf https://github.com/videojs/http-streaming/search?q=experimentalBufferBasedABR |
Found a better quality selector from the authors of videojs : https://player.support.brightcove.com/plugins/quality-selection-plugin.html, but I don't know if it's legal to use a plugin with It's also a good idea to try this PR that may fix some bugs in videojs-http-source-selector: jfujita/videojs-http-source-selector#17 |
I think is a problem inside the VHS library an how the library manage the buffers, I'm using video.js for a personal project, and the problem still persist even with the brightcove plugin and the exprimental buffer enabled, off course its more stable but still crash randomly. every time you chose another quality the vhs library cleans the buffer and start again from zero, and I think its very agressive for the player and network, and I think cleans the current buffer and the player dosen't have any chunk to playback. Reviewing how jwplayer does the change and I see the change is more smoothly, they don't drop the current chunks, and also if you make a quality downgrade they dont clean the current chunks until the player gets the new quality. I already test all the quality selectors on NPM and all of them uses: videojs-contrib-quality-levels, The only workarround that works for me is don't use the VHS library and integrate shaka-player inside videojs with this library: https://github.com/davidjamesherzog/videojs-shaka, With shaka everyting works fine but its a little bit heavy becase I'm loading videojs and shaka libraries at the same time. I hope the videojs team fix this in the future, please tell me if you find another alternative. Thank you. |
Any updates on this? videojs 8.1.1 uses vhs 3.0.2. This enables Low Latency HLS by default which should help tremendously for livestreams if not using webrtc. (Unsure if webrtc is in use). |
Last update from #3011 (comment):
|
here's a source selector fork being maintained by freetube |
We already know, I'm subscribed to this issue: jfujita/videojs-http-source-selector#69 (comment) Anyway if you really want to have a newer videojs version then feel free to do some experimentation with the fork from freetube with a newer videojs version and get back to us if it works fine or not. |
From therealone2047 on matrix:
|
From sadpanda800 on matrix:
From syeopite on matrix:
|
Here are my findings at trying to make the latest video.js version working.
What I discovered:
videojs-http-source-selector is completely broken, but that's because we are using the old method for initiating the video.js player. I submitted a fix here: rename hls to vhs in the player #2847
when selecting another quality from the quality selector, video.js will sometimes try to use an unsupported codec, either we try to understand what's going on or we remove the codec from the available dash playlist:
The text was updated successfully, but these errors were encountered: