Open SanatSharma opened 4 years ago
👋 Thanks for opening your first issue here! 👋
If you're reporting a 🐞 bug, please make sure you include steps to reproduce it. We get a lot of issues on this repo, so please be patient and we will get back to you as soon as we can. To help make it easier for us to investigate your issue, please follow the contributing guidelines.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Forgot to answer. We are aware of all the low latency HLS things but unfortunately we don't have the bandwidth (if you will) right now to work on it.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
@SanatSharma Did you get any breakthrough for this LHLS support for Video JS ? or what is your workaround?
This is something we are likely going to be working in Q3.
@jitendracodehacker we ended up using webrtc
@gkatsev Have you been able to put any effort in it? Is there a planned release date on the LL HLS feature?
Unfortunately, we haven't been able to get started on this. We'll definitely make lots of noise when we get started on low latency streaming.
@SanatSharma Did you run WebRTC via video.js or did you end up with another player?
@SanatSharma Did you run WebRTC via video.js or did you end up with another player?
New Status on this?
FYI, Video.js 7.13 has preliminary support for LHLS. If you try it out, please let us know how it is. Requires setting experimentalLLHLS
on the player.
FYI, Video.js 7.13 has preliminary support for LHLS. If you try it out, please let us know how it is. Requires setting
experimentalLLHLS
on the player.
I tried but it doesn't seem to work. the delay is about 20s, I also tried on theoplayer the delay is about 4s
Is there any working example? Unfortunately, it doesn't work for me in the demo player.
Hey! We've detected some video files in a comment on this issue. If you'd like to permanently archive these videos and tie them to this project, a maintainer of the project can reply to this issue with the following commands:
Can you elaborate on what you mean by "doesn't work"? It's still early and experimental. Definitely not ready for production use. I'm sure there's more work to do for it.
Can you elaborate on what you mean by "doesn't work"?
I do not get LHLS, only HLS.
It's still early and experimental.
Under which example URL can we successfully test this experiment?
Definitely not ready for production use.
What is already working and what is not yet working? The delay is about 20s. LHLS should be less than 4s.
It seems to me that parts are getting download when available. Theoretically, it's all implemented, but it hasn't really gotten any testing and there's likely still bugs. We'll definitely make a big announcement when we think it's ready for people to use.
OK thank you!
@gkatsev Hi. I have test the Experimental LL HLS feature of VHS at VHS test site. https://videojs-http-streaming.netlify.app/ However compare to the THEOplayer(https://www.theoplayer.com/ll-hls-test-page), the Experimental LL HLS feature of VHS has some delay(about 5-8 seconds). I was trying to change some config variables(e.g. GOAL_BUFFER_LENGTH, MAX_GOAL_BUFFER_LENGTH, etc...) in VHS, but there was no improvement. So I realized that the delay between THEOPlayer and VHS on LL HLS Streaming Playing couldn't be adjusted at this time. Would you like to make some progressive on decreasing the delay of LL HLS in VHS in the future. Regards.
@dovelive this is actually something that we're working on. We have a PR out that should improve our starting time https://github.com/videojs/http-streaming/pull/1201 (feel free to try it out in the netlify link). In my testing, once we've started, we do a decent job and staying around the same time. Once that PR is in, we can probably call LLHLS in beta. We do plan to eventually have some knobs that can be turned for LLHLS but it isn't available at this point. The current goal buffer config stuff don't really apply to LLHLS. Also, thanks for trying out!
@gkatsev Hi. I have tested the http-streaming 2.12.0 on http-streaming test page.(https://videojs-http-streaming.netlify.app/) Since the logic related to the playback of the LLHLS stream was completed than before, it was confirmed that the videojs player played the LLHLS streaming almost the same time as the THEOPlayer.(https://www.theoplayer.com/ll-hls-test-page)
However, I have one question. In the THEOPlayer, user can move to any time by clicking any position in the Time Seekbar for the llhls stream. However, for the videojs, it can't. In other words, for the LLHLS stream, user cannot move to the desired time by clicking the on the SeekBar. (I have tested it using https://ll-hls-test.apple.com/llhls1/multi.m3u8)
So would you like to check and implement this feature on the videojs too?
Regards.
Hey! We've detected some video files in a comment on this issue. If you'd like to permanently archive these videos and tie them to this project, a maintainer of the project can reply to this issue with the following commands:
@video-archivist-bot save vjN8nA
@dovelive great to hear! For being able to seek in live streams, you need to enable liveui
in Video.js. There's an option for it on https://videojs-http-streaming.netlify.app/ in the options tab panel. Worth noting that by default won't show it if the live window of the stream is less than 20 seconds in length because seeking in those streams is more likely to cause issues.
videojs('video', {
liveui: true
});
@gkatsev Thank you for contacting. Of course, I have tested LLHLS feature with liveui option checked. But SeekToLive control not working for this stream. - https://ll-hls-test.apple.com/llhls1/multi.m3u8 And the action of clicking the on latest point of the seekbar does not work either. Meanwhile THEOPlayer works fine for that stream too.(I mean SeekToLive button)
I am not sure there is a problem on that stream itself, however I want you to check it by yourself.
I hope my opinion would help for improving the performance of videojs player. Regards.
Hey! We've detected some video files in a comment on this issue. If you'd like to permanently archive these videos and tie them to this project, a maintainer of the project can reply to this issue with the following commands:
@video-archivist-bot save ljaWZA
This new apple stream is so far the only known issue for us. We haven't really had a chance to investigate further why this particular stream isn't working well. Other LLHLS streams that we tested work fine right now.
For those that haven't seen yet, there is LLHLS support now. It is flagged behind experimentalLLHLS. Ideally, you should also enable experimentalBufferBasedABR.
Do you habe more informations about experimentalBufferBasedABR
? Can't find any documentation for this...
The LLHLS feature of videojs seems to work well with OvenMediaEngine as well. But the player doesn't seem to use #EXT-X-PRELOAD-HINT. Is this a server and player compatibility issue? Or is this not implemented in the player yet? (THEO player loads #EXT-X-PRELOAD-HINT)
I tested this with the URL below.
https://videojs-http-streaming.netlify.app/?debug=false&autoplay=false&muted=false&fluid=false&minified=false&sync-workers=false&liveui=true&llhls=true&url=https%3A%2F%2Fome-dev.airensoft.com%3A13334 %2Fapp%2Fstream%2Fllhls.m3u8&type=application%2Fx-mpegURL&keysystems=&buffer-water=true&exact-manifest-timings=true&pixel-diff-selector=true&network-info=false&dts=true-offset=false&override-native=true&preload=
For information about OvenMediaEngine's LLHLS, please refer to the URL below.
Isn't this implemented in vhs now?
Please do not delete the template, by filling out the required information we can investigate your issue more quickly.
Description
Apple recently released LL-HLS that allows super low-latency HLS. I was wondering when support for LL-HLS will be provided. They claim to have sub 2-sec latency, which would be great feature to have with (non-WebRTC) live streaming.
(https://developer.apple.com/documentation/http_live_streaming/protocol_extension_for_low-latency_hls_preliminary_specification)