parole-provider-player: Parole Plugins Reference Manual

## parole-provider-player parole-provider-player |

## Functions

GtkWidget * | parole_provider_player_get_main_window ()
void | parole_provider_player_pack ()
GSimpleAction * | parole_provider_player_get_action ()
gboolean | parole_provider_player_set_fullscreen ()
gboolean | parole_provider_player_get_fullscreen ()
void | parole_stream_set_image ()
GdkPixbuf * | parole_stream_get_image ()
ParoleState | parole_provider_player_get_state ()
const ParoleStream * | parole_provider_player_get_stream ()
gdouble | parole_provider_player_get_stream_position ()
gboolean | parole_provider_player_play_uri ()
gboolean | parole_provider_player_pause ()
gboolean | parole_provider_player_resume ()
gboolean | parole_provider_player_stop ()
gboolean | parole_provider_player_play_next ()
gboolean | parole_provider_player_play_previous ()
gboolean | parole_provider_player_seek ()
void | parole_provider_player_open_media_chooser ()

## Signals

void | seeked | Run Last
void | state-changed | Run Last
void | tag-message | Run Last

## Types and Values

struct | ParoleProviderPlayerIface
| ParoleProviderPlayer
enum | ParolePluginContainer
enum | ParoleState

## Object Hierarchy

        GInterface
        ╰── ParoleProviderPlayerIface

## Prerequisites

ParoleProviderPlayerIface requires GObject.

## Description

## Functions

### parole_provider_player_get_main_window ()

    GtkWidget *
    parole_provider_player_get_main_window
                                   (ParoleProviderPlayer *player);

Ask the Player to get the Parole main window.

#### Parameters

player | a ParoleProviderPlayer |

#### Returns

a GtkWidget window

Since: 0.2

### parole_provider_player_pack ()

    void
    parole_provider_player_pack (ParoleProviderPlayer *player,
                                 GtkWidget *widget,
                                 const gchar *title,
                                 ParolePluginContainer container);

Ask the player to pack a widget in the playlist notebook if PAROLE_PLUGIN_CONTAINER_PLAYLIST is specified or in the main window notebook if PAROLE_PLUGIN_CONTAINER_MAIN_VIEW is specified.

This function can be called once, the Player is responsible on removing the widget in case the plugin was unloaded.

#### Parameters

player | a ParoleProviderPlayer |
widget | a GtkWidget |
title | title |
container | a ParolePluginContainer |

Since: 0.2

### parole_provider_player_get_action ()

    GSimpleAction *
    parole_provider_player_get_action (ParoleProviderPlayer *player,
                                       ParolePlayerAction action);

Get GSimpleAction from Parole.

#### Parameters

player | a ParoleProviderPlayer |
action | the ParolePlayerAction to retrieve |

#### Returns

the requested GSimpleAction

Since: 0.6

### parole_provider_player_set_fullscreen ()

    gboolean
    parole_provider_player_set_fullscreen (ParoleProviderPlayer *player,
                                           gboolean fullscreen);

Set fullscreen status for Parole.

#### Parameters

player | a ParoleProviderPlayer |
fullscreen | TRUE for fullscreen, FALSE for unfullscreen |

#### Returns

TRUE if the fullscreen command succeeded, FALSE otherwise

Since: 0.6

### parole_provider_player_get_fullscreen ()

    gboolean
    parole_provider_player_get_fullscreen (ParoleProviderPlayer *player);

Get fullscreen status for Parole.

#### Parameters

player | a ParoleProviderPlayer |

#### Returns

TRUE if the player window is fullscreen, FALSE otherwise

Since: 0.6

### parole_stream_set_image ()

    void
    parole_stream_set_image (GObject *object,
                             GdkPixbuf *pixbuf);

Set the ParoleStream image to a new pixbuf.

#### Parameters

object | a ParoleStream object |
pixbuf | a GdkPixbuf to set as the stream image |

Since: 0.6

### parole_stream_get_image ()

    GdkPixbuf *
    parole_stream_get_image (GObject *object);

Get the ParoleStream image pixbuf.

#### Parameters

object | a ParoleStream object |

#### Returns

a GdkPixbuf

Since: 0.6

### parole_provider_player_get_state ()

    ParoleState
    parole_provider_player_get_state (ParoleProviderPlayer *player);

Get the current state of the player.

#### Parameters

player | a ParoleProviderPlayer |

#### Returns

a ParoleState

Since: 0.2

### parole_provider_player_get_stream ()

    const ParoleStream *
    parole_provider_player_get_stream (ParoleProviderPlayer *player);

Get the ParoleStream object.

#### Parameters

player | a ParoleProviderPlayer |

#### Returns

the ParoleStream object

Since: 0.2

### parole_provider_player_get_stream_position ()

    gdouble
    parole_provider_player_get_stream_position
                                   (ParoleProviderPlayer *player);

Get the stream position (in microseconds) for Parole.

#### Parameters

player | a ParoleProviderPlayer |

#### Returns

a gdouble containing the current stream position in microseconds

Since: 0.6

### parole_provider_player_play_uri ()

    gboolean
    parole_provider_player_play_uri (ParoleProviderPlayer *player,
                                     const gchar *uri);

Issue a play command on the backend for the given uri, note this function can be called only of the Parole current state is PAROLE_STATE_STOPPED.

Returning TRUE doesn't mean that the funtion succeeded to change the state of the player, the state change is indicated asynchronously by “state-changed” signal.

#### Parameters

player | a ParoleProviderPlayer |
uri | uri |

#### Returns

TRUE if the command is processed, FALSE otherwise

Since: 0.2

### parole_provider_player_pause ()

    gboolean
    parole_provider_player_pause (ParoleProviderPlayer *player);

Issue a pause command to the backend, this function can be called when the state of the player is PAROLE_STATE_PLAYING.

Returning TRUE doesn't mean that the funtion succeeded to change the state of the player, the state change is indicated asynchronously by “state-changed” signal.

#### Parameters

player | a ParoleProviderPlayer |

#### Returns

TRUE if the command is processed, FALSE otherwise

Since: 0.2

### parole_provider_player_resume ()

    gboolean
    parole_provider_player_resume (ParoleProviderPlayer *player);

Issue a resume command to the player, this function can be called when the current state of the player is PAROLE_STATE_PAUSED.

Returning TRUE doesn't mean that the funtion succeeded to change the state of the player, the state change is indicated asynchronously by “state-changed” signal.

#### Parameters

player | a ParoleProviderPlayer |

#### Returns

TRUE if the command is processed, FALSE otherwise

Since: 0.2

### parole_provider_player_stop ()

    gboolean
    parole_provider_player_stop (ParoleProviderPlayer *player);

Issue a stop command to the player.

Returning TRUE doesn't mean that the funtion succeeded to change the state of the player, the state change is indicated asynchronously by “state-changed” signal.

#### Parameters

player | a ParoleProviderPlayer |

#### Returns

TRUE if the command is processed, FALSE otherwise

Since: 0.2

### parole_provider_player_play_next ()

    gboolean
    parole_provider_player_play_next (ParoleProviderPlayer *player);

Issue a play next command to the player.

#### Parameters

player | a ParoleProviderPlayer |

#### Returns

TRUE if the command is processed, FALSE otherwise

Since: 0.6

### parole_provider_player_play_previous ()

    gboolean
    parole_provider_player_play_previous (ParoleProviderPlayer *player);

Issue a play previous command to the player.

#### Parameters

player | a ParoleProviderPlayer |

#### Returns

TRUE if the command is processed, FALSE otherwise

Since: 0.6

### parole_provider_player_seek ()

    gboolean
    parole_provider_player_seek (ParoleProviderPlayer *player,
                                 gdouble pos);

Issue a seek command.

#### Parameters

player | a ParoleProviderPlayer |
pos | position to seek |

#### Returns

TRUE if the seek command succeeded, FALSE otherwise

Since: 0.2

### parole_provider_player_open_media_chooser ()

    void
    parole_provider_player_open_media_chooser
                                   (ParoleProviderPlayer *player);

Ask Parole to open its media chooser dialog.

#### Parameters

player | a ParoleProviderPlayer |

Since: 0.2

## Types and Values

### struct ParoleProviderPlayerIface

    struct ParoleProviderPlayerIface;

Interface for ParoleProviderPlayer

Since: 0.2

### ParoleProviderPlayer

    typedef struct _ParoleProviderPlayer ParoleProviderPlayer;

The player interface that the plugins should use in order to, issue playback commands to the Parole GStreamer backend or to get information about the current playback status.

Since: 0.2

### enum ParolePluginContainer

Available plugin widget containers.

#### Members

PAROLE_PLUGIN_CONTAINER_PLAYLIST | Playlist container |
PAROLE_PLUGIN_CONTAINER_MAIN_VIEW | Main view container |

### enum ParoleState

Media playback states.

#### Members

PAROLE_STATE_STOPPED | Playback is stopped |
PAROLE_STATE_PLAYBACK_FINISHED | Playback has finished |
PAROLE_STATE_ABOUT_TO_FINISH | Playback is about to finish |
PAROLE_STATE_PAUSED | Playback is paused |
PAROLE_STATE_PLAYING | Playback is active |

## Signal Details

### The `“seeked”` signal

    void
    user_function (ParoleProviderPlayerIface *player,
                   gdouble                    value,
                   gpointer                   user_data)

Notifies when the stream has been manually advanced.

#### Parameters

player | the object which received the signal |
value | the seeked position |
user_data | user data set when the signal handler was connected. |

Flags: Run Last

Since: 0.6

### The `“state-changed”` signal

    void
    user_function (ParoleProviderPlayerIface *player,
                   ParoleStream              *stream,
                   ParoleState                state,
                   gpointer                   user_data)

Issued when the Parole state changed.

#### Parameters

player | the object which received the signal |
stream | a ParoleStream |
state | the new state |
user_data | user data set when the signal handler was connected. |

Flags: Run Last

Since: 0.2

### The `“tag-message”` signal

    void
    user_function (ParoleProviderPlayerIface *player,
                   ParoleStream              *stream,
                   gpointer                   user_data)

Indicates that the stream tags were found and ready to be read.

#### Parameters

player | the object which received the signal |
stream | a ParoleStream |
user_data | user data set when the signal handler was connected. |

Flags: Run Last

Since: 0.2