1
mirror of https://github.com/mpv-player/mpv synced 2024-11-14 22:48:35 +01:00
mpv/video/out
wm4 fd3caa264e stats: some more performance graphs
Add an infrastructure for collecting performance-related data, use it in
some places. Add rendering of them to stats.lua.

There were two main goals: minimal impact on the normal code and normal
playback. So all these stats_* function calls either happen only during
initialization, or return immediately if no stats collection is going
on. That's why it does this lazily adding of stats entries etc. (a first
iteration made each stats entry an API thing, instead of just a single
stats_ctx, but I thought that was getting too intrusive in the "normal"
code, even if everything gets worse inside of stats.c).

You could get most of this information from various profilers (including
the extremely primitive --dump-stats thing in mpv), but this makes it
easier to see the most important information at once (at least in
theory), partially because we know best about the context of various
things.

Not very happy with this. It's all pretty primitive and dumb. At this
point I just wanted to get over with it, without necessarily having to
revisit it later, but with having my stupid statistics.

Somehow the code feels terrible. There are a lot of meh decisions in
there that could be better or worse (but mostly could be better), and it
just sucks but it's also trivial and uninteresting and does the job. I
guess I hate programming. It's so tedious and the result is always shit.
Anyway, enjoy.
2020-04-09 00:33:38 +02:00
..
cocoa cocoa_common: remove deprecated VOCTRLs/VO_EVENTs 2019-12-12 19:56:03 +01:00
cocoa-cb cocoa-cb: remove unnecessary semicolons 2020-02-22 13:56:31 +01:00
d3d11 options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
gpu options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
hwdec vo_gpu: hwdec_vaapi: set correct hw_imgfmt value 2020-01-17 15:08:46 +01:00
opengl options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
placebo video/out/gpu: Add a storable flag to ra_format 2019-07-08 00:59:28 +02:00
vulkan options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
win32 vo_gpu: win: remove exclusive-fullscreen detection hack 2017-12-20 14:53:41 +11:00
android_common.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
android_common.h context_android: move common code to a separate file 2019-09-27 00:05:06 +03:00
aspect.c video: report negative subtitle/OSD margins if necessary 2020-03-26 12:23:32 +01:00
aspect.h aspect: change license to LGPL 2017-06-17 17:08:51 +02:00
bitmap_packer.c video/out/bitmap_packer: Avoid empty initializer list 2019-11-18 16:50:21 +01:00
bitmap_packer.h bitmap_packer: remove some unused functions 2016-07-01 20:29:45 +02:00
cocoa_cb_common.swift cocoa-cb: support maximize/minimize on startup 2020-03-14 12:23:42 +01:00
cocoa_common.h osx: change license of OSX and cocoa files to LGPL 2017-06-24 16:29:22 +02:00
cocoa_common.m mac, cocoa: fix UI updates on none main queue threads 2020-02-22 13:56:31 +01:00
d3d_shader_420p.h vo_direct3d: support NV12 with shaders 2015-03-02 19:09:18 +01:00
d3d_shader_yuv.hlsl vo_direct3d: support NV12 with shaders 2015-03-02 19:09:18 +01:00
dither.c Change GPL/LGPL dual-licensed files to LGPL 2016-01-19 18:36:34 +01:00
dither.h gl_video: improve dithering 2013-05-26 16:44:20 +02:00
dr_helper.c client API: fix potential deadlock problems by throwing more shit at it 2019-09-26 14:14:49 +02:00
dr_helper.h client API: fix potential deadlock problems by throwing more shit at it 2019-09-26 14:14:49 +02:00
drm_atomic.c drm_atomic: do not set immutable properties 2020-02-02 18:01:55 +02:00
drm_atomic.h drm: rename plane options to better, invariant, names 2018-12-01 15:42:20 +02:00
drm_common.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
drm_common.h drm: avoid division by 0 in drm_pflip_cb with bad drivers 2019-12-07 18:34:25 +01:00
drm_prime.c drm_prime: double free bug 2020-03-05 18:12:57 +01:00
drm_prime.h drm_prime: double free bug 2020-03-05 18:12:57 +01:00
filter_kernels.c vo_opengl: refactor scaler LUT weight packing/loading 2017-09-04 13:53:14 +02:00
filter_kernels.h vo_opengl: refactor scaler LUT weight packing/loading 2017-09-04 13:53:14 +02:00
libmpv.h vo_libmpv: support render performance data 2018-11-13 20:43:29 +02:00
vo_caca.c vo_caca: Implement VOCTRL_UPDATE_WINDOW_TITLE 2019-10-29 17:07:41 +01:00
vo_direct3d.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vo_drm.c vo_drm, wo_wlshm: mention that it's software scaling 2020-02-11 21:45:16 +01:00
vo_gpu.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vo_image.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vo_lavc.c encode: get rid of the output packet queue 2018-05-03 01:08:44 +03:00
vo_libmpv.c client API: fix potential deadlock problems by throwing more shit at it 2019-09-26 14:14:49 +02:00
vo_mediacodec_embed.c vo_mediacodec_embed: fix forgotten VO_CAP_NOREDRAW→VO_CAP_NORETAIN 2018-02-20 01:59:20 +02:00
vo_null.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vo_rpi.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vo_sdl.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vo_tct.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vo_vaapi.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vo_vdpau.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vo_wlshm.c vo_drm, wo_wlshm: mention that it's software scaling 2020-02-11 21:45:16 +01:00
vo_x11.c vo_x11: don't call X11 "crap" 2020-02-11 21:43:53 +01:00
vo_xv.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
vo.c stats: some more performance graphs 2020-04-09 00:33:38 +02:00
vo.h vo: fix typo in comment 2020-02-09 18:32:28 +01:00
w32_common.c w32_common: support minimized and maximized properties 2020-01-26 15:36:12 +02:00
w32_common.h w32_common, w32_keyboard: change license to LGPL 2017-06-24 12:54:45 +02:00
wayland_common.c wayland: simplify mouse wheel direction calculation 2020-03-19 20:27:55 +00:00
wayland_common.h wayland: make resizing better 2020-02-13 20:28:59 +00:00
win_state.c win_state: silence a valgrind warning 2019-09-19 20:37:05 +02:00
win_state.h x11: pseudo HiDPI scaling 2017-01-19 16:31:54 +01:00
x11_common.c x11: switch back to StaticGravity 2020-02-22 01:35:12 +01:00
x11_common.h x11: use new option stuff to implement fullscreen 2019-11-29 13:56:58 +01:00