summaryrefslogtreecommitdiffstats
path: root/core/mplayer.c
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2013-07-02 12:18:04 +0200
committerwm4 <wm4@nowhere>2013-07-02 12:19:16 +0200
commit3f3ffd0de4943a1ce8e5dd1fbf457bcba989fc2b (patch)
treef46693b5285f97bc3a24cfed58194caf669b8766 /core/mplayer.c
parente00621ac4605e96c9452f4d65216d0019f7e55cb (diff)
downloadmpv-3f3ffd0de4943a1ce8e5dd1fbf457bcba989fc2b.tar.bz2
mpv-3f3ffd0de4943a1ce8e5dd1fbf457bcba989fc2b.tar.xz
core: update metadata during playback, allow streams to export metadata
STREAM_CTRL_GET_METADATA will be used to poll for streamcast metadata. Also add DEMUXER_CTRL_UPDATE_INFO, which could in theory be used by demux_lavf.c. (Unfortunately, libavformat is too crappy to read metadata mid-stream for mp3 or ogg, so we don't implement it.)
Diffstat (limited to 'core/mplayer.c')
-rw-r--r--core/mplayer.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/core/mplayer.c b/core/mplayer.c
index b564048560..28d120f636 100644
--- a/core/mplayer.c
+++ b/core/mplayer.c
@@ -3643,6 +3643,11 @@ static void run_playloop(struct MPContext *mpctx)
mp_input_get_cmd(mpctx->input, sleeptime * 1000, true);
}
+ if (mp_time_sec() > mpctx->last_metadata_update + 2) {
+ demux_info_update(mpctx->demuxer);
+ mpctx->last_metadata_update = mp_time_sec();
+ }
+
//================= Keyboard events, SEEKing ====================
handle_pause_on_low_cache(mpctx);