giosrc

This plugin reads data from a local or remote location specified by an URI. This location can be specified using any protocol supported by the GIO library or it's VFS backends. Common protocols are 'file', 'http', 'ftp', or 'smb'.

If an URI or GFile is not mounted giosrc will post a message of type GST_MESSAGE_ELEMENT with name "not-mounted" on the bus. The message also contains the GFile and the corresponding URI. Applications can use the "not-mounted" message to mount the GFile by calling g_file_mount_enclosing_volume and then restart the pipeline after the mounting has succeeded. Note that right after the "not-mounted" message a normal error message is posted on the bus which should be ignored if "not-mounted" is handled by the application, for example by calling gst_bus_set_flushing(bus, TRUE) after the "not-mounted" message was received and gst_bus_set_flushing(bus, FALSE) after the mounting was successful.

Example launch lines

 gst-launch-1.0 -v giosrc location=file:///home/joe/foo.xyz ! fakesink

The above pipeline will simply read a local file and do nothing with the data read. Instead of giosrc, we could just as well have used the filesrc element here.

 gst-launch-1.0 -v giosrc location=smb://othercomputer/foo.xyz ! filesink location=/home/joe/foo.xyz

The above pipeline will copy a file from a remote host to the local file system using the Samba protocol.

 gst-launch-1.0 -v giosrc location=smb://othercomputer/demo.mp3 ! decodebin ! audioconvert ! audioresample ! autoaudiosink

The above pipeline will read and decode and play an mp3 file from a SAMBA server.

Hierarchy

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──GstBaseSrc
                    ╰──GstGioBaseSrc
                        ╰──giosrc

Factory details

Authors: – René Stadler , Sebastian Dröge

Classification:Source/File

Rank – secondary

Plugin – gstgio

Package – GStreamer Base Plug-ins

Pad Templates

src

ANY

Presencealways

Directionsrc

Object typeGstPad


Properties

blocksize

“blocksize” guint

Size in bytes to read per buffer (-1 = default)

Flags : Read / Write

Default value : 4096


do-timestamp

“do-timestamp” gboolean

Apply current stream time to buffers

Flags : Read / Write

Default value : false


file

“file” GFile *

GFile to read from.

Flags : Read / Write


location

“location” gchararray

URI location to read from

Flags : Read / Write

Default value : NULL


num-buffers

“num-buffers” gint

Number of buffers to output before sending EOS (-1 = unlimited)

Flags : Read / Write

Default value : -1


typefind

“typefind” gboolean

Run typefind before negotiating (deprecated, non-functional)

Flags : Read / Write

Default value : false


The results of the search are