mirror of https://github.com/mpv-player/mpv
terminal output: show cache fill changes in "PAUSED" message
Convert cache_fill_status into a function so we always get the latest state, not whatever it was after the last read. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32818 b3059339-0415-0410-9bf9-f77b7e298cf2 Update PAUSED status line with cache fill status if it changed. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32819 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
398643d0d7
commit
ba3dab4639
23
mplayer.c
23
mplayer.c
|
@ -1323,7 +1323,7 @@ static void print_status(struct MPContext *mpctx, double a_pos, bool at_frame)
|
|||
#ifdef CONFIG_STREAM_CACHE
|
||||
// cache stats
|
||||
if (stream_cache_size > 0)
|
||||
saddf(line, &pos, width, "%d%% ", cache_fill_status);
|
||||
saddf(line, &pos, width, "%d%% ", cache_fill_status(mpctx->stream));
|
||||
#endif
|
||||
|
||||
// other
|
||||
|
@ -2865,6 +2865,10 @@ static void pause_loop(struct MPContext *mpctx)
|
|||
{
|
||||
struct MPOpts *opts = &mpctx->opts;
|
||||
mp_cmd_t* cmd;
|
||||
#ifdef CONFIG_STREAM_CACHE
|
||||
int old_cache_fill = stream_cache_size > 0 ?
|
||||
cache_fill_status(mpctx->stream) : 0;
|
||||
#endif
|
||||
if (!opts->quiet) {
|
||||
if (opts->term_osd && !mpctx->sh_video) {
|
||||
set_osd_tmsg(OSD_MSG_PAUSE, 1, 0, " ===== PAUSE =====");
|
||||
|
@ -2895,6 +2899,23 @@ static void pause_loop(struct MPContext *mpctx)
|
|||
vo_osd_changed(hack);
|
||||
if (hack)
|
||||
break;
|
||||
#ifdef CONFIG_STREAM_CACHE
|
||||
if (!opts->quiet && stream_cache_size > 0) {
|
||||
int new_cache_fill = cache_fill_status(mpctx->stream);
|
||||
if (new_cache_fill != old_cache_fill) {
|
||||
if (opts->term_osd && !mpctx->sh_video) {
|
||||
set_osd_tmsg(OSD_MSG_PAUSE, 1, 0, "%s %d%%",
|
||||
mp_gtext(" ===== PAUSE ====="),
|
||||
new_cache_fill);
|
||||
update_osd_msg(mpctx);
|
||||
} else
|
||||
mp_msg(MSGT_CPLAYER, MSGL_STATUS, "%s %d%%\r",
|
||||
mp_gtext(" ===== PAUSE ====="),
|
||||
new_cache_fill);
|
||||
old_cache_fill = new_cache_fill;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -95,8 +95,6 @@ typedef struct {
|
|||
|
||||
static int min_fill=0;
|
||||
|
||||
int cache_fill_status=0;
|
||||
|
||||
static void cache_wakeup(stream_t *s)
|
||||
{
|
||||
#if FORKED_CACHE
|
||||
|
@ -161,7 +159,6 @@ static int cache_read(cache_vars_t *s, unsigned char *buf, int size)
|
|||
total+=len;
|
||||
|
||||
}
|
||||
cache_fill_status=(s->max_filepos-s->read_filepos)/(s->buffer_size / 100);
|
||||
return total;
|
||||
}
|
||||
|
||||
|
@ -511,6 +508,14 @@ int cache_stream_fill_buffer(stream_t *s){
|
|||
|
||||
}
|
||||
|
||||
int cache_fill_status(stream_t *s) {
|
||||
cache_vars_t *cv;
|
||||
if (!s || !s->cache_data)
|
||||
return -1;
|
||||
cv = s->cache_data;
|
||||
return (cv->max_filepos-cv->read_filepos)/(cv->buffer_size / 100);
|
||||
}
|
||||
|
||||
int cache_stream_seek_long(stream_t *stream,off_t pos){
|
||||
cache_vars_t* s;
|
||||
off_t newpos;
|
||||
|
|
|
@ -21,9 +21,8 @@
|
|||
|
||||
#include "stream.h"
|
||||
|
||||
extern int cache_fill_status;
|
||||
|
||||
void cache_uninit(stream_t *s);
|
||||
int cache_do_control(stream_t *stream, int cmd, void *arg);
|
||||
int cache_fill_status(stream_t *s);
|
||||
|
||||
#endif /* MPLAYER_CACHE2_H */
|
||||
|
|
Loading…
Reference in New Issue