1 .TH "YOUTUBE\-DL" "1" "" "" ""
 
   4 youtube\-dl \- download videos from youtube.com or other video platforms
 
   7 \f[B]youtube\-dl\f[] [OPTIONS] URL [URL...]
 
  10 \f[B]youtube\-dl\f[] is a small command\-line program to download videos
 
  11 from YouTube.com and a few more sites.
 
  12 It requires the Python interpreter, version 2.6, 2.7, or 3.2+, and it is
 
  13 not platform specific.
 
  14 It should work on your Unix box, on Windows or on Mac OS X.
 
  15 It is released to the public domain, which means you can modify it,
 
  16 redistribute it or use it however you like.
 
  21 \-h,\ \-\-help\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ print\ this\ help\ text\ and\ exit
 
  22 \-\-version\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ print\ program\ version\ and\ exit
 
  23 \-U,\ \-\-update\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ update\ this\ program\ to\ latest\ version.\ Make
 
  24 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ sure\ that\ you\ have\ sufficient\ permissions
 
  25 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (run\ with\ sudo\ if\ needed)
 
  26 \-i,\ \-\-ignore\-errors\ \ \ \ \ \ \ \ \ \ \ \ \ \ continue\ on\ download\ errors,\ for\ example\ to
 
  27 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ skip\ unavailable\ videos\ in\ a\ playlist
 
  28 \-\-abort\-on\-error\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Abort\ downloading\ of\ further\ videos\ (in\ the
 
  29 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ playlist\ or\ the\ command\ line)\ if\ an\ error
 
  30 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ occurs
 
  31 \-\-dump\-user\-agent\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ display\ the\ current\ browser\ identification
 
  32 \-\-list\-extractors\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ List\ all\ supported\ extractors\ and\ the\ URLs
 
  33 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ they\ would\ handle
 
  34 \-\-extractor\-descriptions\ \ \ \ \ \ \ \ \ Output\ descriptions\ of\ all\ supported
 
  35 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ extractors
 
  36 \-\-default\-search\ PREFIX\ \ \ \ \ \ \ \ \ \ Use\ this\ prefix\ for\ unqualified\ URLs.\ For
 
  37 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ example\ "gvsearch2:"\ downloads\ two\ videos
 
  38 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ from\ google\ videos\ for\ \ youtube\-dl\ "large
 
  39 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ apple".\ Use\ the\ value\ "auto"\ to\ let
 
  40 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ youtube\-dl\ guess\ ("auto_warning"\ to\ emit\ a
 
  41 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ warning\ when\ guessing).\ "error"\ just\ throws
 
  42 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ an\ error.\ The\ default\ value\ "fixup_error"
 
  43 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ repairs\ broken\ URLs,\ but\ emits\ an\ error\ if
 
  44 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ this\ is\ not\ possible\ instead\ of\ searching.
 
  45 \-\-ignore\-config\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Do\ not\ read\ configuration\ files.\ When\ given
 
  46 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ in\ the\ global\ configuration\ file\ /etc
 
  47 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ /youtube\-dl.conf:\ Do\ not\ read\ the\ user
 
  48 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ configuration\ in\ ~/.config/youtube\-
 
  49 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ dl/config\ (%APPDATA%/youtube\-dl/config.txt
 
  50 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ on\ Windows)
 
  51 \-\-flat\-playlist\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Do\ not\ extract\ the\ videos\ of\ a\ playlist,
 
  52 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ only\ list\ them.
 
  59 \-\-proxy\ URL\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Use\ the\ specified\ HTTP/HTTPS\ proxy.\ Pass\ in
 
  60 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ an\ empty\ string\ (\-\-proxy\ "")\ for\ direct
 
  61 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ connection
 
  62 \-\-socket\-timeout\ SECONDS\ \ \ \ \ \ \ \ \ Time\ to\ wait\ before\ giving\ up,\ in\ seconds
 
  63 \-\-source\-address\ IP\ \ \ \ \ \ \ \ \ \ \ \ \ \ Client\-side\ IP\ address\ to\ bind\ to
 
  64 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (experimental)
 
  65 \-4,\ \-\-force\-ipv4\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Make\ all\ connections\ via\ IPv4
 
  66 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (experimental)
 
  67 \-6,\ \-\-force\-ipv6\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Make\ all\ connections\ via\ IPv6
 
  68 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (experimental)
 
  75 \-\-playlist\-start\ NUMBER\ \ \ \ \ \ \ \ \ \ playlist\ video\ to\ start\ at\ (default\ is\ 1)
 
  76 \-\-playlist\-end\ NUMBER\ \ \ \ \ \ \ \ \ \ \ \ playlist\ video\ to\ end\ at\ (default\ is\ last)
 
  77 \-\-playlist\-items\ ITEM_SPEC\ \ \ \ \ \ \ playlist\ video\ items\ to\ download.\ Specify
 
  78 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ indices\ of\ the\ videos\ in\ the\ playlist
 
  79 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ seperated\ by\ commas\ like:\ "\-\-playlist\-items
 
  80 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 1,2,5,8"\ if\ you\ want\ to\ download\ videos
 
  81 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ indexed\ 1,\ 2,\ 5,\ 8\ in\ the\ playlist.\ You\ can
 
  82 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ specify\ range:\ "\-\-playlist\-items
 
  83 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 1\-3,7,10\-13",\ it\ will\ download\ the\ videos
 
  84 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ at\ index\ 1,\ 2,\ 3,\ 7,\ 10,\ 11,\ 12\ and\ 13.
 
  85 \-\-match\-title\ REGEX\ \ \ \ \ \ \ \ \ \ \ \ \ \ download\ only\ matching\ titles\ (regex\ or
 
  86 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ caseless\ sub\-string)
 
  87 \-\-reject\-title\ REGEX\ \ \ \ \ \ \ \ \ \ \ \ \ skip\ download\ for\ matching\ titles\ (regex\ or
 
  88 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ caseless\ sub\-string)
 
  89 \-\-max\-downloads\ NUMBER\ \ \ \ \ \ \ \ \ \ \ Abort\ after\ downloading\ NUMBER\ files
 
  90 \-\-min\-filesize\ SIZE\ \ \ \ \ \ \ \ \ \ \ \ \ \ Do\ not\ download\ any\ videos\ smaller\ than
 
  91 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SIZE\ (e.g.\ 50k\ or\ 44.6m)
 
  92 \-\-max\-filesize\ SIZE\ \ \ \ \ \ \ \ \ \ \ \ \ \ Do\ not\ download\ any\ videos\ larger\ than\ SIZE
 
  93 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (e.g.\ 50k\ or\ 44.6m)
 
  94 \-\-date\ DATE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ download\ only\ videos\ uploaded\ in\ this\ date
 
  95 \-\-datebefore\ DATE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ download\ only\ videos\ uploaded\ on\ or\ before
 
  96 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ this\ date\ (i.e.\ inclusive)
 
  97 \-\-dateafter\ DATE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ download\ only\ videos\ uploaded\ on\ or\ after
 
  98 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ this\ date\ (i.e.\ inclusive)
 
  99 \-\-min\-views\ COUNT\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Do\ not\ download\ any\ videos\ with\ less\ than
 
 100 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ COUNT\ views
 
 101 \-\-max\-views\ COUNT\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Do\ not\ download\ any\ videos\ with\ more\ than
 
 102 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ COUNT\ views
 
 103 \-\-no\-playlist\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ If\ the\ URL\ refers\ to\ a\ video\ and\ a
 
 104 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ playlist,\ download\ only\ the\ video.
 
 105 \-\-age\-limit\ YEARS\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ download\ only\ videos\ suitable\ for\ the\ given
 
 106 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ age
 
 107 \-\-download\-archive\ FILE\ \ \ \ \ \ \ \ \ \ Download\ only\ videos\ not\ listed\ in\ the
 
 108 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ archive\ file.\ Record\ the\ IDs\ of\ all
 
 109 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ downloaded\ videos\ in\ it.
 
 110 \-\-include\-ads\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Download\ advertisements\ as\ well
 
 111 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (experimental)
 
 114 .SS Download Options:
 
 118 \-r,\ \-\-rate\-limit\ LIMIT\ \ \ \ \ \ \ \ \ \ \ maximum\ download\ rate\ in\ bytes\ per\ second
 
 119 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (e.g.\ 50K\ or\ 4.2M)
 
 120 \-R,\ \-\-retries\ RETRIES\ \ \ \ \ \ \ \ \ \ \ \ number\ of\ retries\ (default\ is\ 10),\ or
 
 121 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ "infinite".
 
 122 \-\-buffer\-size\ SIZE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ size\ of\ download\ buffer\ (e.g.\ 1024\ or\ 16K)
 
 123 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (default\ is\ 1024)
 
 124 \-\-no\-resize\-buffer\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ do\ not\ automatically\ adjust\ the\ buffer
 
 125 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ size.\ By\ default,\ the\ buffer\ size\ is
 
 126 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ automatically\ resized\ from\ an\ initial\ value
 
 127 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ of\ SIZE.
 
 128 \-\-playlist\-reverse\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Download\ playlist\ videos\ in\ reverse\ order
 
 129 \-\-xattr\-set\-filesize\ \ \ \ \ \ \ \ \ \ \ \ \ (experimental)\ set\ file\ xattribute
 
 130 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ytdl.filesize\ with\ expected\ filesize
 
 131 \-\-external\-downloader\ COMMAND\ \ \ \ (experimental)\ Use\ the\ specified\ external
 
 132 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ downloader.\ Currently\ supports
 
 133 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ aria2c,curl,wget
 
 136 .SS Filesystem Options:
 
 140 \-a,\ \-\-batch\-file\ FILE\ \ \ \ \ \ \ \ \ \ \ \ file\ containing\ URLs\ to\ download\ (\[aq]\-\[aq]\ for
 
 141 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ stdin)
 
 142 \-\-id\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ use\ only\ video\ ID\ in\ file\ name
 
 143 \-o,\ \-\-output\ TEMPLATE\ \ \ \ \ \ \ \ \ \ \ \ output\ filename\ template.\ Use\ %(title)s\ to
 
 144 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ get\ the\ title,\ %(uploader)s\ for\ the
 
 145 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ uploader\ name,\ %(uploader_id)s\ for\ the
 
 146 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ uploader\ nickname\ if\ different,
 
 147 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ %(autonumber)s\ to\ get\ an\ automatically
 
 148 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ incremented\ number,\ %(ext)s\ for\ the
 
 149 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ filename\ extension,\ %(format)s\ for\ the
 
 150 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ format\ description\ (like\ "22\ \-\ 1280x720"\ or
 
 151 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ "HD"),\ %(format_id)s\ for\ the\ unique\ id\ of
 
 152 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ the\ format\ (like\ Youtube\[aq]s\ itags:\ "137"),
 
 153 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ %(upload_date)s\ for\ the\ upload\ date
 
 154 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (YYYYMMDD),\ %(extractor)s\ for\ the\ provider
 
 155 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (youtube,\ metacafe,\ etc),\ %(id)s\ for\ the
 
 156 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ video\ id,\ %(playlist_title)s,
 
 157 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ %(playlist_id)s,\ or\ %(playlist)s\ (=title\ if
 
 158 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ present,\ ID\ otherwise)\ for\ the\ playlist\ the
 
 159 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ video\ is\ in,\ %(playlist_index)s\ for\ the
 
 160 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ position\ in\ the\ playlist.\ %(height)s\ and
 
 161 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ %(width)s\ for\ the\ width\ and\ height\ of\ the
 
 162 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ video\ format.\ %(resolution)s\ for\ a\ textual
 
 163 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ description\ of\ the\ resolution\ of\ the\ video
 
 164 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ format.\ %%\ for\ a\ literal\ percent.\ Use\ \-\ to
 
 165 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ output\ to\ stdout.\ Can\ also\ be\ used\ to
 
 166 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ download\ to\ a\ different\ directory,\ for
 
 167 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ example\ with\ \-o\ \[aq]/my/downloads/%(uploader)s
 
 168 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ /%(title)s\-%(id)s.%(ext)s\[aq]\ .
 
 169 \-\-autonumber\-size\ NUMBER\ \ \ \ \ \ \ \ \ Specifies\ the\ number\ of\ digits\ in
 
 170 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ %(autonumber)s\ when\ it\ is\ present\ in\ output
 
 171 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ filename\ template\ or\ \-\-auto\-number\ option
 
 172 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ is\ given
 
 173 \-\-restrict\-filenames\ \ \ \ \ \ \ \ \ \ \ \ \ Restrict\ filenames\ to\ only\ ASCII
 
 174 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ characters,\ and\ avoid\ "&"\ and\ spaces\ in
 
 175 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ filenames
 
 176 \-A,\ \-\-auto\-number\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ [deprecated;\ use\ \ \-o
 
 177 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ "%(autonumber)s\-%(title)s.%(ext)s"\ ]\ number
 
 178 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ downloaded\ files\ starting\ from\ 00000
 
 179 \-t,\ \-\-title\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ [deprecated]\ use\ title\ in\ file\ name
 
 180 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (default)
 
 181 \-l,\ \-\-literal\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ [deprecated]\ alias\ of\ \-\-title
 
 182 \-w,\ \-\-no\-overwrites\ \ \ \ \ \ \ \ \ \ \ \ \ \ do\ not\ overwrite\ files
 
 183 \-c,\ \-\-continue\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ force\ resume\ of\ partially\ downloaded\ files.
 
 184 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ By\ default,\ youtube\-dl\ will\ resume
 
 185 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ downloads\ if\ possible.
 
 186 \-\-no\-continue\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ do\ not\ resume\ partially\ downloaded\ files
 
 187 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (restart\ from\ beginning)
 
 188 \-\-no\-part\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ do\ not\ use\ .part\ files\ \-\ write\ directly
 
 189 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ into\ output\ file
 
 190 \-\-no\-mtime\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ do\ not\ use\ the\ Last\-modified\ header\ to\ set
 
 191 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ the\ file\ modification\ time
 
 192 \-\-write\-description\ \ \ \ \ \ \ \ \ \ \ \ \ \ write\ video\ description\ to\ a\ .description
 
 193 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ file
 
 194 \-\-write\-info\-json\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ write\ video\ metadata\ to\ a\ .info.json\ file
 
 195 \-\-write\-annotations\ \ \ \ \ \ \ \ \ \ \ \ \ \ write\ video\ annotations\ to\ a\ .annotation
 
 196 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ file
 
 197 \-\-load\-info\ FILE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ json\ file\ containing\ the\ video\ information
 
 198 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (created\ with\ the\ "\-\-write\-json"\ option)
 
 199 \-\-cookies\ FILE\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ file\ to\ read\ cookies\ from\ and\ dump\ cookie
 
 200 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ jar\ in
 
 201 \-\-cache\-dir\ DIR\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Location\ in\ the\ filesystem\ where\ youtube\-dl
 
 202 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ can\ store\ some\ downloaded\ information
 
 203 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ permanently.\ By\ default\ $XDG_CACHE_HOME
 
 204 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ /youtube\-dl\ or\ ~/.cache/youtube\-dl\ .\ At\ the
 
 205 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ moment,\ only\ YouTube\ player\ files\ (for
 
 206 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ videos\ with\ obfuscated\ signatures)\ are
 
 207 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ cached,\ but\ that\ may\ change.
 
 208 \-\-no\-cache\-dir\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Disable\ filesystem\ caching
 
 209 \-\-rm\-cache\-dir\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Delete\ all\ filesystem\ cache\ files
 
 212 .SS Thumbnail images:
 
 216 \-\-write\-thumbnail\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ write\ thumbnail\ image\ to\ disk
 
 217 \-\-write\-all\-thumbnails\ \ \ \ \ \ \ \ \ \ \ write\ all\ thumbnail\ image\ formats\ to\ disk
 
 218 \-\-list\-thumbnails\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Simulate\ and\ list\ all\ available\ thumbnail
 
 219 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ formats
 
 222 .SS Verbosity / Simulation Options:
 
 226 \-q,\ \-\-quiet\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ activates\ quiet\ mode
 
 227 \-\-no\-warnings\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Ignore\ warnings
 
 228 \-s,\ \-\-simulate\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ do\ not\ download\ the\ video\ and\ do\ not\ write
 
 229 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ anything\ to\ disk
 
 230 \-\-skip\-download\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ do\ not\ download\ the\ video
 
 231 \-g,\ \-\-get\-url\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ simulate,\ quiet\ but\ print\ URL
 
 232 \-e,\ \-\-get\-title\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ simulate,\ quiet\ but\ print\ title
 
 233 \-\-get\-id\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ simulate,\ quiet\ but\ print\ id
 
 234 \-\-get\-thumbnail\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ simulate,\ quiet\ but\ print\ thumbnail\ URL
 
 235 \-\-get\-description\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ simulate,\ quiet\ but\ print\ video\ description
 
 236 \-\-get\-duration\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ simulate,\ quiet\ but\ print\ video\ length
 
 237 \-\-get\-filename\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ simulate,\ quiet\ but\ print\ output\ filename
 
 238 \-\-get\-format\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ simulate,\ quiet\ but\ print\ output\ format
 
 239 \-j,\ \-\-dump\-json\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ simulate,\ quiet\ but\ print\ JSON\ information.
 
 240 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ See\ \-\-output\ for\ a\ description\ of\ available
 
 241 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ keys.
 
 242 \-J,\ \-\-dump\-single\-json\ \ \ \ \ \ \ \ \ \ \ simulate,\ quiet\ but\ print\ JSON\ information
 
 243 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ for\ each\ command\-line\ argument.\ If\ the\ URL
 
 244 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ refers\ to\ a\ playlist,\ dump\ the\ whole
 
 245 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ playlist\ information\ in\ a\ single\ line.
 
 246 \-\-print\-json\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Be\ quiet\ and\ print\ the\ video\ information\ as
 
 247 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ JSON\ (video\ is\ still\ being\ downloaded).
 
 248 \-\-newline\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ output\ progress\ bar\ as\ new\ lines
 
 249 \-\-no\-progress\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ do\ not\ print\ progress\ bar
 
 250 \-\-console\-title\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ display\ progress\ in\ console\ titlebar
 
 251 \-v,\ \-\-verbose\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ print\ various\ debugging\ information
 
 252 \-\-dump\-intermediate\-pages\ \ \ \ \ \ \ \ print\ downloaded\ pages\ to\ debug\ problems
 
 253 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (very\ verbose)
 
 254 \-\-write\-pages\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Write\ downloaded\ intermediary\ pages\ to
 
 255 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ files\ in\ the\ current\ directory\ to\ debug
 
 256 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ problems
 
 257 \-\-print\-traffic\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Display\ sent\ and\ read\ HTTP\ traffic
 
 258 \-C,\ \-\-call\-home\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Contact\ the\ youtube\-dl\ server\ for
 
 259 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ debugging.
 
 260 \-\-no\-call\-home\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Do\ NOT\ contact\ the\ youtube\-dl\ server\ for
 
 261 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ debugging.
 
 268 \-\-encoding\ ENCODING\ \ \ \ \ \ \ \ \ \ \ \ \ \ Force\ the\ specified\ encoding\ (experimental)
 
 269 \-\-no\-check\-certificate\ \ \ \ \ \ \ \ \ \ \ Suppress\ HTTPS\ certificate\ validation.
 
 270 \-\-prefer\-insecure\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Use\ an\ unencrypted\ connection\ to\ retrieve
 
 271 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ information\ about\ the\ video.\ (Currently
 
 272 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ supported\ only\ for\ YouTube)
 
 273 \-\-user\-agent\ UA\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ specify\ a\ custom\ user\ agent
 
 274 \-\-referer\ URL\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ specify\ a\ custom\ referer,\ use\ if\ the\ video
 
 275 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ access\ is\ restricted\ to\ one\ domain
 
 276 \-\-add\-header\ FIELD:VALUE\ \ \ \ \ \ \ \ \ specify\ a\ custom\ HTTP\ header\ and\ its\ value,
 
 277 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ separated\ by\ a\ colon\ \[aq]:\[aq].\ You\ can\ use\ this
 
 278 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ option\ multiple\ times
 
 279 \-\-bidi\-workaround\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Work\ around\ terminals\ that\ lack
 
 280 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ bidirectional\ text\ support.\ Requires\ bidiv
 
 281 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ or\ fribidi\ executable\ in\ PATH
 
 282 \-\-sleep\-interval\ SECONDS\ \ \ \ \ \ \ \ \ Number\ of\ seconds\ to\ sleep\ before\ each
 
 283 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ download.
 
 286 .SS Video Format Options:
 
 290 \-f,\ \-\-format\ FORMAT\ \ \ \ \ \ \ \ \ \ \ \ \ \ video\ format\ code,\ specify\ the\ order\ of
 
 291 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ preference\ using\ slashes,\ as\ in\ \-f\ 22/17/18
 
 292 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ .\ \ Instead\ of\ format\ codes,\ you\ can\ select
 
 293 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ by\ extension\ for\ the\ extensions\ aac,\ m4a,
 
 294 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ mp3,\ mp4,\ ogg,\ wav,\ webm.\ You\ can\ also\ use
 
 295 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ the\ special\ names\ "best",\ "bestvideo",
 
 296 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ "bestaudio",\ "worst".\ \ You\ can\ filter\ the
 
 297 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ video\ results\ by\ putting\ a\ condition\ in
 
 298 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ brackets,\ as\ in\ \-f\ "best[height=720]"\ (or
 
 299 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \-f\ "[filesize>10M]").\ \ This\ works\ for
 
 300 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ filesize,\ height,\ width,\ tbr,\ abr,\ vbr,\ and
 
 301 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ fps\ and\ the\ comparisons\ <,\ <=,\ >,\ >=,\ =,\ !=
 
 302 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ .\ Formats\ for\ which\ the\ value\ is\ not\ known
 
 303 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ are\ excluded\ unless\ you\ put\ a\ question\ mark
 
 304 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (?)\ after\ the\ operator.\ You\ can\ combine
 
 305 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ format\ filters,\ so\ \ \-f\ "[height\ <=?
 
 306 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 720][tbr>500]"\ selects\ up\ to\ 720p\ videos
 
 307 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (or\ videos\ where\ the\ height\ is\ not\ known)
 
 308 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ with\ a\ bitrate\ of\ at\ least\ 500\ KBit/s.\ By
 
 309 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ default,\ youtube\-dl\ will\ pick\ the\ best
 
 310 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ quality.\ Use\ commas\ to\ download\ multiple
 
 311 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ audio\ formats,\ such\ as\ \-f
 
 312 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 136/137/mp4/bestvideo,140/m4a/bestaudio.
 
 313 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ You\ can\ merge\ the\ video\ and\ audio\ of\ two
 
 314 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ formats\ into\ a\ single\ file\ using\ \-f\ <video\-
 
 315 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ format>+<audio\-format>\ (requires\ ffmpeg\ or
 
 316 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ avconv),\ for\ example\ \-f
 
 317 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ bestvideo+bestaudio.
 
 318 \-\-all\-formats\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ download\ all\ available\ video\ formats
 
 319 \-\-prefer\-free\-formats\ \ \ \ \ \ \ \ \ \ \ \ prefer\ free\ video\ formats\ unless\ a\ specific
 
 320 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ one\ is\ requested
 
 321 \-\-max\-quality\ FORMAT\ \ \ \ \ \ \ \ \ \ \ \ \ highest\ quality\ format\ to\ download
 
 322 \-F,\ \-\-list\-formats\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ list\ all\ available\ formats
 
 323 \-\-youtube\-skip\-dash\-manifest\ \ \ \ \ Do\ not\ download\ the\ DASH\ manifest\ on
 
 324 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ YouTube\ videos
 
 325 \-\-merge\-output\-format\ FORMAT\ \ \ \ \ If\ a\ merge\ is\ required\ (e.g.
 
 326 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ bestvideo+bestaudio),\ output\ to\ given
 
 327 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ container\ format.\ One\ of\ mkv,\ mp4,\ ogg,
 
 328 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ webm,\ flv.Ignored\ if\ no\ merge\ is\ required
 
 331 .SS Subtitle Options:
 
 335 \-\-write\-sub\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ write\ subtitle\ file
 
 336 \-\-write\-auto\-sub\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ write\ automatic\ subtitle\ file\ (youtube
 
 337 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ only)
 
 338 \-\-all\-subs\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ downloads\ all\ the\ available\ subtitles\ of
 
 339 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ the\ video
 
 340 \-\-list\-subs\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ lists\ all\ available\ subtitles\ for\ the\ video
 
 341 \-\-sub\-format\ FORMAT\ \ \ \ \ \ \ \ \ \ \ \ \ \ subtitle\ format\ (default=srt)\ ([sbv/vtt]
 
 342 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ youtube\ only)
 
 343 \-\-sub\-lang\ LANGS\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ languages\ of\ the\ subtitles\ to\ download
 
 344 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (optional)\ separated\ by\ commas,\ use\ IETF
 
 345 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ language\ tags\ like\ \[aq]en,pt\[aq]
 
 348 .SS Authentication Options:
 
 352 \-u,\ \-\-username\ USERNAME\ \ \ \ \ \ \ \ \ \ login\ with\ this\ account\ ID
 
 353 \-p,\ \-\-password\ PASSWORD\ \ \ \ \ \ \ \ \ \ account\ password.\ If\ this\ option\ is\ left
 
 354 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ out,\ youtube\-dl\ will\ ask\ interactively.
 
 355 \-2,\ \-\-twofactor\ TWOFACTOR\ \ \ \ \ \ \ \ two\-factor\ auth\ code
 
 356 \-n,\ \-\-netrc\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ use\ .netrc\ authentication\ data
 
 357 \-\-video\-password\ PASSWORD\ \ \ \ \ \ \ \ video\ password\ (vimeo,\ smotri)
 
 360 .SS Post\-processing Options:
 
 364 \-x,\ \-\-extract\-audio\ \ \ \ \ \ \ \ \ \ \ \ \ \ convert\ video\ files\ to\ audio\-only\ files
 
 365 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (requires\ ffmpeg\ or\ avconv\ and\ ffprobe\ or
 
 366 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ avprobe)
 
 367 \-\-audio\-format\ FORMAT\ \ \ \ \ \ \ \ \ \ \ \ "best",\ "aac",\ "vorbis",\ "mp3",\ "m4a",
 
 368 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ "opus",\ or\ "wav";\ "best"\ by\ default
 
 369 \-\-audio\-quality\ QUALITY\ \ \ \ \ \ \ \ \ \ ffmpeg/avconv\ audio\ quality\ specification,
 
 370 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ insert\ a\ value\ between\ 0\ (better)\ and\ 9
 
 371 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (worse)\ for\ VBR\ or\ a\ specific\ bitrate\ like
 
 372 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 128K\ (default\ 5)
 
 373 \-\-recode\-video\ FORMAT\ \ \ \ \ \ \ \ \ \ \ \ Encode\ the\ video\ to\ another\ format\ if
 
 374 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ necessary\ (currently\ supported:
 
 375 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ mp4|flv|ogg|webm|mkv)
 
 376 \-k,\ \-\-keep\-video\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ keeps\ the\ video\ file\ on\ disk\ after\ the
 
 377 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ post\-processing;\ the\ video\ is\ erased\ by
 
 378 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ default
 
 379 \-\-no\-post\-overwrites\ \ \ \ \ \ \ \ \ \ \ \ \ do\ not\ overwrite\ post\-processed\ files;\ the
 
 380 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ post\-processed\ files\ are\ overwritten\ by
 
 381 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ default
 
 382 \-\-embed\-subs\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ embed\ subtitles\ in\ the\ video\ (only\ for\ mp4
 
 383 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ videos)
 
 384 \-\-embed\-thumbnail\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ embed\ thumbnail\ in\ the\ audio\ as\ cover\ art
 
 385 \-\-add\-metadata\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ write\ metadata\ to\ the\ video\ file
 
 386 \-\-xattrs\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ write\ metadata\ to\ the\ video\ file\[aq]s\ xattrs
 
 387 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (using\ dublin\ core\ and\ xdg\ standards)
 
 388 \-\-fixup\ POLICY\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Automatically\ correct\ known\ faults\ of\ the
 
 389 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ file.\ One\ of\ never\ (do\ nothing),\ warn\ (only
 
 390 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ emit\ a\ warning),\ detect_or_warn(the
 
 391 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ default;\ fix\ file\ if\ we\ can,\ warn
 
 392 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ otherwise)
 
 393 \-\-prefer\-avconv\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Prefer\ avconv\ over\ ffmpeg\ for\ running\ the
 
 394 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ postprocessors\ (default)
 
 395 \-\-prefer\-ffmpeg\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Prefer\ ffmpeg\ over\ avconv\ for\ running\ the
 
 396 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ postprocessors
 
 397 \-\-exec\ CMD\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Execute\ a\ command\ on\ the\ file\ after
 
 398 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ downloading,\ similar\ to\ find\[aq]s\ \-exec
 
 399 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ syntax.\ Example:\ \-\-exec\ \[aq]adb\ push\ {}
 
 400 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ /sdcard/Music/\ &&\ rm\ {}\[aq]
 
 405 You can configure youtube\-dl by placing default arguments (such as
 
 406 \f[C]\-\-extract\-audio\ \-\-no\-mtime\f[] to always extract the audio
 
 407 and not copy the mtime) into \f[C]/etc/youtube\-dl.conf\f[] and/or
 
 408 \f[C]~/.config/youtube\-dl/config\f[].
 
 409 On Windows, the configuration file locations are
 
 410 \f[C]%APPDATA%\\youtube\-dl\\config.txt\f[] and
 
 411 \f[C]C:\\Users\\<user\ name>\\youtube\-dl.conf\f[].
 
 414 The \f[C]\-o\f[] option allows users to indicate a template for the
 
 416 The basic usage is not to set any template arguments when downloading a
 
 418 \f[C]youtube\-dl\ \-o\ funny_video.flv\ "http://some/video"\f[].
 
 419 However, it may contain special sequences that will be replaced when
 
 420 downloading each video.
 
 421 The special sequences have the format \f[C]%(NAME)s\f[].
 
 422 To clarify, that is a percent symbol followed by a name in parenthesis,
 
 423 followed by a lowercase S.
 
 426 \f[C]id\f[]: The sequence will be replaced by the video identifier.
 
 428 \f[C]url\f[]: The sequence will be replaced by the video URL.
 
 430 \f[C]uploader\f[]: The sequence will be replaced by the nickname of the
 
 431 person who uploaded the video.
 
 433 \f[C]upload_date\f[]: The sequence will be replaced by the upload date
 
 436 \f[C]title\f[]: The sequence will be replaced by the video title.
 
 438 \f[C]ext\f[]: The sequence will be replaced by the appropriate extension
 
 441 \f[C]epoch\f[]: The sequence will be replaced by the Unix epoch when
 
 444 \f[C]autonumber\f[]: The sequence will be replaced by a five\-digit
 
 445 number that will be increased with each download, starting at zero.
 
 447 \f[C]playlist\f[]: The name or the id of the playlist that contains the
 
 450 \f[C]playlist_index\f[]: The index of the video in the playlist, a
 
 453 The current default template is \f[C]%(title)s\-%(id)s.%(ext)s\f[].
 
 455 In some cases, you don\[aq]t want special characters such as äø, spaces,
 
 456 or &, such as when transferring the downloaded filename to a Windows
 
 457 system or the filename through an 8bit\-unsafe channel.
 
 458 In these cases, add the \f[C]\-\-restrict\-filenames\f[] flag to get a
 
 463 $\ youtube\-dl\ \-\-get\-filename\ \-o\ "%(title)s.%(ext)s"\ BaW_jenozKc
 
 464 youtube\-dl\ test\ video\ \[aq]\[aq]_Ƥāš.mp4\ \ \ \ #\ All\ kinds\ of\ weird\ characters
 
 465 $\ youtube\-dl\ \-\-get\-filename\ \-o\ "%(title)s.%(ext)s"\ BaW_jenozKc\ \-\-restrict\-filenames
 
 466 youtube\-dl_test_video_.mp4\ \ \ \ \ \ \ \ \ \ #\ A\ simple\ file\ name
 
 471 Videos can be filtered by their upload date using the options
 
 472 \f[C]\-\-date\f[], \f[C]\-\-datebefore\f[] or \f[C]\-\-dateafter\f[],
 
 473 they accept dates in two formats:
 
 475 Absolute dates: Dates in the format \f[C]YYYYMMDD\f[].
 
 477 Relative dates: Dates in the format
 
 478 \f[C](now|today)[+\-][0\-9](day|week|month|year)(s)?\f[]
 
 484 #\ Download\ only\ the\ videos\ uploaded\ in\ the\ last\ 6\ months
 
 485 $\ youtube\-dl\ \-\-dateafter\ now\-6months
 
 487 #\ Download\ only\ the\ videos\ uploaded\ on\ January\ 1,\ 1970
 
 488 $\ youtube\-dl\ \-\-date\ 19700101
 
 490 $\ #\ will\ only\ download\ the\ videos\ uploaded\ in\ the\ 200x\ decade
 
 491 $\ youtube\-dl\ \-\-dateafter\ 20000101\ \-\-datebefore\ 20091231
 
 495 .SS How do I update youtube\-dl?
 
 497 If you\[aq]ve followed our manual installation
 
 498 instructions (http://rg3.github.io/youtube-dl/download.html), you can
 
 499 simply run \f[C]youtube\-dl\ \-U\f[] (or, on Linux,
 
 500 \f[C]sudo\ youtube\-dl\ \-U\f[]).
 
 502 If you have used pip, a simple
 
 503 \f[C]sudo\ pip\ install\ \-U\ youtube\-dl\f[] is sufficient to update.
 
 505 If you have installed youtube\-dl using a package manager like
 
 506 \f[I]apt\-get\f[] or \f[I]yum\f[], use the standard system update
 
 508 Note that distribution packages are often outdated.
 
 509 As a rule of thumb, youtube\-dl releases at least once a month, and
 
 510 often weekly or even daily.
 
 511 Simply go to http://yt\-dl.org/ to find out the current version.
 
 512 Unfortunately, there is nothing we youtube\-dl developers can do if your
 
 513 distributions serves a really outdated version.
 
 514 You can (and should) complain to your distribution in their bugtracker
 
 517 As a last resort, you can also uninstall the version installed by your
 
 518 package manager and follow our manual installation instructions.
 
 519 For that, remove the distribution\[aq]s package, with a line like
 
 523 sudo\ apt\-get\ remove\ \-y\ youtube\-dl
 
 527 Afterwards, simply follow our manual installation
 
 528 instructions (http://rg3.github.io/youtube-dl/download.html):
 
 532 sudo\ wget\ https://yt\-dl.org/latest/youtube\-dl\ \-O\ /usr/local/bin/youtube\-dl
 
 533 sudo\ chmod\ a+x\ /usr/local/bin/youtube\-dl
 
 538 Again, from then on you\[aq]ll be able to update with
 
 539 \f[C]sudo\ youtube\-dl\ \-U\f[].
 
 540 .SS I\[aq]m getting an error
 
 541 \f[C]Unable\ to\ extract\ OpenGraph\ title\f[] on YouTube playlists
 
 543 YouTube changed their playlist format in March 2014 and later on, so
 
 544 you\[aq]ll need at least youtube\-dl 2014.07.25 to download all YouTube
 
 547 If you have installed youtube\-dl with a package manager, pip, setup.py
 
 548 or a tarball, please use that to update.
 
 549 Note that Ubuntu packages do not seem to get updated anymore.
 
 550 Since we are not affiliated with Ubuntu, there is little we can do.
 
 552 bugs (https://bugs.launchpad.net/ubuntu/+source/youtube-dl/+filebug) to
 
 554 guys (mailto:ubuntu-motu@lists.ubuntu.com?subject=outdated%20version%20of%20youtube-dl)
 
 555 \- all they have to do is update the package to a somewhat recent
 
 557 See above for a way to update.
 
 558 .SS Do I always have to pass in \f[C]\-\-max\-quality\ FORMAT\f[], or
 
 561 By default, youtube\-dl intends to have the best options (incidentally,
 
 562 if you have a convincing case that these should be different, please
 
 563 file an issue where you explain that (https://yt-dl.org/bug)).
 
 564 Therefore, it is unnecessary and sometimes harmful to copy long option
 
 565 strings from webpages.
 
 566 In particular, \f[C]\-\-max\-quality\f[] \f[I]limits\f[] the video
 
 567 quality (so if you want the best quality, do NOT pass it in), and the
 
 568 only option out of \f[C]\-citw\f[] that is regularly useful is
 
 570 .SS Can you please put the \-b option back?
 
 572 Most people asking this question are not aware that youtube\-dl now
 
 573 defaults to downloading the highest available quality as reported by
 
 574 YouTube, which will be 1080p or 720p in some cases, so you no longer
 
 575 need the \f[C]\-b\f[] option.
 
 576 For some specific videos, maybe YouTube does not report them to be
 
 577 available in a specific high quality format you\[aq]re interested in.
 
 578 In that case, simply request it with the \f[C]\-f\f[] option and
 
 579 youtube\-dl will try to download it.
 
 580 .SS I get HTTP error 402 when trying to download a video. What\[aq]s
 
 583 Apparently YouTube requires you to pass a CAPTCHA test if you download
 
 585 We\[aq]re considering to provide a way to let you solve the
 
 586 CAPTCHA (https://github.com/rg3/youtube-dl/issues/154), but at the
 
 587 moment, your best course of action is pointing a webbrowser to the
 
 588 youtube URL, solving the CAPTCHA, and restart youtube\-dl.
 
 589 .SS I have downloaded a video but how can I play it?
 
 591 Once the video is fully downloaded, use any video player, such as
 
 592 vlc (http://www.videolan.org) or mplayer (http://www.mplayerhq.hu/).
 
 593 .SS I extracted a video URL with \-g, but it does not play on another
 
 594 machine / in my webbrowser.
 
 596 It depends a lot on the service.
 
 597 In many cases, requests for the video (to download/play it) must come
 
 598 from the same IP address and with the same cookies.
 
 599 Use the \f[C]\-\-cookies\f[] option to write the required cookies into a
 
 600 file, and advise your downloader to read cookies from that file.
 
 601 Some sites also require a common user agent to be used, use
 
 602 \f[C]\-\-dump\-user\-agent\f[] to see the one in use by youtube\-dl.
 
 604 It may be beneficial to use IPv6; in some cases, the restrictions are
 
 605 only applied to IPv4.
 
 606 Some services (sometimes only for a subset of videos) do not restrict
 
 607 the video URL by IP address, cookie, or user\-agent, but these are the
 
 608 exception rather than the rule.
 
 610 Please bear in mind that some URL protocols are \f[B]not\f[] supported
 
 611 by browsers out of the box, including RTMP.
 
 612 If you are using \-g, your own downloader must support these as well.
 
 614 If you want to play the video on a machine that is not running
 
 615 youtube\-dl, you can relay the video content from the machine that runs
 
 617 You can use \f[C]\-o\ \-\f[] to let youtube\-dl stream a video to
 
 618 stdout, or simply allow the player to download the files written by
 
 620 .SS ERROR: no fmt_url_map or conn information found in video info
 
 622 youtube has switched to a new video info format in July 2011 which is
 
 623 not supported by old versions of youtube\-dl.
 
 624 You can update youtube\-dl with \f[C]sudo\ youtube\-dl\ \-\-update\f[].
 
 625 .SS ERROR: unable to download video
 
 627 youtube requires an additional signature since September 2012 which is
 
 628 not supported by old versions of youtube\-dl.
 
 629 You can update youtube\-dl with \f[C]sudo\ youtube\-dl\ \-\-update\f[].
 
 630 .SS SyntaxError: Non\-ASCII character
 
 636 File\ "youtube\-dl",\ line\ 2
 
 637 SyntaxError:\ Non\-ASCII\ character\ \[aq]\\x93\[aq]\ ...
 
 641 means you\[aq]re using an outdated version of Python.
 
 642 Please update to Python 2.6 or 2.7.
 
 643 .SS What is this binary file? Where has the code gone?
 
 645 Since June 2012 (#342) youtube\-dl is packed as an executable zipfile,
 
 646 simply unzip it (might need renaming to \f[C]youtube\-dl.zip\f[] first
 
 647 on some systems) or clone the git repository, as laid out above.
 
 648 If you modify the code, you can run it by executing the
 
 649 \f[C]__main__.py\f[] file.
 
 650 To recompile the executable, run \f[C]make\ youtube\-dl\f[].
 
 651 .SS The exe throws a \f[I]Runtime error from Visual C++\f[]
 
 653 To run the exe you need to install first the Microsoft Visual C++ 2008
 
 655 Package (http://www.microsoft.com/en-us/download/details.aspx?id=29).
 
 656 .SS On Windows, how should I set up ffmpeg and youtube\-dl? Where should
 
 659 If you put youtube\-dl and ffmpeg in the same directory that you\[aq]re
 
 660 running the command from, it will work, but that\[aq]s rather
 
 663 To make a different directory work \- either for ffmpeg, or for
 
 664 youtube\-dl, or for both \- simply create the directory (say,
 
 665 \f[C]C:\\bin\f[], or \f[C]C:\\Users\\<User\ name>\\bin\f[]), put all the
 
 666 executables directly in there, and then set your PATH environment
 
 667 variable (https://www.java.com/en/download/help/path.xml) to include
 
 670 From then on, after restarting your shell, you will be able to access
 
 671 both youtube\-dl and ffmpeg (and youtube\-dl will be able to find
 
 672 ffmpeg) by simply typing \f[C]youtube\-dl\f[] or \f[C]ffmpeg\f[], no
 
 673 matter what directory you\[aq]re in.
 
 674 .SS How do I put downloads into a specific folder?
 
 676 Use the \f[C]\-o\f[] to specify an output template (#output-template),
 
 677 for example \f[C]\-o\ "/home/user/videos/%(title)s\-%(id)s.%(ext)s"\f[].
 
 678 If you want this for all of your downloads, put the option into your
 
 679 configuration file (#configuration).
 
 680 .SS How do I download a video starting with a \f[C]\-\f[] ?
 
 682 Either prepend \f[C]http://www.youtube.com/watch?v=\f[] or separate the
 
 683 ID from the options with \f[C]\-\-\f[]:
 
 687 youtube\-dl\ \-\-\ \-wNyEUrxzFU
 
 688 youtube\-dl\ "http://www.youtube.com/watch?v=\-wNyEUrxzFU"
 
 691 .SS Can you add support for this anime video site, or site which shows
 
 692 current movies for free?
 
 694 As a matter of policy (as well as legality), youtube\-dl does not
 
 695 include support for services that specialize in infringing copyright.
 
 696 As a rule of thumb, if you cannot easily find a video that the service
 
 697 is quite obviously allowed to distribute (i.e.
 
 698 that has been uploaded by the creator, the creator\[aq]s distributor, or
 
 699 is published under a free license), the service is probably unfit for
 
 700 inclusion to youtube\-dl.
 
 702 A note on the service that they don\[aq]t host the infringing content,
 
 703 but just link to those who do, is evidence that the service should
 
 704 \f[B]not\f[] be included into youtube\-dl.
 
 705 The same goes for any DMCA note when the whole front page of the service
 
 706 is filled with videos they are not allowed to distribute.
 
 707 A "fair use" note is equally unconvincing if the service shows
 
 708 copyright\-protected videos in full without authorization.
 
 710 Support requests for services that \f[B]do\f[] purchase the rights to
 
 711 distribute their content are perfectly fine though.
 
 712 If in doubt, you can simply include a source that mentions the
 
 713 legitimate purchase of content.
 
 714 .SS How can I detect whether a given URL is supported by youtube\-dl?
 
 716 For one, have a look at the list of supported
 
 717 sites (docs/supportedsites.md).
 
 718 Note that it can sometimes happen that the site changes its URL scheme
 
 719 (say, from http://example.com/v/1234567 to http://example.com/v/1234567
 
 720 ) and youtube\-dl reports an URL of a service in that list as
 
 722 In that case, simply report a bug.
 
 724 It is \f[I]not\f[] possible to detect whether a URL is supported or not.
 
 725 That\[aq]s because youtube\-dl contains a generic extractor which
 
 726 matches \f[B]all\f[] URLs.
 
 727 You may be tempted to disable, exclude, or remove the generic extractor,
 
 728 but the generic extractor not only allows users to extract videos from
 
 729 lots of websites that embed a video from another service, but may also
 
 730 be used to extract video from a service that it\[aq]s hosting itself.
 
 731 Therefore, we neither recommend nor support disabling, excluding, or
 
 732 removing the generic extractor.
 
 734 If you want to find out whether a given URL is supported, simply call
 
 736 If you get no videos back, chances are the URL is either not referring
 
 737 to a video or unsupported.
 
 738 You can find out which by examining the output (if you run youtube\-dl
 
 739 on the console) or catching an \f[C]UnsupportedError\f[] exception if
 
 740 you run it from a Python program.
 
 741 .SH DEVELOPER INSTRUCTIONS
 
 743 Most users do not need to build youtube\-dl and can download the
 
 744 builds (http://rg3.github.io/youtube-dl/download.html) or get them from
 
 747 To run youtube\-dl as a developer, you don\[aq]t need to build anything
 
 753 python\ \-m\ youtube_dl
 
 757 To run the test, simply invoke your favorite test runner, or execute a
 
 758 test file directly; any of the following work:
 
 762 python\ \-m\ unittest\ discover
 
 763 python\ test/test_download.py
 
 768 If you want to create a build of youtube\-dl yourself, you\[aq]ll need
 
 779 .SS Adding support for a new site
 
 781 If you want to add support for a new site, you can follow this quick
 
 782 list (assuming your service is called \f[C]yourextractor\f[]):
 
 784 Fork this repository (https://github.com/rg3/youtube-dl/fork)
 
 786 Check out the source code with
 
 787 \f[C]git\ clone\ git\@github.com:YOUR_GITHUB_USERNAME/youtube\-dl.git\f[]
 
 789 Start a new git branch with
 
 790 \f[C]cd\ youtube\-dl;\ git\ checkout\ \-b\ yourextractor\f[]
 
 792 Start with this simple template and save it to
 
 793 \f[C]youtube_dl/extractor/yourextractor.py\f[]:
 
 799 from\ __future__\ import\ unicode_literals
 
 801 from\ .common\ import\ InfoExtractor
 
 804 class\ YourExtractorIE(InfoExtractor):
 
 805 \ \ \ \ _VALID_URL\ =\ r\[aq]https?://(?:www\\.)?yourextractor\\.com/watch/(?P<id>[0\-9]+)\[aq]
 
 807 \ \ \ \ \ \ \ \ \[aq]url\[aq]:\ \[aq]http://yourextractor.com/watch/42\[aq],
 
 808 \ \ \ \ \ \ \ \ \[aq]md5\[aq]:\ \[aq]TODO:\ md5\ sum\ of\ the\ first\ 10241\ bytes\ of\ the\ video\ file\ (use\ \-\-test)\[aq],
 
 809 \ \ \ \ \ \ \ \ \[aq]info_dict\[aq]:\ {
 
 810 \ \ \ \ \ \ \ \ \ \ \ \ \[aq]id\[aq]:\ \[aq]42\[aq],
 
 811 \ \ \ \ \ \ \ \ \ \ \ \ \[aq]ext\[aq]:\ \[aq]mp4\[aq],
 
 812 \ \ \ \ \ \ \ \ \ \ \ \ \[aq]title\[aq]:\ \[aq]Video\ title\ goes\ here\[aq],
 
 813 \ \ \ \ \ \ \ \ \ \ \ \ \[aq]thumbnail\[aq]:\ \[aq]re:^https?://.*\\.jpg$\[aq],
 
 814 \ \ \ \ \ \ \ \ \ \ \ \ #\ TODO\ more\ properties,\ either\ as:
 
 815 \ \ \ \ \ \ \ \ \ \ \ \ #\ *\ A\ value
 
 816 \ \ \ \ \ \ \ \ \ \ \ \ #\ *\ MD5\ checksum;\ start\ the\ string\ with\ md5:
 
 817 \ \ \ \ \ \ \ \ \ \ \ \ #\ *\ A\ regular\ expression;\ start\ the\ string\ with\ re:
 
 818 \ \ \ \ \ \ \ \ \ \ \ \ #\ *\ Any\ Python\ type\ (for\ example\ int\ or\ float)
 
 822 \ \ \ \ def\ _real_extract(self,\ url):
 
 823 \ \ \ \ \ \ \ \ video_id\ =\ self._match_id(url)
 
 824 \ \ \ \ \ \ \ \ webpage\ =\ self._download_webpage(url,\ video_id)
 
 826 \ \ \ \ \ \ \ \ #\ TODO\ more\ code\ goes\ here,\ for\ example\ ...
 
 827 \ \ \ \ \ \ \ \ title\ =\ self._html_search_regex(r\[aq]<h1>(.*?)</h1>\[aq],\ webpage,\ \[aq]title\[aq])
 
 829 \ \ \ \ \ \ \ \ return\ {
 
 830 \ \ \ \ \ \ \ \ \ \ \ \ \[aq]id\[aq]:\ video_id,
 
 831 \ \ \ \ \ \ \ \ \ \ \ \ \[aq]title\[aq]:\ title,
 
 832 \ \ \ \ \ \ \ \ \ \ \ \ \[aq]description\[aq]:\ self._og_search_description(webpage),
 
 833 \ \ \ \ \ \ \ \ \ \ \ \ #\ TODO\ more\ properties\ (see\ youtube_dl/extractor/common.py)
 
 840 \f[C]youtube_dl/extractor/__init__.py\f[] (https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/__init__.py).
 
 843 \f[C]python\ test/test_download.py\ TestDownload.test_YourExtractor\f[].
 
 844 This \f[I]should fail\f[] at first, but you can continually re\-run it
 
 845 until you\[aq]re done.
 
 846 If you decide to add more than one test, then rename \f[C]_TEST\f[] to
 
 847 \f[C]_TESTS\f[] and make it into a list of dictionaries.
 
 848 The tests will be then be named
 
 849 \f[C]TestDownload.test_YourExtractor\f[],
 
 850 \f[C]TestDownload.test_YourExtractor_1\f[],
 
 851 \f[C]TestDownload.test_YourExtractor_2\f[], etc.
 
 854 \f[C]youtube_dl/common/extractor/common.py\f[] (https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/common.py)
 
 855 for possible helper methods and a detailed description of what your
 
 857 return (https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/common.py#L38).
 
 858 Add tests and code for as many as you want.
 
 860 If you can, check the code with
 
 861 flake8 (https://pypi.python.org/pypi/flake8).
 
 863 When the tests pass, add (http://git-scm.com/docs/git-add) the new files
 
 864 and commit (http://git-scm.com/docs/git-commit) them and
 
 865 push (http://git-scm.com/docs/git-push) the result, like this:
 
 870 $\ git\ add\ youtube_dl/extractor/__init__.py
 
 871 $\ git\ add\ youtube_dl/extractor/yourextractor.py
 
 872 $\ git\ commit\ \-m\ \[aq][yourextractor]\ Add\ new\ extractor\[aq]
 
 873 $\ git\ push\ origin\ yourextractor
 
 878 Finally, create a pull
 
 879 request (https://help.github.com/articles/creating-a-pull-request).
 
 880 We\[aq]ll then review and merge it.
 
 882 In any case, thank you very much for your contributions!
 
 883 .SH EMBEDDING YOUTUBE\-DL
 
 885 youtube\-dl makes the best effort to be a good command\-line program,
 
 886 and thus should be callable from any programming language.
 
 887 If you encounter any problems parsing its output, feel free to create a
 
 888 report (https://github.com/rg3/youtube-dl/issues/new).
 
 890 From a Python program, you can embed youtube\-dl in a more powerful
 
 898 with\ youtube_dl.YoutubeDL(ydl_opts)\ as\ ydl:
 
 899 \ \ \ \ ydl.download([\[aq]http://www.youtube.com/watch?v=BaW_jenozKc\[aq]])
 
 903 Most likely, you\[aq]ll want to use various options.
 
 904 For a list of what can be done, have a look at
 
 905 youtube_dl/YoutubeDL.py (https://github.com/rg3/youtube-dl/blob/master/youtube_dl/YoutubeDL.py#L69).
 
 906 For a start, if you want to intercept youtube\-dl\[aq]s output, set a
 
 907 \f[C]logger\f[] object.
 
 909 Here\[aq]s a more complete example of a program that outputs only errors
 
 910 (and a short message after the download is finished), and
 
 911 downloads/converts the video to an mp3 file:
 
 918 class\ MyLogger(object):
 
 919 \ \ \ \ def\ debug(self,\ msg):
 
 922 \ \ \ \ def\ warning(self,\ msg):
 
 925 \ \ \ \ def\ error(self,\ msg):
 
 926 \ \ \ \ \ \ \ \ print(msg)
 
 930 \ \ \ \ if\ d[\[aq]status\[aq]]\ ==\ \[aq]finished\[aq]:
 
 931 \ \ \ \ \ \ \ \ print(\[aq]Done\ downloading,\ now\ converting\ ...\[aq])
 
 935 \ \ \ \ \[aq]format\[aq]:\ \[aq]bestaudio/best\[aq],
 
 936 \ \ \ \ \[aq]postprocessors\[aq]:\ [{
 
 937 \ \ \ \ \ \ \ \ \[aq]key\[aq]:\ \[aq]FFmpegExtractAudio\[aq],
 
 938 \ \ \ \ \ \ \ \ \[aq]preferredcodec\[aq]:\ \[aq]mp3\[aq],
 
 939 \ \ \ \ \ \ \ \ \[aq]preferredquality\[aq]:\ \[aq]192\[aq],
 
 941 \ \ \ \ \[aq]logger\[aq]:\ MyLogger(),
 
 942 \ \ \ \ \[aq]progress_hooks\[aq]:\ [my_hook],
 
 944 with\ youtube_dl.YoutubeDL(ydl_opts)\ as\ ydl:
 
 945 \ \ \ \ ydl.download([\[aq]http://www.youtube.com/watch?v=BaW_jenozKc\[aq]])
 
 950 Bugs and suggestions should be reported at:
 
 951 <https://github.com/rg3/youtube-dl/issues> .
 
 952 Unless you were prompted so or there is another pertinent reason (e.g.
 
 953 GitHub fails to accept the bug report), please do not send bug reports
 
 955 For discussions, join us in the irc channel #youtube\-dl on freenode.
 
 957 \f[B]Please include the full output of youtube\-dl when run with
 
 960 The output (including the first lines) contain important debugging
 
 962 Issues without the full output are often not reproducible and therefore
 
 963 do not get solved in short order, if ever.
 
 965 Please re\-read your issue once again to avoid a couple of common
 
 966 mistakes (you can and should use this as a checklist):
 
 967 .SS Is the description of the issue itself sufficient?
 
 969 We often get issue reports that we cannot really decipher.
 
 970 While in most cases we eventually get the required information after
 
 971 asking back multiple times, this poses an unnecessary drain on our
 
 973 Many contributors, including myself, are also not native speakers, so we
 
 974 may misread some parts.
 
 976 So please elaborate on what feature you are requesting, or what bug you
 
 978 Make sure that it\[aq]s obvious
 
 982 How it could be fixed
 
 984 How your proposed solution would look like
 
 986 If your report is shorter than two lines, it is almost certainly missing
 
 987 some of these, which makes it hard for us to respond to it.
 
 988 We\[aq]re often too polite to close the issue outright, but the missing
 
 989 info makes misinterpretation likely.
 
 990 As a commiter myself, I often get frustrated by these issues, since the
 
 991 only possible way for me to move forward on them is to ask for
 
 992 clarification over and over.
 
 994 For bug reports, this means that your report should contain the
 
 995 \f[I]complete\f[] output of youtube\-dl when called with the \-v flag.
 
 996 The error message you get for (most) bugs even says so, but you would
 
 997 not believe how many of our bug reports do not contain this information.
 
 999 Site support requests \f[B]must contain an example URL\f[].
 
1000 An example URL is a URL you might want to download, like
 
1001 http://www.youtube.com/watch?v=BaW_jenozKc .
 
1002 There should be an obvious video present.
 
1003 Except under very special circumstances, the main page of a video
 
1005 http://www.youtube.com/ ) is \f[I]not\f[] an example URL.
 
1006 .SS Are you using the latest version?
 
1008 Before reporting any issue, type youtube\-dl \-U.
 
1009 This should report that you\[aq]re up\-to\-date.
 
1010 About 20% of the reports we receive are already fixed, but people are
 
1011 using outdated versions.
 
1012 This goes for feature requests as well.
 
1013 .SS Is the issue already documented?
 
1015 Make sure that someone has not already opened the issue you\[aq]re
 
1017 Search at the top of the window or at
 
1018 https://github.com/rg3/youtube\-dl/search?type=Issues .
 
1019 If there is an issue, feel free to write something along the lines of
 
1020 "This affects me as well, with version 2015.01.01.
 
1021 Here is some more information on the issue: ...".
 
1022 While some issues may be old, a new post into them often spurs rapid
 
1024 .SS Why are existing options not enough?
 
1026 Before requesting a new feature, please have a quick peek at the list of
 
1028 options (https://github.com/rg3/youtube-dl/blob/master/README.md#synopsis).
 
1029 Many feature requests are for features that actually exist already!
 
1030 Please, absolutely do show off your work in the issue report and detail
 
1031 how the existing similar options do \f[I]not\f[] solve your problem.
 
1032 .SS Is there enough context in your bug report?
 
1034 People want to solve problems, and often think they do us a favor by
 
1035 breaking down their larger problems (e.g.
 
1036 wanting to skip already downloaded files) to a specific request (e.g.
 
1037 requesting us to look whether the file exists before downloading the
 
1039 However, what often happens is that they break down the problem into two
 
1040 steps: One simple, and one impossible (or extremely complicated one).
 
1042 We are then presented with a very complicated request when the original
 
1043 problem could be solved far easier, e.g.
 
1044 by recording the downloaded video IDs in a separate file.
 
1045 To avoid this, you must include the greater context where it is
 
1047 In particular, every feature request that does not consist of adding
 
1048 support for a new site should contain a use case scenario that explains
 
1049 in what situation the missing feature would be useful.
 
1050 .SS Does the issue involve one problem, and one problem only?
 
1052 Some of our users seem to think there is a limit of issues they can or
 
1054 There is no limit of issues they can or should open.
 
1055 While it may seem appealing to be able to dump all your issues into one
 
1056 ticket, that means that someone who solves one of your issues cannot
 
1057 mark the issue as closed.
 
1058 Typically, reporting a bunch of issues leads to the ticket lingering
 
1059 since nobody wants to attack that behemoth, until someone mercifully
 
1060 splits the issue into multiple ones.
 
1062 In particular, every site support request issue should only pertain to
 
1063 services at one site (generally under a common domain, but always using
 
1064 the same backend technology).
 
1065 Do not request support for vimeo user videos, Whitehouse podcasts, and
 
1066 Google Plus pages in the same issue.
 
1067 Also, make sure that you don\[aq]t post bug reports alongside feature
 
1069 As a rule of thumb, a feature request does not include outputs of
 
1070 youtube\-dl that are not immediately related to the feature at hand.
 
1071 Do not post reports of a network error alongside the request for a new
 
1073 .SS Is anyone going to need the feature?
 
1075 Only post features that you (or an incapacitated friend you can
 
1076 personally talk to) require.
 
1077 Do not post features because they seem like a good idea.
 
1078 If they are really useful, they will be requested by someone who
 
1080 .SS Is your question about youtube\-dl?
 
1082 It may sound strange, but some bug reports we receive are completely
 
1083 unrelated to youtube\-dl and relate to a different or even the
 
1084 reporter\[aq]s own application.
 
1085 Please make sure that you are actually using youtube\-dl.
 
1086 If you are using a UI for youtube\-dl, report the bug to the maintainer
 
1087 of the actual application providing the UI.
 
1088 On the other hand, if your UI for youtube\-dl fails in some way you
 
1089 believe is related to youtube\-dl, by all means, go ahead and report the
 
1093 youtube\-dl is released into the public domain by the copyright holders.
 
1095 This README file was originally written by Daniel Bolton
 
1096 (<https://github.com/dbbolton>) and is likewise released into the public