Since YouTube keeps changing the nsig function signature and a generic regex may match at multiple places, I changed the extraction logic to search for multiple matches if necessary and test the extracted deobfuscation functions. I also found out that if the deobfuscation fails for all streams, fetching the player still returns a successful result with no streams, suggesting that the video is not available. So I changed the mapper to throw an ExtractionError if no streams are mapped successfully. |
||
|---|---|---|
| .. | ||
| client | ||
| model | ||
| param | ||
| serializer | ||
| util | ||
| cache.rs | ||
| deobfuscate.rs | ||
| error.rs | ||
| lib.rs | ||
| report.rs | ||
| validate.rs | ||