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 GstCurlHttpSrc: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

src

ANY

Presencealways

Directionsrc

Object typeGstPad


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


cookies

“cookies” GStrv *

List of HTTP Cookies

Flags : Read / Write


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


location

“location” gchararray

URI of resource to read

Flags : Read / Write

Default value : NULL


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

“proxy” gchararray

URI of HTTP proxy server

Flags : Read / Write

Default value : NULL


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