0
0
mirror of https://github.com/mpv-player/mpv.git synced 2024-09-20 12:02:23 +02:00
mpv/core
wm4 23ab098969 video: remove slice based filtering and video output
Slices allowed filtering or drawing video in horizontal bands or
blocks. This allowed working on the video in smaller units. In theory,
this could bring a performance win by lowering cache pressure, as you
didn't have to keep the whole video frame in cache while filtering,
only the slice.

In practice, the slice code path was barely used for the following
reasons:
- Multithreaded decoding with ffmpeg didn't use slices. The ffmpeg
  slice callback was disabled, because it can be called from another
  thread, and the mplayer video chain is not thread-safe.
- There was nothing that would turn "full" images into appropriate
  slices, so slices were rarely used.
- Most filters didn't actually support slices.

On the other hand, supporting slices lead to code duplication and more
complex code in general. I made some experiments and didn't find any
actual measurable performance improvements when using slices. Even
ffmpeg removed slices based filtering from libavfilter in favor of
simpler code.

The most broken thing about the slices code path is that slices can't
be queued, like it is done for images in vo.c.
2013-01-13 17:39:31 +01:00
..
input path: add mp_find_config_file and reorganize some of the code 2012-12-15 17:38:00 +01:00
timeline cache: refactor how cache enabling is done 2012-12-03 21:08:51 +01:00
asxparser.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
asxparser.h
av_log.c demux_lavf: add support for libavdevice 2012-12-03 21:08:51 +01:00
av_log.h
av_opts.c
av_opts.h
bstr.c Replace strsep() uses 2013-01-13 17:32:39 +01:00
bstr.h Replace strsep() uses 2013-01-13 17:32:39 +01:00
cfg-mplayer.h video: remove slice based filtering and video output 2013-01-13 17:39:31 +01:00
codec-cfg.c mplayer: disable auto-loading of external codecs.conf 2012-11-20 18:00:15 +01:00
codec-cfg.h
command.c Replace strsep() uses 2013-01-13 17:32:39 +01:00
command.h
cpudetect.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
cpudetect.h Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
defaultopts.c core: allow disabling display of "album art" in audio files 2012-12-11 00:37:55 +01:00
defaultopts.h
encode_lavc.c sdl, encode_lavc: fix copyright headers 2012-12-28 11:41:30 +01:00
encode_lavc.h sdl, encode_lavc: fix copyright headers 2012-12-28 11:41:30 +01:00
encode.h
m_config.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
m_config.h Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
m_option.c m_option: print valid integer range for choices on parsing errors 2012-11-20 18:00:15 +01:00
m_option.h m_option: add color option type 2012-11-20 18:00:15 +01:00
m_property.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
m_property.h
m_struct.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
m_struct.h Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
mp_common.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
mp_common.h build: identify the build time of the binary in the versioning output 2012-12-03 21:08:51 +01:00
mp_core.h core: allow disabling display of "album art" in audio files 2012-12-11 00:37:55 +01:00
mp_fifo.c input: do not generate double clicks for mouse wheel 2012-12-03 21:08:52 +01:00
mp_fifo.h Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
mp_msg.c build: remove doc/locale language auto-detection, simplify 2012-11-14 11:26:43 +01:00
mp_msg.h Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
mp_osd.h core: minor cleanups 2012-11-20 18:00:16 +01:00
mp_talloc.h mp_common.h: split parts into mp_talloc.h and compiler.h 2012-11-12 20:08:57 +01:00
mpc_info.h
mplayer.c core: timeline: prevent inaccurate seeks outside timeline 2013-01-13 13:25:50 +01:00
mplayer.h sub: remove vobsub reader in favor of ffmpeg vobsub demuxer 2012-12-11 00:37:54 +01:00
options.h video: remove slice based filtering and video output 2013-01-13 17:39:31 +01:00
parser-cfg.c Fix potential bugs and issues, general cleanups 2012-11-20 18:00:14 +01:00
parser-cfg.h
parser-mpcmd.c options: handle -v during pre-parsing command line 2012-12-12 23:02:03 +01:00
parser-mpcmd.h
path.c path: add mp_find_config_file and reorganize some of the code 2012-12-15 17:38:00 +01:00
path.h path: add mp_find_config_file and reorganize some of the code 2012-12-15 17:38:00 +01:00
playlist_parser.c options: rename -ss and -endpos, allow relative times 2012-11-16 21:21:15 +01:00
playlist_parser.h
playlist.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
playlist.h Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
quvi.c Fix lots of bugs in mp_http URL handling 2013-01-10 14:11:26 +01:00
screenshot.c screenshot: add subs even with vf_screenshot 2012-11-21 19:58:51 +01:00
screenshot.h
subopt-helper.c Rename directories, move files (step 2 of 2) 2012-11-12 20:08:18 +01:00
subopt-helper.h
version.c build: identify the build time of the binary in the versioning output 2012-12-03 21:08:51 +01:00