Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
quvi(1)				  quvi manual			       quvi(1)

NAME
       quvi - query media tool

SYNOPSIS
       quvi [options] [url ...]	[file ...]

DESCRIPTION
       quvi is a command line tool for parsing flash media stream URLs.	 It
       supports	many websites including	YouTube	and Dailymotion.

COMMAND	LINE PARSER
       GNU gengetopt is	very flexible.

   Example
	 quvi --category http --category rtmp --verbosity debug	\
	      --export-level +errors --feature -verify --feature -resolve

   Same	as above but with short	options
	 quvi -c http -c rtmp -v debug -l +errors -e -verify -e	-resolve

   Or even simply
	 quvi -ch -cr -vd -l+ -e-v -e-r

OPTIONS
       quvi reads standard input by default. It	can also read the URLs from
       files but expects each URL to be	separated by a newline character.

   -h, --help
       Print help and exit.

   --version
       Print program version and exit.

   --license
       Print license and exit.

   --support [arg]
       Print supported hosts and exit. If arg is present, the program checks
       whether the arg is supported.

       The default behaviour, without an arg, causes quvi to print the
       supported websites. The first string is the domain string which is, in
       fact, a (Lua) pattern used to match the URL to a	libquvi	script.	The
       second string is, now obsolete (see below), an array containing the
       supported formats specific to the host.

       Use "--query-formats" if	you need to check an URL for the available
       formats.

       See also	"EXAMPLES".

   -e, --feature arg
       Enable or disable a feature. See	also "EXAMPLES". Possible values:

       resolve (default)

       Resolve HTTP directions,	e.g. shortened URLs. See below.

       -resolve

       Do not resolve HTTP redirections. When used, quvi will not be able to
       resolve most of the "shortened URLs" produced by	different URL
       shortening services.

       Note that libquvi scripts that explicitly (need to) resolve
       redirections will continue to do	so even	if this	switch is used.

       verify (default)

       Verify media stream URL after parsing. See below.

       -verify

       Do not verify media stream URL after parsing. When used,	some media
       details,	e.g. content length, will not become available.

       Note that libquvi skips the verification	automatically with all non-
       HTTP media stream URLs.

       proxy (default)

       Use a HTTP proxy	with connections if it is defined using	either the
       "--proxy" or the	http_proxy value. See below.

       -proxy

       Disable use of a	HTTP proxy completely. Proxy will not be used even if
       it is defined in	http_proxy.

   -d, --export-format arg (=json)
       Set the interchange format in which the data is to be printed.
       Possible	values:

	json ..	Print in JSON (default)
	xml  ..	Print in XML

   -l, --export-level arg (=media)
       Set level of the	exported interchange data. Possible values:

	media	 .. Media only (default)
	+errors	 .. Media and error messages

       See also	"--export-format".

   -v, --verbosity arg (=verbose)
       Set the verbosity level of the printed messages.	Possible values:

	debug	.. Everything, including libcurl generated messages
	verbose	.. Most	messages (default)
	quiet	.. Errors and warnings only
	mute	.. Nothing at all

   --exec arg
       Invoke arg after	each successfully parsed URL. The following specifiers
       are supported:

	%u  ..	Media stream URL
	%t  ..	Media title
	%e  ..	Media file suffix (extension)
	%h  ..	Media thumbnail	URL

       Note that each occurence	of the specifier will be replaced within the
       arg. quvi accepts multiple occurrences of "--exec". See also
       "EXAMPLES".

   -c, --category arg (=all)
       Enable the level	of the libquvi script categories. By default, all of
       the categories levels are enabled. Possible values:

	http  .. HTTP category scripts only
	rtmp  .. RTMP ...
	rtsp  .. RTSP ...
	mms   .. MMS ...
	all   .. All of	the above

       quvi accepts multiple occurrences of "--category". See also "EXAMPLES".

   -F, --query-formats
       Query available formats to the URL. The returned	array is created from
       the data	returned by the	server.	You can	use the	format strings in this
       array with "--format".

       The available formats are determined by the libquvi script responsible
       for parsing the media details.

       See also	"--format".

   -f, --format	arg (=default)
       Query media details for the format arg. The arg may also	be "default"
       or "best". The arg value	is used	with all of the	URLs fed to quvi.

       If the arg is "best", the libquvi script	responsible for	parsing	the
       media details will determine the	"best" format available	to an URL.

       If the arg is "default" the libquvi script attempts to return an	URL to
       whatever	it deemed to be	the "default" format for the URL.

       The libquvi script will return the "default" format if the arg was
       unrecognized or the requested format was	not available.

       You can find more information about the YouTube specific	"fmt" IDs at:
	<http://en.wikipedia.org/wiki/YouTube#Quality_and_codecs>

       See also	"--query-formats".

   --agent arg (=Mozilla/5.0)
       Identify	quvi as	arg to the HTTP	servers. Default is "Mozilla/5.0".

   --proxy arg
       Use proxy for HTTP connections, e.g. "http://foo:1234". You can also
       define http_proxy environment setting to	for the	same effect.

   --connect-timeout seconds
       Maximum seconds allowed connection to server take. Default is 30.

DEPRECATED
       The following options have been marked as "deprecated" and will be
       removed in the later versions of	quvi.

   --no-proxy
       Disable use of HTTP proxy completely. Proxy will	not be used even if it
       is defined in http_proxy. Use "--feature" instead.

   -r, --no-resolve
       Do not resolve HTTP redirections. When used, quvi will not be able to
       resolve most of the "shortened URLs" produced by	different URL
       shortening services.

       Note that libquvi scripts that explicitly (need to) resolve
       redirections will continue to do	so even	if this	switch is used.	 Use
       "--feature" instead.

   -n, --no-verify
       Do not verify media stream URL after parsing. When used,	some media
       details,	e.g. content length, will not become available.

       Note that libquvi skips the verification	automatically with all non-
       HTTP media stream URLs. Use "--feature" instead.

   -q, --quiet
       Turn off	all output printed to stderr (excl. any	errors).  If
       "--verbose-libcurl" is specified, libcurl will continue to print
       messages	to stderr. The media details will still	be printed to stdout.
       Use "--verbosity" instead.

   --verbose-libcurl
       Turn on libcurl verbose mode. Use "--verbosity" instead.

   --xml
       Print the media details (and errors, if "--export-level=+errors"	is
       specified) in XML. Use "--export-format"	instead.

   --category-http
       Enable category HTTP webscripts.	This is	the default category.  Use
       "--category" instead.

   --category-mms
       Enable category MMS webscripts. Use "--category"	instead.

   --category-rtsp
       Enable category RTSP webscripts.	Use "--category" instead.

   --category-rtmp
       Enable category RTMP webscripts.	Use "--category" instead.

   --category-all
       Enable all categories of	webscripts. Use	"--category" instead.

EXAMPLES
       Always quote the	URLs in	the command line as seen below.	Many URLs
       contain parameters that may otherwise cause the shell to	behave with
       unexpected results.

   quvi	"URL"
       Typical use.

   quvi	-d xml "URL"
       Same but	print the results in XML.

   quvi	-f best	"URL"
       Get for the best	available format of the	media. This assumes >1 formats
       are supported, otherwise	will fallback to default format.

   quvi	-F "URL"
       Query available formats to the URL. Use one of the returned format
       strings from this list with "--format".

   quvi	--support
       Print the supported websites. The domain	strings	are patterns.

   quvi	--support -c rtmp -c mms
       Same but	print only those from the RTMP and the MMS categories.

   quvi	--support "URL"
       Check whether the URL is	supported. This	does not require an Internet
       connection but will fail	with most "shortened" URLs.

   quvi	-vm -e-r -e-v "URL" --exec "echo %t" --exec "vlc %u"
       Mute message output (-vm), do not resolve HTTP redirections (-e-r) and
       skip media stream URL verification (-e-v). Print	media title using
       echo(1),	open media stream URL in vlc(1).

FILES
   $HOME/.quvirc
       Most of the command line	options	can also be defined in the
       configuration file. For example:

	agent =	foo/1.0		   # --agent
	proxy =	http://foo:1234	   # --proxy

       You can also use	$QUVI_HOME instead of $HOME.

ENVIRONMENT
   quvi
       QUVI_HOME

       Path to the directory with the configuration file. If set, quvi command
       uses this instead of $HOME.

   libquvi
       LIBQUVI_SCRIPTSDIR

       Path to the libquvi-scripts directory. Overrides	the libquvi default
       search paths for	the scripts, e.g.:

	env LIBQUVI_SCRIPTSDIR=/dir/with/quvi/lua/scripts/ quvi

       Make sure it points to a	directory containing the lua/ directory	with
       the expected "util/*.lua" and "website/quvi/*.lua" scripts that are
       normally	installed with libquvi-scripts.

       For a totorial that covers these	steps, see the libquvi C API
       documentation at:

	 <http://quvi.sourceforge.net/doc/>

       LIBQUVI_SHOW_SCANDIR

       If set, libquvi prints the lua script search paths to the stderr.

       LIBQUVI_SHOW_SCRIPT

       If set, the lua scripts found by	libquvi	are printed to the stderr.

	env LIBQUVI_SHOW_SCRIPT=1 quvi

   libcurl
       http_proxy

       http_proxy value	is used	if defined. Note, however, that	"--proxy" and
       "--feature -proxy" both override	this behaviour.

EXIT STATUS
       quvi exits with 0 on success and	>0 if an error occurred.

	QUVI_OK		      =	0x00
	QUVI_MEM	      =	0x01, Memory allocation	failed
				  (or invalid quvi command line	option)
	QUVI_BADHANDLE	      =	0x02, Bad session handle
	QUVI_INVARG	      =	0x03, Invalid function (or command line) arg
	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 webscripts
	QUVI_NOLUAUTIL	      =	0x09, Failed to	find the utility scripts
	--
	QUVI_NOSUPPORT	      =	0x41, libquvi does not support the host
	QUVI_CALLBACK	      =	0x42, network callback error occurred
	QUVI_ICONV	      =	0x43, libiconv error occurred
	QUVI_LUA	      =	0x44, lua error	occurred

WWW
	Home  :	http://quvi.sourceforge.net/
	gitweb:	http://repo.or.cz/w/quvi-tool.git

LICENSE
       quvi is free software, licensed under the LGPLv2.1+.

SEE ALSO
       libquvi(3), libquvi-scripts(7)

AUTHOR
       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.

v0.4.2				  2012-03-01			       quvi(1)

NAME | SYNOPSIS | DESCRIPTION | COMMAND LINE PARSER | OPTIONS | DEPRECATED | EXAMPLES | FILES | ENVIRONMENT | EXIT STATUS | WWW | LICENSE | SEE ALSO | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=quvi&sektion=1&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help