summaryrefslogtreecommitdiffstats
path: root/player/command.c
diff options
context:
space:
mode:
authordeuiore <deuiore@gmail.com>2015-07-03 02:33:54 +0200
committerwm4 <wm4@nowhere>2015-07-18 19:05:25 +0200
commit7984fde8ded79aa6d130cadf780d8ee71557fa21 (patch)
tree6b7f40c31ea61008b20872a80315245c28cd304c /player/command.c
parentfb8d15836695e883355c5ec6ff8463e7bbf39461 (diff)
downloadmpv-7984fde8ded79aa6d130cadf780d8ee71557fa21.tar.bz2
mpv-7984fde8ded79aa6d130cadf780d8ee71557fa21.tar.xz
command: add track-list/N/audio-channels property
Signed-off-by: wm4 <wm4@nowhere> (With some heavy modifications from the original patch.)
Diffstat (limited to 'player/command.c')
-rw-r--r--player/command.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/player/command.c b/player/command.c
index 0f3e455929..ad87a6314f 100644
--- a/player/command.c
+++ b/player/command.c
@@ -1861,6 +1861,12 @@ static int property_switch_track_ff(void *ctx, struct m_property *prop,
return mp_property_generic_option(mpctx, prop, action, arg);
}
+static int track_channels(struct track *track)
+{
+ return track->stream && track->stream->audio
+ ? track->stream->audio->channels.num : 0;
+}
+
static int get_track_entry(int item, int action, void *arg, void *ctx)
{
struct MPContext *mpctx = ctx;
@@ -1878,6 +1884,8 @@ static int get_track_entry(int item, int action, void *arg, void *ctx)
.unavailable = !track->title},
{"lang", SUB_PROP_STR(track->lang),
.unavailable = !track->lang},
+ {"audio-channels", SUB_PROP_INT(track_channels(track)),
+ .unavailable = track_channels(track) <= 0},
{"albumart", SUB_PROP_FLAG(track->attached_picture)},
{"default", SUB_PROP_FLAG(track->default_track)},
{"forced", SUB_PROP_FLAG(track->forced_track)},