feat(extractors): add StreamRuby extractor - #3206
mehdigm4life wants to merge 2 commits into
Conversation
| } | ||
|
|
||
| @Prerelease | ||
| open class StreamRuby : ExtractorApi() { |
There was a problem hiding this comment.
This looks like the same logic as LuluStream, please inherit from that one if possible
|
No, I mean literally: class StreamRuby : LuluStream() {
override val name = "StreamRuby"
override val mainUrl = "https://rubyvidhub.com"
}Does that not work? |
|
It can't be a plain subclass because the site needs more than LuluStream's flow: the filecode comes from URLs like /embed-{code}.html (and /e/{code}), the embed page has to be fetched first to seed the session cookie before posting to /dl, and the /dl response is packed JS that has to be unpacked before the stream URL can be pulled out. That's why the extractor overrides just those three steps while reusing LuluStream's overall flow (getFileCode → getPlayerScript → parsePlayerScript). Happy to drop it down to a plain subclass if it turns out the plain flow works on the live sites. |
|
Okay I understand 👍 Please share a demo video link for testing and to see if any other extractor implements the required logic |
|
Here are some working demo links to test with — they cover both URL formats the extractor parses: https://streamruby.com/e/sp03sbfzp0tc (filecode sp03sbfzp0tc) Both work fine, and the extractor grabs the HLS stream correctly. |
Adds support for the StreamRuby / rubyvidhub.com embed hosts, which are used as a video source by a number of streaming sites.
The extractor:
Also ships a StreamRubyCom variant that targets the streamruby.com mirror domain. The file code is parsed so that both /e/{code} and /embed-{code}.html URLs work.
Includes a library abi dump refresh so the binary compatibility check matches the JDK 17 toolchain used by CI.