Using ytdl-core with a discord bot, noticed slow download speeds. Used vnstat to monitor eth0 throughput.
0.9.1:
Receiving: 14.63Mbit/s
0.10.0:
Receiving: 562Kbit/s
Here are the commits from 0.9.1 to 0.10.0
https://github.com/fent/node-ytdl-core/compare/v0.9.1...v0.10.0
The only change that seems suspicious is this line
https://github.com/fent/node-ytdl-core/commit/d9d4887531243f5af74c9dbe1ed869d2869de0ec#diff-d4723a0b85728eb05d8e2158f24c490cL236
I removed that line because I noticed that it didn't need to be there for downloads to work. And had forgotten why it was even there. Tracking down the first commit that introduced it doesn't have an explanation either
https://github.com/fent/node-ytdl/commit/33d70fa6cd91f214e7ef78e16789707cb0c59d4f
You can test by adding that line back if that brings back the speed. I'll test on my end too. It might be dependent on the video too, since many download urls already include that parameter.
Hmm, so far, every video I've tried already has this parameter.
cant confirm
hitting a 150Mbit/s peak using a fresh v0.10.0 installation when piping to a file
Adding query.ratebypass = 'yes'; back has solved the slow downloading issue, but if that parameter exists by default then what causes the slow downloads to happen? Have tested on a 64 bit Debian Xeon server and my personal Windows 10 64 bit desktop with an i7 and fibre optic, happens on both.
Can you post the link to a video where it happens?
Also happens on other videos I've tried
Ah, I wasn't testing all the formats. Some of them don't have it. Will push a fix in a few mins.
It's pretty amazing, I was wondering for the past few days why youtube-dl is downloading much faster than ytdl, and was debugging it at this very moment, found that the difference in URLs was the ratebypass=true parameter, and headed over to the issue tracker to see if anyone already reported the issue. Some battle story.
Most helpful comment
Ah, I wasn't testing all the formats. Some of them don't have it. Will push a fix in a few mins.