## RygelPlaybinRenderer

RygelPlaybinRenderer — An in-process UPnP renderer that uses a GStreamer Playbin element.

## Functions

#define | RYGEL_PLAYBIN_TYPE_RENDERER
GstElement * | rygel_playbin_renderer_get_playbin ()
RygelPlaybinRenderer * | rygel_playbin_renderer_new ()
RygelPlaybinRenderer * | rygel_playbin_renderer_new_wrap ()

## Types and Values

struct | RygelPlaybinRenderer
struct | RygelPlaybinRendererClass

## Object Hierarchy

        GObject
        ╰── RygelMediaDevice
            ╰── RygelMediaRenderer
                ╰── RygelPlaybinRenderer

## Description

Using GstPlayBin as a model, it reflects any changes done externally, such as changing the currently played URI, volume, pause/play etc., to UPnP.

Likewise, the playbin can be modified externally using UPnP.

You can retrieve the GstPlayBin by calling `rygel_playbin_renderer_get_playbin()`. You should then set the "video-sink" and "audio-sink" properties of the playbin.

Call `rygel_media_device_add_interface()` on the Renderer to allow it to be controlled by a control point and to retrieve data streams via that network interface.

See the <link linkend="implementing-renderers-gst">Implementing GStreamer-based Renderers</link> section.

## Functions

### RYGEL_PLAYBIN_TYPE_RENDERER

    #define RYGEL_PLAYBIN_TYPE_RENDERER (rygel_playbin_renderer_get_type ())

The type for RygelPlaybinRenderer.

### rygel_playbin_renderer_get_playbin ()

    GstElement *
    rygel_playbin_renderer_get_playbin (RygelPlaybinRenderer *self);

Get the GstPlayBin used by this Renderer.

#### Parameters

self | the RygelPlaybinRenderer instance |

### rygel_playbin_renderer_new ()

    RygelPlaybinRenderer *
    rygel_playbin_renderer_new (const gchar *title);

Create a new instance of Renderer.

Renderer will instantiate its own instance of GstPlayBin. The GstPlayBin can be accessed by using `rygel_playbin_player_get_playbin()`.

#### Parameters

title | . Friendly name of the new UPnP renderer on the network. | [in]

### rygel_playbin_renderer_new_wrap ()

    RygelPlaybinRenderer *
    rygel_playbin_renderer_new_wrap (GstElement *pipeline,
                                     const gchar *title);

Create a new instance of Renderer, wrapping an existing GstPlayBin instance.

#### Parameters

pipeline | . Instance of GstPlayBin to wrap. | [in]
title | . Friendly name of the new UPnP renderer on the network. | [in]

## Types and Values

### struct RygelPlaybinRenderer

    struct RygelPlaybinRenderer;

An in-process UPnP renderer that uses a GStreamer Playbin element.

Using GstPlayBin as a model, it reflects any changes done externally, such as changing the currently played URI, volume, pause/play etc., to UPnP.

Likewise, the playbin can be modified externally using UPnP.

You can retrieve the GstPlayBin by calling `rygel_playbin_renderer_get_playbin()`. You should then set the "video-sink" and "audio-sink" properties of the playbin.

Call `rygel_media_device_add_interface()` on the Renderer to allow it to be controlled by a control point and to retrieve data streams via that network interface.

See the <link linkend="implementing-renderers-gst">Implementing GStreamer-based Renderers</link> section.

### struct RygelPlaybinRendererClass

    struct RygelPlaybinRendererClass {
    	RygelMediaRendererClass parent_class;
    };

The class structure for `RYGEL_PLAYBIN_TYPE_RENDERER`. All the fields in this structure are private and should never be accessed directly.

#### Members

RygelMediaRendererClass `parent_class`; | the parent class structure |