128
128
void player_pause (Player* self);
129
129
void player_seek (Player* self, gint64 time);
130
130
GstState player_get_state (Player* self);
131
gchar* player_state_as_string (GstState state);
131
132
void player_toggle_play_pause (Player* self);
132
133
Track* player_get_current_track (Player* self);
133
134
void player_previous (Player* self);
137
138
void player_set_track_duration_int (Player* self, gint64 value);
138
139
void player_set_track_position_int (Player* self, gint64 value);
139
140
void player_set_track_position (Player* self, const gchar* value);
140
GHashTable* player_get_track_mpris_metadata (Player* self);
141
static void _g_free0_ (gpointer var);
142
static void _g_variant_unref0_ (gpointer var);
143
static GVariant* _variant_new1 (const gchar* value);
144
static GVariant* _variant_new2 (const gchar* value);
145
static GVariant* _variant_new3 (const gchar* value);
146
static GVariant* _variant_new4 (gint32 value);
147
141
const gchar* player_get_track_position (Player* self);
148
142
gint64 player_get_track_position_int (Player* self);
149
143
gint64 player_get_track_duration_int (Player* self);
307
gchar* player_state_as_string (GstState state) {
308
gchar* result = NULL;
310
case GST_STATE_PLAYING:
313
_tmp0_ = g_strdup ("Playing");
317
case GST_STATE_PAUSED:
320
_tmp1_ = g_strdup ("Paused");
327
_tmp2_ = g_strdup ("Stopped");
333
g_assert_not_reached ();
313
339
void player_toggle_play_pause (Player* self) {
314
340
GstState state = 0;
436
static void _g_free0_ (gpointer var) {
437
var = (g_free (var), NULL);
441
static void _g_variant_unref0_ (gpointer var) {
442
(var == NULL) ? NULL : (var = (g_variant_unref (var), NULL));
446
static GVariant* _variant_new1 (const gchar* value) {
447
return g_variant_ref_sink (g_variant_new_string (value));
451
static GVariant* _variant_new2 (const gchar* value) {
452
return g_variant_ref_sink (g_variant_new_string (value));
456
static GVariant* _variant_new3 (const gchar* value) {
457
return g_variant_ref_sink (g_variant_new_string (value));
461
static GVariant* _variant_new4 (gint32 value) {
462
return g_variant_ref_sink (g_variant_new_int32 (value));
466
GHashTable* player_get_track_mpris_metadata (Player* self) {
467
GHashTable* result = NULL;
468
GHashTable* _tmp0_ = NULL;
469
GHashTable* metadata;
474
g_return_val_if_fail (self != NULL, NULL);
475
_tmp0_ = g_hash_table_new_full (g_str_hash, g_str_equal, _g_free0_, _g_variant_unref0_);
477
_tmp1_ = g_strdup ("xesam:album");
478
g_hash_table_insert (metadata, _tmp1_, _variant_new1 (self->priv->_current_track->album));
479
_tmp2_ = g_strdup ("xesam:artist");
480
g_hash_table_insert (metadata, _tmp2_, _variant_new2 (self->priv->_current_track->artist));
481
_tmp3_ = g_strdup ("xesam:title");
482
g_hash_table_insert (metadata, _tmp3_, _variant_new3 (self->priv->_current_track->title));
483
_tmp4_ = g_strdup ("xesam:trackNumber");
484
g_hash_table_insert (metadata, _tmp4_, _variant_new4 ((gint32) self->priv->_current_track->number));
490
462
Track* player_get_current_track (Player* self) {
492
464
g_return_val_if_fail (self != NULL, NULL);
599
571
self->priv = PLAYER_GET_PRIVATE (self);
572
self->priv->_current_track = NULL;
600
573
_tmp0_ = gee_array_list_new (TYPE_TRACK, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL);
601
574
self->priv->track_list = _tmp0_;
602
575
self->priv->timeout = NULL;