1cclive(1)                        cclive manual                       cclive(1)
2
3
4

NAME

6       cclive - media download tool
7

SYNOPSIS

9       cclive [options] [url | file...]
10

DESCRIPTION

12       cclive is a tool for downloading media from YouTube and similar
13       websites. It has a low memory footprint compared to other existing
14       tools.
15

OPTIONS

17       Unless an arg is specified in the command line, cclive reads from the
18       stdin. The command line args may be either URLs or files to read.  If
19       cclive reads from either stdin or files, it expects each URL to be
20       separated by a newline or whitespace character.
21
22       --version
23           Print version and exit.
24
25       --help
26           Print help and exit.
27
28       --license
29           Print license and exit.
30
31       --support
32           Print supported hosts and exit.
33
34       --verbose-libcurl
35           Turn on libcurl verbose output.
36
37       -q, --quiet
38           Turn off all output to stdout and stderr with the exception of
39           "--verbose-libcurl", if enabled, libcurl will continue to print
40           messages to stderr.
41
42       -b, --background
43           Go to background after startup. Output will be written to the file
44           specified with "--log-file".
45
46       -F, --query-formats
47           Query available formats.
48
49       -f, --format arg (=default)
50           Download format arg of the media. arg can also be "help" or "list".
51           The resulting format may be different from the arg if the requested
52           format was not available. This is determined by libquvi, not
53           cclive.
54
55           arg "list" is deprecated and will be removed in the later versions.
56           Use "--query-formats" instead.
57
58       -c, --continue
59           Resume partially downloaded media.
60
61       -W, --overwrite
62           Overwrite existing media.
63
64       -O, --output-file arg
65           Write media to arg. Overrides "--filename-format".
66
67       -n, --no-download
68           Do not download the media, print details only.
69
70       -r, --no-resolve
71           Do not resolve URL redirections. If enabled, breaks the
72           compatibility with most "shortened" URLs.
73
74       --no-proxy
75           Disable use of HTTP proxy. Overrides both "--proxy" and http_proxy
76           environment settings.
77
78       --log-file arg (=cclive_log)
79           Write log output to arg. Ignored unless used with "--background".
80           Overwrites the existing arg file (if any). See also "--background"
81           and "--update-interval".
82
83       --config-file arg (=$HOME/.ccliverc)
84           Path to a file to read cclive arguments from.
85

OPTIONS - CONFIGURATION

87       In addition to the command line, the configurable options may also be
88       read from the configuration file. See "FILES".
89
90       --progressbar arg (=normal)
91           Use progressbar arg. Ignored with "--background" which will always
92           use 'dotline' type. arg can be one of the following strings:
93
94            normal   .. Default
95            dotline  .. Used by --background as default
96            simple   .. Less verbose
97
98       --update-interval arg (=1)
99           Specify arg progressbar update interval in seconds. The value may
100           be a 'double', e.g. 0.2 or 1.99.
101
102       --filename-format arg (="%t.%s")
103           How the downloaded media file should be named.  Each occurence of
104           the following specifiers will be replaced in the arg:
105
106            %t .. Media title (after applying --regexp)
107            %i .. Media ID
108            %h .. Media host ID (e.g. "vimeo")
109            %s .. Media file suffix (e.g. "flv")
110
111       --output-dir arg
112           Write downloaded media to arg directory.
113
114       --regexp arg (="/(\w|\s)/g")
115           Regular expression arg to cleanup the media title before it is used
116           in the filename. Supports "i" (case-insensitive) and "g" (global or
117           "find all").
118
119       --subst arg ...
120           Replace matched occurences in the media filename after applying
121           "--filename-format" and "--regexp". To use multiple substitutions,
122           separate each expression in arg with a whitespace. Supports "i"
123           (case-insensitive) and "g" (global or "find all").
124
125           Delimiters supported:
126
127            <> {} () /
128
129           Note:
130
131            s/old/new/  .. Invalid
132            s/old//new/ .. OK
133
134       --exec arg
135           Invoke arg after each successfully finished download. Each
136           occurence of the following specifiers will be replaced (and double-
137           quoted) in the arg:
138
139            %f .. Full path to the downloaded media file
140
141       --agent arg (="Mozilla/5.0")
142           Identify cclive as arg to the HTTP servers.
143
144       --proxy arg
145           Use arg for HTTP proxy, e.g. "http://foo:1234". Overrides
146           http_proxy environment setting.
147
148       --throttle arg (=0, disabled)
149           Do not exceed the transfer rate arg KB/s.
150
151       --connect-timeout arg (=30)
152           This option wraps the CURLOPT_CONNECTTIMEOUT (libcurl):
153
154           "Pass a long. It should contain the maximum time in seconds that
155           you allow the connection to the server to take.
156
157           This only limits the connection phase, once it has connected, this
158           option is of no more use. Set to zero to disable connection timeout
159           (it will then only timeout on the system's internal timeouts). See
160           also the CURLOPT_TIMEOUT option."  -- curl_easy_setopt(3)
161
162       --transfer-timeout arg (=0, disabled)
163           This option wraps the CURLOPT_TIMEOUT (libcurl):
164
165           "Pass a long as parameter containing the maximum time in seconds
166           that you allow the libcurl transfer operation to take.
167
168           Normally, name lookups can take a considerable time and limiting
169           operations to less than a few minutes risk aborting perfectly
170           normal operations. This option will cause curl to use the SIGALRM
171           to enable time-outing system calls."  -- curl_easy_setopt(3)
172
173       --dns-cache-timeout arg (=60)
174           This option wraps the CURLOPT_DNS_CACHE_TIMEOUT (libcurl):
175
176           "Pass a long, this sets the timeout in seconds. Name resolves will
177           be kept in memory for this number of seconds. Set to zero to
178           completely disable caching, or set to -1 to make the cached entries
179           remain forever. By default, libcurl caches this info for 60
180           seconds.
181
182           The name resolve functions of various libc implementations don't
183           re-read name server information unless explicitly told so (for
184           example, by calling res_init(3)). This may cause libcurl to keep
185           using the older server even if DHCP has updated the server info,
186           and this may look like a DNS cache issue to the casual libcurl-app
187           user."  -- curl_easy_setopt(3)
188
189       --max-retries arg (=5, 0=disabled)
190           Retry downloading arg times before giving up.
191
192       --retry-wait arg (=5)
193           Wait arg seconds before retrying after a failed attempt.
194

EXAMPLES

196       Put the URLs inside quotes when they are specified as the command line
197       arguments to the program. This is the recommended practice.
198
199       cclive "URL"
200           Typical use.
201
202       cclive -f best "URL"
203           Download the best available format of the media. This assumes >1
204           formats are supported, otherwise will fallback to default format.
205
206       cclive -F "URL"
207           Query available formats to the URL. Use one of the returned format
208           strings from this list with "--format".
209
210       cclive -n "URL"
211           Do not download the media, print the details only.
212
213       cclive "URL" --subst "s{Alice}{Malice}g"
214           Replace "Alice" in the media title with "Malice" before it is used
215           in the filename.
216
217       cclive "URL" -b --log-file foo.log
218           Go to background, redirect output to "foo.log".
219
220       pkill -USR1 cclive
221           Interrupt the current download of all matching cclive processes.
222           Causes cclive to move onto the next URL in the queue, if any.
223

FILES

225       $HOME/.ccliverc
226           Or use "--config-file". See "--help" or "OPTIONS - CONFIGURATION"
227           for the configurable options.
228
229           Example:
230
231            filename-format = %h_%i_(%t).%s
232            regexp = /(\w|\pL)/g
233            exec = /usr/bin/vlc %f
234            proxy = http://foo:1234
235            progressbar = simple
236

EXIT STATUS

238       cclive exits with 0 on success and >0 if an (unrecoverable) error
239       occurred.
240

DEBUGGING TIPS

242       --no-download
243           Use the "--no-download" switch when you don't need to download the
244           media.
245
246       --verbose-libcurl
247           Make libcurl verbose.
248
249       Debug symbols
250           Compile cclive with "-g", see also gcc(1).
251
252       Other tools
253           See also gdb(1), strace(1) and valgrind(1).
254

WWW

256        Home  : http://cclive.sourceforge.net/
257        gitweb: http://repo.or.cz/w/cclive.git
258

BACKGROUND

260       The name "clive" originates from the words "command line video
261       extration", the prepending "c" refers to C or C++. cclive is a rewrite
262       of clive(1) in C++.
263

LICENSE

265       cclive is free software, licensed under the GPLv3+.
266

AUTHOR

268       Toni Gundogdu <legatvs at sign gmail com>.
269
270       Thanks to all those who have contributed to the project by sending
271       patches, reporting bugs and writing feedback. You know who you are.
272
273
274
2750.7.5                             2011-07-31                         cclive(1)
Impressum