diff options
author | wm4 <wm4@nowhere> | 2014-07-30 02:21:35 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2014-07-30 02:21:51 +0200 |
commit | 6856d81c6826e9698fe0154903f509d5a82917bb (patch) | |
tree | 65c0f0dc2a0452764dd464c3c88c8b46278ec606 /stream/cache.c | |
parent | 26d973ce827555619405bf62db24bf4ae12a4a90 (diff) | |
download | mpv-6856d81c6826e9698fe0154903f509d5a82917bb.tar.bz2 mpv-6856d81c6826e9698fe0154903f509d5a82917bb.tar.xz |
stream: hack-fix rtmp-level seeking
This didn't work, because the timebase was wrong. According to the
ffmpeg doxygen, if the stream index is -1 (which is what we used), the
timebase is AV_TIME_BASE. But this didn't work, and it really expected
the stream's timebase. Quite "surprising", since this feature
(avio_seek_time) is used by rtmp only.
Fixing this properly is too hard, so hack-fix our way around it.
STREAM_CTRL_SEEK_TO_TIME is also used by DVD/BD, so a new
STREAM_CTRL_AVSEEK is added. We simply pass-through the request
verbatim.
Diffstat (limited to 'stream/cache.c')
-rw-r--r-- | stream/cache.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/stream/cache.c b/stream/cache.c index b1b3c9301f..6bd729c6fa 100644 --- a/stream/cache.c +++ b/stream/cache.c @@ -412,6 +412,7 @@ static bool control_needs_flush(int stream_ctrl) { switch (stream_ctrl) { case STREAM_CTRL_SEEK_TO_TIME: + case STREAM_CTRL_AVSEEK: case STREAM_CTRL_SET_ANGLE: case STREAM_CTRL_SET_CURRENT_TITLE: return true; |