summaryrefslogtreecommitdiffstats
path: root/src/player.c
diff options
context:
space:
mode:
authorLouis Burda <quent.burda@gmail.com>2022-12-18 01:12:48 +0100
committerLouis Burda <quent.burda@gmail.com>2022-12-18 01:12:48 +0100
commit33b966e7236912d06ff5033f69b69c687a7a7803 (patch)
treefff49981fc5707379e5126327fd830c9316b560d /src/player.c
parent2094e88cd1f4ddf511a5810f2ab376e49f1eeba3 (diff)
downloadtmus-33b966e7236912d06ff5033f69b69c687a7a7803.tar.gz
tmus-33b966e7236912d06ff5033f69b69c687a7a7803.zip
Implement player backend for mplay
Diffstat (limited to 'src/player.c')
-rw-r--r--src/player.c42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/player.c b/src/player.c
index 6e1a69b..258a1b8 100644
--- a/src/player.c
+++ b/src/player.c
@@ -86,6 +86,40 @@ player_next_from_playlist(void)
return NULL;
}
+/* implemented by backend:
+ *
+ * void player_init(void);
+ * void player_deinit(void);
+ *
+ * void player_update(void);
+ *
+ * int player_play_track(struct track *track, bool new);
+ * int player_clear_track(void);
+ */
+
+void
+player_add_history(struct track *new)
+{
+ struct link *link;
+ struct track *track;
+
+ link = list_back(&player.history);
+ if (link) {
+ track = UPCAST(link, struct track, link_hs);
+ if (track == new) return;
+ }
+
+ link_pop(&new->link_hs);
+ list_push_back(&player.history, &new->link_hs);
+}
+
+/* implemented by backend:
+ *
+ * int player_toggle_pause(void);
+ * int player_pause(void);
+ * int player_resume(void);
+ */
+
int
player_prev(void)
{
@@ -139,4 +173,12 @@ clear:
return PLAYER_STATUS_ERR;
}
+/* implemented by backend:
+ *
+ * int player_seek(int sec);
+ * int player_play(void);
+ * int player_stop(void);
+ *
+ * int player_set_volume(unsigned int vol);
+ */