Faster Downloads #1147

Open
opened 2026-02-20 23:21:40 -05:00 by deekerman · 8 comments
Owner

Originally created by @tytyguy on GitHub (Sep 24, 2013).

I love youtube-dl! Its amazing... but when trying to download larger files (1 hour or longer) it takes a decent amount of time. Ive heard of aria2 and some wrappers you can use but they haven't seem to been update in quite some time. Is there anything available to make the downloads faster without losing quality?

Originally created by @tytyguy on GitHub (Sep 24, 2013). I love youtube-dl! Its amazing... but when trying to download larger files (1 hour or longer) it takes a decent amount of time. Ive heard of aria2 and some wrappers you can use but they haven't seem to been update in quite some time. Is there anything available to make the downloads faster without losing quality?
Author
Owner

@wyatt8740 commented on GitHub (Oct 1, 2013):

If the server is slow to send out packets, then your PC will be slow to recieve them. There's no way I know of around that.

@wyatt8740 commented on GitHub (Oct 1, 2013): If the server is slow to send out packets, then your PC will be slow to recieve them. There's no way I know of around that.
Author
Owner

@phihag commented on GitHub (Oct 1, 2013):

@wyatt8740 You are assuming that the bottleneck is the local connection. If it is not, using multiple connections in parallel can help.

@phihag commented on GitHub (Oct 1, 2013): @wyatt8740 You are assuming that the bottleneck is the local connection. If it is not, using multiple connections in parallel can help.
Author
Owner

@dashed commented on GitHub (Oct 1, 2013):

I usually retrieve the url via youtube-dl and pipe it to arai2c. That's what I do.

Something like this can work:

#!/bin/bash

# Input
address=$1

video_filename="$(youtube-dl --get-filename -o '%(title)s.%(ext)s' --restrict-filenames $address)"
video_url="$(youtube-dl --get-url $address)"

# modify aria2c options as needed
aria2c -x16 -s20 -k1M --out=$video_filename $video_url
@dashed commented on GitHub (Oct 1, 2013): I usually retrieve the url via youtube-dl and pipe it to arai2c. That's what I do. Something like this can work: ``` bash #!/bin/bash # Input address=$1 video_filename="$(youtube-dl --get-filename -o '%(title)s.%(ext)s' --restrict-filenames $address)" video_url="$(youtube-dl --get-url $address)" # modify aria2c options as needed aria2c -x16 -s20 -k1M --out=$video_filename $video_url ```
Author
Owner

@rbrito commented on GitHub (Oct 18, 2013):

@Dashed,

You may also need to tell aria2c to use the same headers that youtube-dl uses, or you may get some problems, like trouble with user-agent sniffing (server-side) code.

@rbrito commented on GitHub (Oct 18, 2013): @Dashed, You may also need to tell `aria2c` to use the same headers that `youtube-dl` uses, or you may get some problems, like trouble with user-agent sniffing (server-side) code.
Author
Owner

@dashed commented on GitHub (Oct 18, 2013):

@rbrito I hadn't thought of that. I didn't seem to need it for my use cases. Doesn't seem hard to set. aria2c has --user-agent=<USER_AGENT> which can be set from youtube-dl's --dump-user-agent option.

@dashed commented on GitHub (Oct 18, 2013): @rbrito I hadn't thought of that. I didn't seem to need it for my use cases. Doesn't seem hard to set. `aria2c` has `--user-agent=<USER_AGENT>` which can be set from youtube-dl's `--dump-user-agent` option.
Author
Owner

@yan12125 commented on GitHub (Oct 27, 2016):

For aria2c/axel-like threaded downloading, see #350. Closing as a duplicate.

@yan12125 commented on GitHub (Oct 27, 2016): For aria2c/axel-like threaded downloading, see #350. Closing as a duplicate.
Author
Owner

@yan12125 commented on GitHub (Oct 27, 2016):

Sorry, this issue is kind of different than #350. Reopening.

@yan12125 commented on GitHub (Oct 27, 2016): Sorry, this issue is kind of different than #350. Reopening.
Author
Owner

@Gaploid commented on GitHub (Jul 11, 2019):

Any news here guys?

@Gaploid commented on GitHub (Jul 11, 2019): Any news here guys?
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/youtube-dl-ytdl-org#1147
No description provided.