Go to the source code of this file.
Defines | |
#define | QUVIINFO_VOID 0x100000 |
#define | QUVIINFO_LONG 0x200000 |
#define | QUVIINFO_STRING 0x300000 |
#define | QUVIINFO_DOUBLE 0x400000 |
#define | QUVIINFO_TYPEMASK 0xf00000 |
#define | QUVIPROPERTY_STRING 0x100000 |
#define | QUVIPROPERTY_LONG 0x200000 |
#define | QUVIPROPERTY_DOUBLE 0x300000 |
#define | QUVIPROPERTY_TYPEMASK 0xf00000 |
#define | QUVI_WRITEFUNC_ABORT 0x10000000 |
#define | quvi_lobyte(w) ((quvi_byte)((uint64_t)(w) & 0xff)) |
Return a low byte from a word type variable. | |
#define | quvi_hibyte(w) ((quvi_byte)((uint64_t)(w) >> 8)) |
Return a high byte from a word type variable. | |
#define | quvi_loword(l) ((quvi_word)((uint64_t)(l) & 0xffff)) |
Return a low word from a long type variable. | |
#define | quvi_hiword(l) ((quvi_word)((uint64_t)(l) >> 16)) |
Return a high word from a long type variable. | |
Typedefs | |
typedef void * | quvi_t |
libquvi session handle | |
typedef void * | quvi_video_t |
Video parsing session handle. | |
typedef int(* | quvi_callback_status )(long param, void *data) |
Status callback function. | |
typedef int(* | quvi_callback_write )(char *buffer, size_t size, size_t nitems, void *instream) |
Write callback function. | |
typedef uint32_t | quvi_word |
Word type. | |
typedef uint8_t | quvi_byte |
Byte type. | |
Enumerations | |
enum | QUVIversion { QUVI_VERSION = 0x00, QUVI_VERSION_LONG } |
enum | QUVIcode { QUVI_OK = 0x00, QUVI_MEM, QUVI_BADHANDLE, QUVI_INVARG, QUVI_CURLINIT, QUVI_LAST, QUVI_ABORTEDBYCALLBACK, QUVI_LUAINIT, QUVI_NOLUAWEBSITE, _INTERNAL_QUVI_LAST, QUVI_PCRE = 0x40, QUVI_NOSUPPORT, QUVI_CURL, QUVI_ICONV, QUVI_LUA } |
enum | QUVIstatus { QUVISTATUS_FETCH = 0x00, QUVISTATUS_VERIFY } |
enum | QUVIstatusType { QUVISTATUSTYPE_PAGE = 0x00, QUVISTATUSTYPE_CONFIG, QUVISTATUSTYPE_PLAYLIST, QUVISTATUSTYPE_DONE } |
enum | QUVIoption { QUVIOPT_FORMAT = 0x00, QUVIOPT_NOVERIFY, QUVIOPT_STATUSFUNCTION, QUVIOPT_WRITEFUNCTION } |
enum | QUVIinfo { QUVIINFO_NONE = 0x00, QUVIINFO_CURL = QUVIINFO_VOID + 1, QUVIINFO_CURLCODE = QUVIINFO_LONG + 2, QUVIINFO_HTTPCODE = QUVIINFO_LONG + 3, _QUVIINFO_LAST = 3 } |
enum | QUVIproperty { QUVIPROP_NONE = 0x00, QUVIPROP_HOSTID = QUVIPROPERTY_STRING + 1, QUVIPROP_PAGEURL = QUVIPROPERTY_STRING + 2, QUVIPROP_PAGETITLE = QUVIPROPERTY_STRING + 3, QUVIPROP_VIDEOID = QUVIPROPERTY_STRING + 4, QUVIPROP_VIDEOURL = QUVIPROPERTY_STRING + 5, QUVIPROP_VIDEOFILELENGTH = QUVIPROPERTY_DOUBLE + 6, QUVIPROP_VIDEOFILECONTENTTYPE = QUVIPROPERTY_STRING + 7, QUVIPROP_VIDEOFILESUFFIX = QUVIPROPERTY_STRING + 8, QUVIPROP_HTTPCODE = QUVIPROPERTY_LONG + 9, QUVIPROP_VIDEOFORMAT = QUVIPROPERTY_STRING + 10, _QUVIPROP_LAST = 10 } |
Functions | |
QUVIcode | quvi_init (quvi_t *quvi) |
Start a new libquvi session. | |
void | quvi_close (quvi_t *quvi) |
End a libquvi session. | |
QUVIcode | quvi_setopt (quvi_t quvi, QUVIoption opt,...) |
Set options for a libquvi session handle. | |
size_t | quvi_write_callback_default (void *ptr, size_t size, size_t nmemb, void *stream) |
Default write callback. | |
QUVIcode | quvi_getinfo (quvi_t quvi, QUVIinfo info,...) |
Get information from a libquvi session handle. | |
QUVIcode | quvi_parse (quvi_t quvi, char *url, quvi_video_t *video) |
Start a new video parsing session. | |
QUVIcode | quvi_getprop (quvi_video_t video, QUVIproperty prop,...) |
Get video property information from a video session handle. | |
QUVIcode | quvi_next_videolink (quvi_video_t video) |
Move to the next video link (if any). | |
void | quvi_parse_close (quvi_video_t *video) |
End a video parsing session. | |
QUVIcode | quvi_next_supported_website (quvi_t quvi, char **domain, char **formats) |
Return next supported video website. | |
QUVIcode | quvi_next_host (char **domain, char **formats) |
Next supported video host. | |
char * | quvi_strerror (quvi_t quvi, QUVIcode code) |
Return a string describing the error code. | |
char * | quvi_version (QUVIversion type) |
Return libquvi version. | |
void | quvi_free (void *ptr) |
Free allocated memory. |