FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
URLProtocol Struct Reference

#include <url.h>

Data Fields

const char * name
 
int(* url_open )(URLContext *h, const char *url, int flags)
 
int(* url_open2 )(URLContext *h, const char *url, int flags, AVDictionary **options)
 This callback is to be used by protocols which open further nested protocols. More...
 
int(* url_accept )(URLContext *s, URLContext **c)
 
int(* url_handshake )(URLContext *c)
 
int(* url_read )(URLContext *h, unsigned char *buf, int size)
 Read data from the protocol. More...
 
int(* url_write )(URLContext *h, const unsigned char *buf, int size)
 
int64_t(* url_seek )(URLContext *h, int64_t pos, int whence)
 
int(* url_close )(URLContext *h)
 
struct URLProtocolnext
 
int(* url_read_pause )(URLContext *h, int pause)
 
int64_t(* url_read_seek )(URLContext *h, int stream_index, int64_t timestamp, int flags)
 
int(* url_get_file_handle )(URLContext *h)
 
int(* url_get_multi_file_handle )(URLContext *h, int **handles, int *numhandles)
 
int(* url_shutdown )(URLContext *h, int flags)
 
int priv_data_size
 
const AVClasspriv_data_class
 
int flags
 
int(* url_check )(URLContext *h, int mask)
 
int(* url_open_dir )(URLContext *h)
 
int(* url_read_dir )(URLContext *h, AVIODirEntry **next)
 
int(* url_close_dir )(URLContext *h)
 
int(* url_delete )(URLContext *h)
 
int(* url_move )(URLContext *h_src, URLContext *h_dst)
 

Detailed Description

Definition at line 52 of file url.h.

Field Documentation

const char* URLProtocol::name
int(* URLProtocol::url_open)(URLContext *h, const char *url, int flags)

Definition at line 54 of file url.h.

Referenced by ffurl_connect().

int(* URLProtocol::url_open2)(URLContext *h, const char *url, int flags, AVDictionary **options)

This callback is to be used by protocols which open further nested protocols.

options are then to be passed to ffurl_open()/ffurl_connect() for those nested protocols.

Definition at line 60 of file url.h.

Referenced by ffurl_connect().

int(* URLProtocol::url_accept)(URLContext *s, URLContext **c)

Definition at line 61 of file url.h.

Referenced by ffurl_accept().

int(* URLProtocol::url_handshake)(URLContext *c)

Definition at line 62 of file url.h.

Referenced by ffurl_handshake().

int(* URLProtocol::url_read)(URLContext *h, unsigned char *buf, int size)

Read data from the protocol.

If data is immediately available (even less than size), EOF is reached or an error occurs (including EINTR), return immediately. Otherwise: In non-blocking mode, return AVERROR(EAGAIN) immediately. In blocking mode, wait for data/EOF/error with a short timeout (0.1s), and return AVERROR(EAGAIN) on timeout. Checking interrupt_callback, looping on EINTR and EAGAIN and until enough data has been read is left to the calling function; see retry_transfer_wrapper in avio.c.

Definition at line 76 of file url.h.

Referenced by avio_enum_protocols(), ffurl_read(), ffurl_read_complete(), and url_alloc_for_protocol().

int(* URLProtocol::url_write)(URLContext *h, const unsigned char *buf, int size)

Definition at line 77 of file url.h.

Referenced by avio_enum_protocols(), ffurl_write(), and url_alloc_for_protocol().

int64_t(* URLProtocol::url_seek)(URLContext *h, int64_t pos, int whence)

Definition at line 78 of file url.h.

Referenced by ffurl_seek().

int(* URLProtocol::url_close)(URLContext *h)

Definition at line 79 of file url.h.

Referenced by ffurl_closep().

struct URLProtocol* URLProtocol::next

Definition at line 80 of file url.h.

Referenced by ffurl_protocol_next(), and ffurl_register_protocol().

int(* URLProtocol::url_read_pause)(URLContext *h, int pause)

Definition at line 81 of file url.h.

Referenced by ffio_fdopen().

int64_t(* URLProtocol::url_read_seek)(URLContext *h, int stream_index, int64_t timestamp, int flags)

Definition at line 82 of file url.h.

Referenced by ffio_fdopen().

int(* URLProtocol::url_get_file_handle)(URLContext *h)

Definition at line 84 of file url.h.

Referenced by ffurl_get_file_handle(), and ffurl_get_multi_file_handle().

int(* URLProtocol::url_get_multi_file_handle)(URLContext *h, int **handles, int *numhandles)

Definition at line 85 of file url.h.

Referenced by ffurl_get_multi_file_handle().

int(* URLProtocol::url_shutdown)(URLContext *h, int flags)

Definition at line 87 of file url.h.

Referenced by ffurl_shutdown().

int URLProtocol::priv_data_size

Definition at line 88 of file url.h.

Referenced by ffurl_closep(), and url_alloc_for_protocol().

const AVClass* URLProtocol::priv_data_class
int URLProtocol::flags

Definition at line 90 of file url.h.

Referenced by ffurl_closep(), url_alloc_for_protocol(), and url_find_protocol().

int(* URLProtocol::url_check)(URLContext *h, int mask)

Definition at line 91 of file url.h.

Referenced by avio_check().

int(* URLProtocol::url_open_dir)(URLContext *h)

Definition at line 92 of file url.h.

Referenced by avio_open_dir().

int(* URLProtocol::url_read_dir)(URLContext *h, AVIODirEntry **next)

Definition at line 93 of file url.h.

Referenced by avio_open_dir(), and avio_read_dir().

int(* URLProtocol::url_close_dir)(URLContext *h)

Definition at line 94 of file url.h.

Referenced by avio_close_dir(), and avio_open_dir().

int(* URLProtocol::url_delete)(URLContext *h)

Definition at line 95 of file url.h.

Referenced by avpriv_io_delete().

int(* URLProtocol::url_move)(URLContext *h_src, URLContext *h_dst)

Definition at line 96 of file url.h.

Referenced by avpriv_io_move().


The documentation for this struct was generated from the following file: