Пример #1
0
/**
 * rb_player_play:
 * @player:	a #RBPlayer
 * @play_type:  requested playback start type
 * @crossfade:	requested crossfade duration (nanoseconds)
 * @error:	returns error information
 *
 * Starts playback of the most recently opened stream.
 * if @play_type is #RB_PLAYER_PLAY_CROSSFADE, the player
 * may attempt to crossfade the new stream with any existing
 * streams.  If it does this, the it will use @crossfade as the
 * duration of the fade.
 *
 * If @play_type is #RB_PLAYER_PLAY_AFTER_EOS, the player may
 * attempt to start the stream immediately after the current
 * playing stream reaches EOS.  This may or may not result in
 * the phenomemon known as 'gapless playback'.
 *
 * If @play_type is #RB_PLAYER_PLAY_REPLACE, the player will stop any
 * existing stream before starting the new stream. It may do
 * this anyway, regardless of the value of @play_type.
 *
 * The 'playing-stream' signal will be emitted when the new stream
 * is actually playing. This may be before or after control returns
 * to the caller.
 *
 * Return value: %TRUE if playback started successfully
 */
gboolean
rb_player_play (RBPlayer *player, RBPlayerPlayType play_type, gint64 crossfade, GError **error)
{
	RBPlayerIface *iface = RB_PLAYER_GET_IFACE (player);

	return iface->play (player, play_type, crossfade, error);
}
/**
 * rb_player_play:
 * @player:	a #RBPlayer
 * @crossfade:	requested crossfade duration
 * @error:	returns error information
 *
 * Starts playback of the most recently opened stream.
 * If @crossfade is greater than zero, the player may attempt
 * to crossfade the new stream with any existing streams.
 *
 * If @crossfade is zero, the player may attempt to start the
 * stream immediately after the current playing stream reaches
 * EOS.  This may or may not result in the phenomemon known
 * as 'gapless playback'.
 *
 * If @crossfade is less than zero, the player will stop any
 * existing stream before starting the new stream. It may do
 * this anyway, regardless of the value of @crossfade.
 *
 * The 'playing-stream' signal will be emitted when the new stream
 * is actually playing. This may be before or after control returns
 * to the caller.
 *
 * Return value: TRUE if playback started successfully
 */
gboolean
rb_player_play (RBPlayer *player, gint crossfade, GError **error)
{
	RBPlayerIface *iface = RB_PLAYER_GET_IFACE (player);

	return iface->play (player, crossfade, error);
}