curlhttpsrc
This plugin reads data from a remote location specified by a URI, when the protocol is 'http' or 'https'.
It is based on the cURL project (http://curl.haxx.se/) and is specifically designed to be also used with nghttp2 (http://nghttp2.org) to enable HTTP/2 support for GStreamer. Your libcurl library MUST be compiled against nghttp2 for HTTP/2 support for this functionality. HTTPS support is dependent on cURL being built with SSL support (OpenSSL/PolarSSL/NSS/GnuTLS).
An HTTP proxy must be specified by URL. If the "http_proxy" environment variable is set, its value is used. The proxy property can be used to override the default.
Example launch line
gst-launch-1.0 curlhttpsrc location=http://127.0.1.1/index.html ! fakesink dump=1
The above pipeline reads a web page from the local machine using HTTP and dumps it to stdout.
gst-launch-1.0 playbin uri=http://rdmedia.bbc.co.uk/dash/testmpds/multiperiod/bbb.php
The above pipeline will start up a DASH streaming session from the given MPD file. This requires GStreamer to have been built with dashdemux from gst-plugins-bad.
Hierarchy
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstElement ╰──GstBaseSrc ╰──GstPushSrc ╰──curlhttpsrc
Implemented interfaces
Factory details
Authors: – Sam Hurst
Classification: – Source/Network
Rank – secondary
Plugin – curl
Package – GStreamer Bad Plug-ins
Pad Templates
Properties
automatic-redirect
“automatic-redirect” gboolean
Allow HTTP Redirections (HTTP Status Code 300 series)
Flags : Read / Write
Default value : true
compress
“compress” gboolean
Allow compressed content encodings
Flags : Read / Write
Default value : false
extra-headers
“extra-headers” GstStructure *
Extra headers to append to the HTTP request
Flags : Read / Write
Default value :
request-headers;
http-version
“http-version” Curl-http-version-type *
The preferred HTTP protocol version
Flags : Read / Write
Default value : 2.0 (2)
keep-alive
“keep-alive” gboolean
Toggle keep-alive for connection reuse.
Flags : Read / Write
Default value : true
max-connection-time
“max-connection-time” guint
Maximum amount of time to keep-alive HTTP connections
Flags : Read / Write
Default value : 30
max-connections
“max-connections” guint
Maximum number of concurrent connections allowed for HTTP/1.x
Flags : Read / Write
Default value : 255
max-connections-per-proxy
“max-connections-per-proxy” guint
Maximum number of concurrent connections allowed per proxy for HTTP/1.x
Flags : Read / Write
Default value : 30
max-connections-per-server
“max-connections-per-server” guint
Maximum number of connections allowed per server for HTTP/1.x
Flags : Read / Write
Default value : 5
max-redirect
“max-redirect” gint
Maximum number of permitted redirections. -1 is unlimited.
Flags : Read / Write
Default value : -1
proxy-id
“proxy-id” gchararray
HTTP proxy URI user id for authentication
Flags : Read / Write
Default value : NULL
proxy-pw
“proxy-pw” gchararray
HTTP proxy URI password for authentication
Flags : Read / Write
Default value : NULL
retries
“retries” gint
Maximum number of retries until giving up (-1=infinite)
Flags : Read / Write
Default value : -1
ssl-ca-file
“ssl-ca-file” gchararray
Location of an SSL CA file to use for checking SSL certificates
Flags : Read / Write
Default value : NULL
ssl-strict
“ssl-strict” gboolean
Strict SSL certificate checking
Flags : Read / Write
Default value : true
timeout
“timeout” gint
Value in seconds before timeout a blocking request (0 = no timeout)
Flags : Read / Write
Default value : 0
user-agent
“user-agent” gchararray
URI of resource requested
Flags : Read / Write
Default value : GStreamer curlhttpsrc libcurl/
user-id
“user-id” gchararray
HTTP location URI user id for authentication
Flags : Read / Write
Default value : NULL
user-pw
“user-pw” gchararray
HTTP location URI password for authentication
Flags : Read / Write
Default value : NULL
Named constants
Curl-http-version-type
Members
1.0
(0) – HTTP Version 1.0
1.1
(1) – HTTP Version 1.1
2.0
(2) – HTTP Version 2.0
The results of the search are