Tyrrrz/YoutubeExplode

Occasionally streams are very slow to download (`n`-sig deciphering)

Open

#706 opened on May 2, 2023

View on GitHub
 (3 comments) (0 reactions) (0 assignees)C# (583 forks)github user discovery
bugbug/caused by youtubehelp wanted

Repository metrics

Stars
 (3,670 stars)
PR merge metrics
 (Avg merge 3d) (1 merged PR in 30d)

Description

Version

v6.2.13 / master

Details

When using the TVHTML5_SIMPLY_EMBEDDED_PLAYER client (or any other JS-enabled client, but this is the one we're using), occasionally YouTube may return a stream that has the n parameter. This parameter is an encrypted signature, similar to sig, but is responsible for rate throttling.

It also incorporates much more complicated cipher functions, so the existing deciphering code will not be enough to tackle it.

Currently, these kinds of streams are not too common, but I assume they will become more prolific as time goes on. It's not a huge issue now as the TVHTML5_SIMPLY_EMBEDDED_PLAYER client is only used for age-restricted videos.

Steps to reproduce

Updated, much more consistent steps to reproduce that require a VPN:

Contributor guide