mirror of
https://github.com/mpv-player/mpv.git
synced 2025-12-28 05:33:14 +00:00
command: add track-list/N/audio-channels property
Signed-off-by: wm4 <wm4@nowhere> (With some heavy modifications from the original patch.)
This commit is contained in:
@@ -20,6 +20,7 @@ Interface changes
|
|||||||
::
|
::
|
||||||
|
|
||||||
--- mpv 0.10.0 will be released ---
|
--- mpv 0.10.0 will be released ---
|
||||||
|
- add ``track-list/N/audio-channels`` property
|
||||||
- change --screenshot-tag-colorspace default value
|
- change --screenshot-tag-colorspace default value
|
||||||
- add --stretch-image-subs-to-screen
|
- add --stretch-image-subs-to-screen
|
||||||
- add "playlist/N/title" property
|
- add "playlist/N/title" property
|
||||||
|
|||||||
@@ -1574,6 +1574,10 @@ Property list
|
|||||||
``track-list/N/lang``
|
``track-list/N/lang``
|
||||||
Track language as identified by the file. Not always available.
|
Track language as identified by the file. Not always available.
|
||||||
|
|
||||||
|
``track-list/N/audio-channels``
|
||||||
|
For audio tracks, the number of audio channels in the audio stream.
|
||||||
|
Not always accurate (depends on container hints). Not always available.
|
||||||
|
|
||||||
``track-list/N/albumart``
|
``track-list/N/albumart``
|
||||||
``yes`` if this is a video track that consists of a single picture,
|
``yes`` if this is a video track that consists of a single picture,
|
||||||
``no`` or unavailable otherwise. This is used for video tracks that are
|
``no`` or unavailable otherwise. This is used for video tracks that are
|
||||||
@@ -1622,6 +1626,7 @@ Property list
|
|||||||
"src-id" MPV_FORMAT_INT64
|
"src-id" MPV_FORMAT_INT64
|
||||||
"title" MPV_FORMAT_STRING
|
"title" MPV_FORMAT_STRING
|
||||||
"lang" MPV_FORMAT_STRING
|
"lang" MPV_FORMAT_STRING
|
||||||
|
"audio-channels" MPV_FORMAT_INT64
|
||||||
"albumart" MPV_FORMAT_FLAG
|
"albumart" MPV_FORMAT_FLAG
|
||||||
"default" MPV_FORMAT_FLAG
|
"default" MPV_FORMAT_FLAG
|
||||||
"forced" MPV_FORMAT_FLAG
|
"forced" MPV_FORMAT_FLAG
|
||||||
|
|||||||
@@ -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);
|
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)
|
static int get_track_entry(int item, int action, void *arg, void *ctx)
|
||||||
{
|
{
|
||||||
struct MPContext *mpctx = 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},
|
.unavailable = !track->title},
|
||||||
{"lang", SUB_PROP_STR(track->lang),
|
{"lang", SUB_PROP_STR(track->lang),
|
||||||
.unavailable = !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)},
|
{"albumart", SUB_PROP_FLAG(track->attached_picture)},
|
||||||
{"default", SUB_PROP_FLAG(track->default_track)},
|
{"default", SUB_PROP_FLAG(track->default_track)},
|
||||||
{"forced", SUB_PROP_FLAG(track->forced_track)},
|
{"forced", SUB_PROP_FLAG(track->forced_track)},
|
||||||
|
|||||||
Reference in New Issue
Block a user