-
-
Notifications
You must be signed in to change notification settings - Fork 256
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
HLS Support #346
Comments
The hlsManifestUrl and dashManifestUrl fields are provided by YouTube, usually they only seem to provide them for currently live live streams and currently live premiere videos. Those manifests are served from YouTube's own servers. This library has a function, I haven't looked into HLS very much but as I understand it, it's made up of many smaller manifests. It might be possible to generate HLS manifests, the same way that this library is capable of generating DASH manifests, however as that array of adaptive formats is intended to be used with DASH (YouTube uses DASH in their own player, but they pass all the data to their player directly, instead of going through an XML manifest), I don't know how well they would work with HLS. |
I think using an IOS client might make the HLS Url more frequent |
You are correct that the After taking a look at the adaptive formats, it is possible but not feasible to create an HLS manifest from what is given. The way HLS works, the "manifest" is an index of indices, and each child index contains a list of URLs to 10-second video segments. I would have to automate downloading each file for each resolution and then process each into segments and host all of that myself and then generate indices which I would also need to host myself. Alternative solution: I am going to use a 3rd party player which supports DASH, where Apple's out of the box player does not. Thank you both for your valuable time. |
@ChunkyProgrammer is correct. @ronnie-codes |
For everyone needing a code sample how to generate a hls playlist using this library, here a test repo: |
I forked this repo and added HLS support by simply adding an iOS client parameter a while ago. I can open a PR if anybody cares. |
@ronnie-codes Does that work for any video, not only live streams? A PR would be great for me. :) |
@Duell10111 Great work on that! If this helps, using an iOS user agent or Safari context data will make InnerTube return the hls manifest (and sometimes, a hlsFormats array in the streaming data object). Not sure how reliable it is though. |
I'll open a PR later tonight if luan wants it. |
See #467. |
Question
I hope we can remain civilized here. My question is: How do I make hlsManifestUrl not null? Does this project support HLS or just DASH?
Other details
No response
Checklist
The text was updated successfully, but these errors were encountered: