Go to the documentation of this file.
24 #ifndef LIBVLC_INPUT_RESOURCE_H
25 #define LIBVLC_INPUT_RESOURCE_H 1
char * vlc_uri_resolve(const char *base, const char *ref)
Resolves an URI reference.
Definition: url.c:767
char * referrer
Definition: resource.h:57
int vlc_http_res_init(struct vlc_http_resource *restrict res, const struct vlc_http_resource_cbs *cbs, struct vlc_http_mgr *mgr, const char *uri, const char *ua, const char *ref)
Definition: resource.c:179
char * vlc_http_msg_get_basic_realm(const struct vlc_http_msg *m)
Definition: message.c:940
char * vlc_uri_fixup(const char *str)
Fixes up a URI string.
Definition: url.c:863
struct vlc_http_msg * vlc_http_mgr_request(struct vlc_http_mgr *mgr, bool https, const char *host, unsigned port, const struct vlc_http_msg *m)
Sends an HTTP request.
Definition: connmgr.c:254
struct vlc_http_msg * vlc_http_res_open(struct vlc_http_resource *res, void *opaque)
Definition: resource.c:83
char * vlc_http_res_get_type(struct vlc_http_resource *res)
Gets MIME type.
Definition: resource.c:311
char * vlc_http_res_get_redirect(struct vlc_http_resource *restrict res)
Definition: resource.c:247
void vout_FlushSubpictureChannel(vout_thread_t *vout, int channel)
Definition: video_output.c:389
unsigned port
Definition: resource.h:51
int(* response_validate)(const struct vlc_http_resource *, const struct vlc_http_msg *, void *)
Definition: resource.h:38
int(* request_format)(const struct vlc_http_resource *, struct vlc_http_msg *, void *)
Definition: resource.h:36
int vlc_http_msg_add_creds_basic(struct vlc_http_msg *m, bool proxy, const char *username, const char *password)
Adds Basic credentials.
Definition: message.c:958
void vlc_http_msg_destroy(struct vlc_http_msg *m)
Destroys an HTTP message.
Definition: message.c:191
char * host
Definition: resource.h:50
void vout_Flush(vout_thread_t *vout, mtime_t date)
This function will ensure that all ready/displayed pictures have at most the provided date.
Definition: video_output.c:328
struct vlc_http_msg * response
Definition: resource.h:45
void vout_DisplayTitle(vout_thread_t *vout, const char *title)
This function will ask the display of the input title.
Definition: video_output.c:353
void vlc_UrlClean(vlc_url_t *restrict url)
Definition: url.c:594
void vlc_http_res_destroy(struct vlc_http_resource *res)
Destroys an HTTP resource.
Definition: resource.c:161
int vlc_UrlParse(vlc_url_t *url, const char *str)
Parses an URI or IRI.
Definition: url.c:554
#define msg_Dbg(p_this,...)
Definition: vlc_messages.h:86
vout_thread_t * vout
Definition: vlc_vout.h:51
char * psz_password
Definition: vlc_url.h:149
static int vlc_ascii_strcasecmp(const char *psz1, const char *psz2)
Compare two ASCII strings ignoring case.
Definition: vlc_strings.h:57
char * path
Definition: resource.h:53
char * psz_option
Definition: vlc_url.h:153
char * agent
Definition: resource.h:56
int vlc_http_res_set_login(struct vlc_http_resource *res, const char *username, const char *password)
Definition: resource.c:330
int vlc_http_msg_add_header(struct vlc_http_msg *m, const char *name, const char *fmt,...)
Definition: message.c:142
char * authority
Definition: resource.h:52
char * vlc_gettext(const char *msgid)
In-tree plugins share their gettext domain with LibVLC.
Definition: textdomain.c:89
int asprintf(char **, const char *,...)
struct vlc_http_mgr * manager
Definition: resource.h:46
Vout configuration.
Definition: vlc_vout.h:50
void vlc_http_msg_get_cookies(const struct vlc_http_msg *m, vlc_http_cookie_jar_t *jar, const char *host, const char *path)
Definition: message.c:887
char * psz_host
Definition: vlc_url.h:150
#define vlc_object_hold(a)
Definition: vlc_objects.h:60
Audio output object.
Definition: vlc_aout.h:114
char * psz_protocol
Definition: vlc_url.h:147
struct vlc_http_msg * vlc_http_req_create(const char *method, const char *scheme, const char *authority, const char *path)
Creates an HTTP request.
Definition: message.c:211
struct vlc_http_msg * vlc_http_msg_get_final(struct vlc_http_msg *m)
Gets final response headers.
Definition: message.c:282
char * psz_username
Definition: vlc_url.h:148
void vlc_assert_locked(vlc_mutex_t *p_mutex)
Definition: thread.c:117
short status
Definition: message.c:59
const struct vlc_http_resource_cbs * cbs
Definition: resource.h:44
#define TAB_APPEND(count, tab, p)
Definition: vlc_arrays.h:64
char * username
Definition: resource.h:54
Definition: resource.h:42
const char * psz_name
Definition: vlc_codecs.h:315
static char * vlc_http_authority(const char *host, unsigned port)
Definition: resource.c:167
void vlc_mutex_init(vlc_mutex_t *p_mutex)
Initializes a fast mutex.
Definition: thread.c:85
bool secure
Definition: resource.h:47
#define aout_New(a)
Definition: aout_internal.h:124
#define likely(p)
Definition: vlc_common.h:113
Definition: vlc_url.h:145
int vlc_http_res_get_status(struct vlc_http_resource *res)
Definition: resource.c:130
The main vlc_object_t structure.
Definition: vlc_objects.h:39
struct vlc_http_cookie_jar_t * vlc_http_mgr_get_jar(struct vlc_http_mgr *mgr)
Definition: connmgr.c:261
void sout_DeleteInstance(sout_instance_t *p_sout)
Definition: stream_output.c:134
#define VLC_UNUSED(x)
Definition: vlc_common.h:912
#define sout_NewInstance(a, b)
Definition: stream_output.h:42
pthread_mutex_t vlc_mutex_t
Mutex.
Definition: vlc_threads.h:267
char * strdup(const char *)
int vlc_http_msg_add_agent(struct vlc_http_msg *m, const char *str)
Sets the agent field.
Definition: message.c:736
unsigned i_port
Definition: vlc_url.h:151
bool negotiate
Definition: resource.h:48
char * path
Definition: message.c:63
#define TAB_REMOVE(count, tab, p)
Definition: vlc_arrays.h:91
void vlc_mutex_destroy(vlc_mutex_t *p_mutex)
Deinitializes a mutex.
Definition: thread.c:110
char * psz_sout
Definition: vlc_sout.h:52
char * vlc_http_res_get_basic_realm(struct vlc_http_resource *res)
Definition: resource.c:364
void vlc_mutex_unlock(vlc_mutex_t *p_mutex)
Releases a mutex.
Definition: thread.c:138
static struct vlc_http_msg * vlc_http_res_req(const struct vlc_http_resource *res, void *opaque)
Definition: resource.c:39
#define unlikely(p)
Definition: vlc_common.h:114
static void vlc_http_res_deinit(struct vlc_http_resource *res)
Definition: resource.c:147
#define vout_Request(a, b)
Definition: vlc_vout.h:103
struct block_t * vlc_http_res_read(struct vlc_http_resource *res)
Reads data.
Definition: resource.c:321
void aout_Destroy(audio_output_t *)
Deinitializes an audio output module and destroys an audio output object.
Definition: output.c:358
const char * vlc_http_msg_get_header(const struct vlc_http_msg *m, const char *name)
Looks up an header field.
Definition: message.c:154
int vlc_http_msg_get_status(const struct vlc_http_msg *m)
Gets response status code.
Definition: message.c:166
Video output thread descriptor.
Definition: vlc_vout.h:70
block_t * vlc_http_msg_read(struct vlc_http_msg *m)
Receives HTTP data.
Definition: message.c:289
#define VLC_OBJECT(x)
Type-safe vlc_object_t cast.
Definition: vlc_common.h:464
bool failure
Definition: resource.h:49
static void * vlc_alloc(size_t count, size_t size)
Definition: vlc_common.h:948
Definition: resource.h:34
char * password
Definition: resource.h:55
Stream output instance (FIXME: should be private to src/ to avoid invalid unsynchronized access)
Definition: vlc_sout.h:48
char * authority
Definition: message.c:62
char * psz_path
Definition: vlc_url.h:152
void vlc_mutex_lock(vlc_mutex_t *p_mutex)
Acquires a mutex.
Definition: thread.c:123
Definition: vlc_block.h:111
int vlc_http_msg_add_cookies(struct vlc_http_msg *m, vlc_http_cookie_jar_t *jar)
Definition: message.c:899
static void vout_CloseAndRelease(vout_thread_t *p_vout)
This function will close a vout created by vout_Create and then release it.
Definition: vlc_vout.h:121