From d2e35b2faafab1dfcf5e4acbdc36b569d3834b9a Mon Sep 17 00:00:00 2001 From: xylosper Date: Tue, 18 Mar 2014 13:03:00 +0900 Subject: command: make 'disc-title' property writable This commit makes 'disc-title' property writable using STREAM_CTRL_SET_CURRENT_TITLE. This commit also contains implementation of STREAM_CTRL_SET_CURRENT_TITLE for stream_bluray. Currently, 'disc-title' is writable only for stream_dvdnav and stream_bluray and stream_dvd is not supported. --- player/command.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'player/command.c') diff --git a/player/command.c b/player/command.c index e15d3db54e..d9854af9e8 100644 --- a/player/command.c +++ b/player/command.c @@ -436,7 +436,7 @@ static int mp_property_playtime_remaining(m_option_t *prop, int action, return property_time(prop, action, arg, remaining / speed); } -/// Current BD/DVD title (RO) +/// Current BD/DVD title (RW) static int mp_property_disc_title(m_option_t *prop, int action, void *arg, MPContext *mpctx) { @@ -449,7 +449,13 @@ static int mp_property_disc_title(m_option_t *prop, int action, void *arg, case M_PROPERTY_GET: if (stream_control(stream, STREAM_CTRL_GET_CURRENT_TITLE, &title) <= 0) return M_PROPERTY_UNAVAILABLE; - return m_property_int_ro(prop, action, arg, title); + *(int*)arg = title; + return M_PROPERTY_OK; + case M_PROPERTY_SET: + title = *(int*)arg; + if (stream_control(stream, STREAM_CTRL_SET_CURRENT_TITLE, &title) <= 0) + return M_PROPERTY_NOT_IMPLEMENTED; + return M_PROPERTY_OK; default: return M_PROPERTY_NOT_IMPLEMENTED; } -- cgit v1.2.3