documentation update for youtube-dl

Code not updated yet.

This commit was sponsored by Thomas Hochstein on Patreon.
This commit is contained in:
Joey Hess 2017-11-28 14:05:58 -04:00
parent d1d04a3c65
commit d6d8f72957
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
8 changed files with 45 additions and 29 deletions

View file

@ -1,3 +1,11 @@
git-annex (6.20171125) UNRELEASED; urgency=medium
* Use youtube-dl rather than quvi to download media from web pages,
since quvi is not being actively developed and youtube-dl supports
many more sites.
-- Joey Hess <id@joeyh.name> Tue, 28 Nov 2017 13:48:44 -0400
git-annex (6.20171124) unstable; urgency=medium
* Display progress meter when uploading a key without size information,

2
debian/control vendored
View file

@ -107,7 +107,7 @@ Recommends:
lsof,
gnupg,
bind9-host,
quvi,
youtube-dl,
git-remote-gcrypt (>= 0.20130908-6),
nocache,
aria2,

View file

@ -8,4 +8,8 @@ option to make it prefer mp4, you can pass it using the annex.quvi-options
git configuration setting. Or maybe it has a config file. I don't
know how to configure quvi to do that, but if it's possible to, you should
be able to get git-annex to run it with that configuration.
Update: Now git-annex uses youtube-dl, so you can use the
annex.youtube-dl-options git configuration setting to configure youtube-dl
to download your preferred format.
"""]]

View file

@ -10,8 +10,8 @@ git annex addurl `[url ...]`
Downloads each url to its own file, which is added to the annex.
When `quvi` is installed, urls are automatically tested to see if they
point to a video hosting site, and the video is downloaded instead.
When `youtube-dl` is installed, and the url is to a web page,
it's used to download any video that the web page embeds.
Urls to torrent files (including magnet links) will cause the content of
the torrent to be downloaded, using `aria2c`.
@ -35,7 +35,7 @@ be used to get better filenames.
* `--raw`
Prevent special handling of urls by quvi, bittorrent, and other
Prevent special handling of urls by youtube-dl, bittorrent, and other
special remotes. This will for example, make addurl
download the .torrent file and not the contents it points to.

View file

@ -13,9 +13,8 @@ content has not already been added to the repository before, so you can
delete, rename, etc the resulting files and repeated runs won't duplicate
them.
When quvi is installed, links in the feed are tested to see if they
are on a video hosting site, and the video is downloaded. This allows
importing e.g., YouTube playlists.
When `youtube-dl` is installed, it's used to download links in the feed.
This allows importing e.g., YouTube playlists.
To make the import process add metadata to the imported files from the feed,
`git config annex.genmetadata true`

View file

@ -1315,10 +1315,19 @@ Here are all the supported configuration settings.
Options to pass when running wget or curl.
For example, to force IPv4 only, set it to "-4"
* `annex.quvi-options`
* `annex.youtube-dl-options`
Options to pass to quvi when using it to find the url to download for a
video.
Options to pass to youtube-dl when using it to find the url to download
for a video.
Some options may break git-annex's integration with youtube-dl. For
example, the --output option could cause it to store files somewhere
git-annex won't find them. Avoid any options that cause youtube-dl
to download more than one file, or to store the file anywhere
other than the current working directory.
Note that git-annex runs youtube-dl with --ignore-config, to avoid
any configuration file settings that break its integration.
* `annex.aria-torrent-options`

View file

@ -74,8 +74,8 @@ and transferring to your laptop on demand.
## youtube playlists
You can also use `git annex importfeed` on youtube playlists.
It will use quvi to automatically download the videos linked to
by the playlist.
It will use [youtube-dl](https://rg3.github.io/youtube-dl/) to automatically
download the videos linked to by the playlist.
To download a youtube playlist, you need to find the feed associated with that
playlist, and pass it to `git annex importfeed`. There does not seem to be

View file

@ -68,35 +68,31 @@ number takes that many paths from the end.
## videos
<a name=quvi></a>
<a name=videos></a>
There's support for downloading videos from sites like YouTube, Vimeo,
and many more. This relies on [quvi](http://quvi.sourceforge.net/) to find
urls to the actual videos files.
and many more. This relies on [youtube-dl](https://rg3.github.io/youtube-dl/)
to download the videos.
When you have quvi installed, you can just
When you have youtube-dl installed, you can just
`git annex addurl http://youtube.com/foo` and it will detect that
it is a video and download the video content for offline viewing.
Later, in another clone of the repository, you can run `git annex get` on
the file and it will also be downloaded with the help of quvi. This works
the file and it will also be downloaded with youtube-dl. This works
even if the video host has transcoded or otherwise changed the video
in the meantime; the assumption is that these video files are equivalent.
There is an `annex.quvi-options` configuration setting that can be used
There is an `annex.youtube-dl-options` configuration setting that can be used
to pass parameters to quvi. For example, you could set `git config
annex.quvi-options "--format low"` to configure it to download low
quality videos from YouTube.
annex.youtube-dl-options "--format worst"` to configure it to download low
quality videos from YouTube. Note that the youtube-dl configuration files
are not read when git-annex runs youtube-dl, to avoid config settings that
break its integration.
Note that for performance reasons, the url is not checked for redirects,
so some shortened urls will not be detected. You can
either load the short url in a browser to get the full url, or you
can force use of quvi with redirect detection, by prepending "quvi:" to the
url.
To download a youtube playlist, you need to find the feed associated with that
playlist, and pass it to `git annex importfeed`. There does not seem to be
an easy link anywhere to get the feed, but you can construct its url
To download a youtube playlist, you need to find the RSS feed associated with
that playlist, and pass it to `git annex importfeed`. There does not seem to
be an easy link anywhere to get the RSS feed, but you can construct its url
manually. For a playlist like
"https://www.youtube.com/playlist?list=PL4F80C7D2DC8D9B6C", the
feed is "https://www.youtube.com/feeds/videos.xml?playlist_id=PL4F80C7D2DC8D9B6C"