Langue: en

Autres versions - même langue

Version: 2010-09-22 (fedora - 01/12/10)

Section: 1 (Commandes utilisateur)


quvi - query video tool


quvi [options] [url...]


quvi is a command line tool for parsing video download links. It supports Youtube and other similar video websites.

The video details are printed to standard output (in JSON), everything else is printed to standard error.


-h, --help
Print help and exit.
-v, --version
Print program version and exit.
Print supported hosts and exit.
Print the details in XML (instead of JSON). URLs are escaped (URL encoded, unlike in JSON). Encoding is always UTF-8 (like in JSON).
Print the details in the previously used default output format (0.2.3 and earlier).
-q, --quiet
Turn off output to stderr (excl. errors, libcurl). Video details will be printed to stdout as they would be normally.
Turn on libcurl verbose mode.
-n, --no-verify
Do not verify video link. Note that quvi will not report video file length, content-type or file suffix if this option is used.
Match parsed video page title to string.
Match parsed video ID to string.
Match parsed video file length to length.
Match parsed video file suffix to string.
-a, --test-all
Run all built-in tests. quvi will test all built-in video page links.
-t, --test=pattern
Match pattern to a built-in test page link and test it.
-d, --dump
Dump video details when running tests. To be used with --test-all.
Identify quvi as string to servers. Default is ``Mozilla/5.0''.
Use the specified HTTP proxy. Note that quvi will use http_proxy environment setting if it is set.
Do not use HTTP proxy. Not even if http_proxy is set.
Maximum seconds allowed connection to server take. Default is 30.
-f, --format[=]format_id
Query video format, format_id depends on the host, see --hosts output.


quvi URL
Test URL.
quvi -a
Run all built-in host tests.
quvi -aqd --xml
Same but run in quiet mode. Print video details in XML (to stdout).
quvi -t youtube
Match 'youtube' string to built-in video page links and test it.
quvi URL -f best
Query 'best' of the video from the URL.


quvi --debug URL
Spew out libcurl verbose mode messages.
Contain details about working with the quvi Lua scripts (e.g. website rules). If video link parsing breaks, have a look at these files.
Various HOWTOs can be found in this directory.


You can define most of the command line options in the config file. For example:
  agent = some_agent/1.0     # --agent
  proxy = http://foo:1234    # --proxy
  no-verify                  # --no-verify
  debug                      # --debug

Note that you can also define QUVI_HOME and use it instead.


Defines path to a directory containing the configuration file. Similar to $HOME found on Unix-like systems, but can be used to override the $HOME setting (if any).
Defines an exlusive path to the directory from which quvi searches for the essential quvi files, e.g. the lua scripts. Exclusive here means that by setting QUVI_BASEDIR the user can override all of the default search paths.

Not to be confused with QUVI_HOME which is strictly a quvi(1) variable whereas QUVI_BASEDIR is a libquvi variable.

You can have libquvi dump (to stderr) the scanned directory paths by setting this environment variable.


quvi exits with 0 on success and >0 if an error occurred.
   QUVI_OK               = 0x00
   QUVI_MEM              = 0x01, Memory allocation failed
   QUVI_BADHANDLE        = 0x02, Bad session handle
   QUVI_INVARG           = 0x03, Invalid function argument
   QUVI_CURLINIT         = 0x04, libcurl initialization failed
   QUVI_LAST             = 0x05, Indicates end of list iteration
   QUVI_ABORTEDBYCALLBACK= 0x06, Aborted by callback function
   QUVI_LUAINIT          = 0x07, Lua initialization failure
   QUVI_NOLUAWEBSITE     = 0x08, Failed to find lua website scripts
   QUVI_PCRE             = 0x40, libpcre error occurred
   QUVI_NOSUPPORT        = 0x41, libquvi does not support the video host
   QUVI_CURL             = 0x42, libcurl error occurred
   QUVI_ICONV            = 0x43, libiconv error occurred
   QUVI_LUA              = 0x44, lua error occurred


Project page:

Bugs, support, etc. trackers can be found at:

Development code:
  % git clone git://repo.or.cz/quvi.git


Toni Gundogdu <legatvs at sign gmail com>

Thanks to all those who have contributed to the project by sending patches, reporting bugs and writing feedback. You know who you are.