summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan-Simon Moeller <jsmoeller@linuxfoundation.org>2018-01-16 10:23:57 +0000
committerGerrit Code Review <gerrit@automotivelinux.org>2018-01-16 10:23:57 +0000
commitc290122b3738bef82bca33cee71344903a740a77 (patch)
tree810d31f9cb055ef189ea223760a4317681b250cc
parentd76a25b3be19d78cdb0d3204c486ac2d1706cac9 (diff)
parentcf497d56f9c712cf5d7d32699d88de6504c209dc (diff)
Merge "binding: mediaplayer: only get audio results"
-rw-r--r--binding/afm-common.h1
-rw-r--r--binding/afm-mediaplayer-binding.c16
2 files changed, 15 insertions, 2 deletions
diff --git a/binding/afm-common.h b/binding/afm-common.h
index 302dd26..34258da 100644
--- a/binding/afm-common.h
+++ b/binding/afm-common.h
@@ -35,6 +35,7 @@ struct playlist_item {
gchar *genre;
gint64 duration;
gchar *media_path;
+ gchar *media_type;
};
enum {
diff --git a/binding/afm-mediaplayer-binding.c b/binding/afm-mediaplayer-binding.c
index 478ba0e..b344917 100644
--- a/binding/afm-mediaplayer-binding.c
+++ b/binding/afm-mediaplayer-binding.c
@@ -105,6 +105,14 @@ static gboolean populate_from_json(struct playlist_item *item, json_object *jdic
return ret;
item->media_path = g_strdup(json_object_get_string(val));
+ ret = json_object_object_get_ex(jdict, "type", &val);
+ if (!ret) {
+ g_object_unref(item->media_path);
+ return ret;
+ }
+ item->media_type = g_strdup(json_object_get_string(val));
+
+
ret = json_object_object_get_ex(jdict, "title", &val);
if (ret) {
item->title = g_strdup(json_object_get_string(val));
@@ -199,8 +207,12 @@ static json_object *populate_json_playlist(json_object *jresp)
json_object *jarray = json_object_new_array();
for (l = playlist; l; l = l->next) {
- json_object *item = populate_json(l->data);
- json_object_array_add(jarray, item);
+ struct playlist_item *track = l->data;
+
+ if (track && !g_strcmp0(track->media_type, "audio")) {
+ json_object *item = populate_json(track);
+ json_object_array_add(jarray, item);
+ }
}
json_object_object_add(jresp, "list", jarray);