cloudcrypt / m3u8 Goto Github PK
View Code? Open in Web Editor NEWHaskell library for m3u8 stream parsing, downloading, and decrypting.
License: BSD 3-Clause "New" or "Revised" License
Haskell library for m3u8 stream parsing, downloading, and decrypting.
License: BSD 3-Clause "New" or "Revised" License
Lines 22 to 27 in f44567f
Hi Dev
How to use this? what are the parameter to download m3u8?
Possible solution: Look for manually added baseUrl line in the local m3u8 file
Line 72 in f44567f
Fix logic at M3U8.hs:102
If m3u8Text contains "#EXT-X-STREAM-INF", then use streamsFromStr otherwise generate Unknown stream.
Handle audio only streams in M3U8.streams/streamsFromStr
In slow mode, recursively process list of segments to be downloaded, when HTTP 429/Too many requests is received, suspend the thread for "retry-after"'s duration (in seconds), and then re-attempt failed segment before continuing
To get retry-after, convert (responseHeaders resp) into a Map and query for "retry-after" as key
For interactive mode:
"Slow/Rate-limited mode (on/off, default = off): "
For auto mode:
--slow
also add:
"Max Concurrency (int, default = 15): "
for auto mode:
--concurrency
rate-limited mode overrides concurrency settings automatically
Line 49 in f44567f
Use this instead:
splitAtFirst :: Eq a => a -> [a] -> ([a], [a])
splitAtFirst x = fmap (drop 1) . break (x ==)
segmentUrls should have output type IO ([String], Maybe String, Maybe [IV])
Where IV is Int, or ByteString, or new Data defined in M3U8.Crypto
Line 70 in f44567f
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.