FFmpeg  4.0
Data Fields
URLProtocol Struct Reference

#include <libavformat/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)
 
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_get_short_seek )(URLContext *h)
 
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)
 
const char * default_whitelist
 

Detailed Description

Definition at line 54 of file url.h.

Field Documentation

◆ name

const char* URLProtocol::name

◆ url_open

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

Definition at line 56 of file url.h.

Referenced by ffurl_connect().

◆ url_open2

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 62 of file url.h.

Referenced by ffurl_connect().

◆ url_accept

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

Definition at line 63 of file url.h.

Referenced by ffurl_accept().

◆ url_handshake

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

Definition at line 64 of file url.h.

Referenced by ffurl_handshake().

◆ url_read

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 78 of file url.h.

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

◆ url_write

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

Definition at line 79 of file url.h.

Referenced by ffurl_write(), and url_alloc_for_protocol().

◆ url_seek

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

Definition at line 80 of file url.h.

Referenced by ffurl_seek().

◆ url_close

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

Definition at line 81 of file url.h.

Referenced by ffurl_closep().

◆ url_read_pause

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

Definition at line 82 of file url.h.

◆ url_read_seek

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

Definition at line 83 of file url.h.

Referenced by ffio_fdopen().

◆ url_get_file_handle

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

Definition at line 85 of file url.h.

Referenced by ffurl_get_file_handle(), and ffurl_get_multi_file_handle().

◆ url_get_multi_file_handle

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

Definition at line 86 of file url.h.

Referenced by ffurl_get_multi_file_handle().

◆ url_get_short_seek

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

Definition at line 88 of file url.h.

Referenced by ffurl_get_short_seek().

◆ url_shutdown

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

Definition at line 89 of file url.h.

Referenced by ffurl_shutdown().

◆ priv_data_size

int URLProtocol::priv_data_size

Definition at line 90 of file url.h.

Referenced by ffurl_closep(), and url_alloc_for_protocol().

◆ priv_data_class

const AVClass* URLProtocol::priv_data_class

Definition at line 91 of file url.h.

Referenced by avio_open_dir(), ffurl_closep(), url_alloc_for_protocol(), and urlcontext_child_next().

◆ flags

int URLProtocol::flags

Definition at line 92 of file url.h.

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

◆ url_check

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

Definition at line 93 of file url.h.

Referenced by avio_check().

◆ url_open_dir

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

Definition at line 94 of file url.h.

Referenced by avio_open_dir().

◆ url_read_dir

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

Definition at line 95 of file url.h.

Referenced by avio_open_dir(), and avio_read_dir().

◆ url_close_dir

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

Definition at line 96 of file url.h.

Referenced by avio_close_dir(), and avio_open_dir().

◆ url_delete

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

Definition at line 97 of file url.h.

Referenced by avpriv_io_delete().

◆ url_move

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

Definition at line 98 of file url.h.

Referenced by avpriv_io_move().

◆ default_whitelist

const char* URLProtocol::default_whitelist

Definition at line 99 of file url.h.

Referenced by ffurl_connect().


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