summaryrefslogtreecommitdiffstats
path: root/DOCS/man/en/vf.rst
Commit message (Collapse)AuthorAgeFilesLines
* manpage: mark some filters as deprecated in favor of libavfilterwm42013-05-261-0/+29
| | | | | | | | This is basically a "do not use" label. We don't remove them yet, because we still support FFmpeg releases where we can not use libavfilter for various reasons. Also, Libav causes pain as usual due to the lack of ported mplayer filters in its codebase, so not all filters will be available there.
* vf_lavfi: allow setting avoptswm42013-05-261-1/+9
|
* options: allow using [ ] for quoting in sub-optionswm42013-04-261-6/+13
| | | | | | This is an attempt to make quoting of sub-option values less awkward, even if it works only with some shells. This is needed mainly for vf_lavfi. Also update the vf_lavfi manpage section.
* m_option: allow quoted positional parameters for -vfwm42013-04-231-1/+2
| | | | | | | | | This allows things like: '--vf=lavfi="gradfun=20:30"' Adjust the documentation for vf_lavfi to make the example less verbose. As an unrelated change, add a general description to vf_lavfi.
* vf_lavfi: add libavfilter bridgewm42013-04-211-0/+31
| | | | | | | | | | | | | | | | | Requires recent FFmpeg/Libav git versions. Earlier versions will not be supported, as the API is different. (A libavfilter version that uses AVFrame instead of AVFilterBuffer is needed.) Note that this is sort of useless, because the option parser prevents you from making use of the full libavfilter graph syntax. This has to be fixed later. Most of the filter creation code (half of the config() function) has been taken from avplay.c. This code is not based on MPlayer's vf_lavfi. The MPlayer code doesn't compile as it hasn't been updated through multiple libavfilter API changes, making it completely useless as a starting point.
* vf_yadif: switch to option parser, allow disabling by defaultwm42013-02-231-6/+5
| | | | | | | | | Use the option parser instead of sscanf. Remove the parameter changing the field dominance (it has been marked deprecated for ages). Add a new suboption "enabled", which can be used to disable the filter by default, until it's enabled at runtime: mpv -vf yadif=enabled=no
* vf_scale: remove video dimension presets ("presize" suboption)wm42013-02-231-11/+1
| | | | | This wasn't really useful, and the option preset mechanism is awfully complex.
* screenshot: minor simplification, prefer VF over VOwm42013-01-301-3/+0
| | | | | | | | | | | | | Remove screenshot_force and associated logic. Always try to use the screenshot video filter before trying taking screenshots with the VO, which means that --vf=screenshot now takes the role of --vf=screenshot_force. (To make this clear, not adding a video filter is still the recommended way to take screenshots; we just change how VF screenshots are forced.) Preferring VO over VF and having --vf=screenshot_force used to make sense when not all VOs supported screenshots, and some VOs had somewhat broken screenshots (like vo_xv taking screenshots with OSD in it). But all these issues are fixed now, so just get rid of the cruft.
* manpage: fix places that still treat FourCCs and pixel formats equalwm42013-01-171-10/+10
| | | | | | | | | | | | | | | The video filter chain traditionally used FourCCs for pixel formats. This was recently changed, but some parts of the manpage were not updated properly. Now there are two rypes of options: some which take a FourCC (as used with raw video formats), and some which take a symbolic format identifier (as used in the video filter chain). I realize that it's harder to specify FourCC for RGB formats now (TV stuff may need RGB). They use non-printable characters as part of the FourCC, and have to be specified as hexadecimal numbers (instead of a symbolic identifier). Because I can't be bothered to find out what these numbers are for the respective formats, just remove the old pseudo-FourCCs from the documentation.
* options: move -ass-bottom-margin/-ass-top-margin options to vf_subwm42012-12-121-1/+9
| | | | | These options might be useful sometimes, but they are not that important, and work with vf_sub only. Make them vf_sub sub-options.
* manpage: remove --zoom remainswm42012-11-241-3/+0
| | | | The --zoom option has been removed, and is always active.
* video/filter: rename vf_eq2 to vf_eqwm42012-11-161-1/+1
| | | | | vf_eq was deleted earlier, which makes the name vf_eq2 even more awkward.
* manpage: various fixeswm42012-11-161-3/+4
|
* VF: rename vf_ass to vf_subwm42012-10-241-2/+2
| | | | | | | | | | | | This reflects the fact that this filter now renders all types of subtitles, not just ASS subtitles. Always compile this filter, not just on CONFIG_ASS. Note that --no-ass still disables auto-inserting this filter. It's the only way to disable auto-insertion, so keep it even though it's not really ASS specific anymore. --no-ass also disables using libass for rendering text subs directly.
* VO, sub: refactorwm42012-10-241-3/+3
| | | | | | | | | | | | | | | | | | Remove VFCTRL_DRAW_OSD, VFCAP_EOSD_FILTER, VFCAP_EOSD_RGBA, VFCAP_EOSD, VOCTRL_DRAW_EOSD, VOCTRL_GET_EOSD_RES, VOCTRL_QUERY_EOSD_FORMAT. Remove draw_osd_with_eosd(), which rendered the OSD by calling VOCTRL_DRAW_EOSD. Change VOs to call osd_draw() directly, which takes a callback as argument. (This basically works like the old OSD API, except multiple OSD bitmap formats are supported and caching is possible.) Remove all mentions of "eosd". It's simply "osd" now. Make OSD size per-OSD-object, as they can be different when using vf_sub. Include display_par/video_par in resolution change detection. Fix the issue with margin borders in vo_corevideo.
* Remove useless video filterswm42012-10-031-649/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most of these have very limited actual use, or are even entirely useless. They only serve to bloat the codebase and to make life harder. Drowning users in tons of barely useful filters isn't exactly helpful either. Some of these filters were redundant or marked as obsolete. The dlopen and lua (to be added soon) video filters provide ways to add custom filters. Detailed listing for each filter with reasons (with contributions from divVerent and lachs0r): 1bpp: Replaced by "scale". 2xsai: Pixel art scaling algorithm, useless with lossy video. blackframe: Not very useful. Apparently one use is combining it with scripts, that pass the bmovl: Weirdly complex and insane (using FIFO commands), questionable use. cropdetect: Only sort-of useful when used with scripts, and then it will be very fragile. It's probably better to use the dlopen rectangle filter, or to implement the common use-case in a better way. decimate: Not needed/useful with modern video codecs, is an encoding-only filter. denoise3d: "hqdn3d" is better. detc: Some of the worse deteleciners. dint: Useless, actually crashes. (On an assert in vf.c that is disabled by default in mplayer-svn.) dvbscale: Not even practical, and the same effect can be achieved through other means. eq: Worse/older version of eq2. field: Limited use, available as dlopen filter. fil: Quoting the manpage: This filter is very similar to the il filter but much faster, the main disadvantage is that it does not always work. Especially if combined with other filters it may produce randomly messed up images, so be happy if it works but do not complain if it does not for your combination of filters. filmdint: Kind of redundant with pullup, and slightly worse. fixpts: Never useful. (Most if not all filters have been fixed for PTS.) framestep: Questionable use. For things like creating thumbnails, ffmpeg or --sstep should be used. geq: Limited use, will be redundant with the "lua" filter. halfpack: Useless, probably redundant with "scale". harddup: Useless. hue: Most VOs support this. il: Useless. ivtc: Another of the worse deteleciners. kerndeint: A bad deinterlacer. lavc: For DVB output devices. We removed that support. lavcdeint: A bad deinterlacer, was already deprecated. Still available as --vf=pp=fd. mcdeint: A broken deinterlacer that uses lavc internals. ow: Very slow, barely any quality benefit over "hqdn3d". palette: Done by "scale". perspective: Files with incorrect perspective are extremely rare. About the only real-world use for this is keystone correction, which is usually done in hardware by the projector or by graphics drivers/compositors. pp7: Another useless postprocessing filter with bad and complicated code. Use libpostprocess with "pp" instead. qp: Useless. remove-logo: Redundant with delogo, which is better and more practical. rgbtest: Useless. sab, smartblur, boxblur: Blur filters, redundant to "unsharp". softskip: Does nothing. spp, fspp, uspp: Useless postprocessing filters. "spp" needs ffmpeg internals. "fspp" is the optimized version of the "spp" filter (???), while "uspp" is the slow version (????). Use libpostprocess with "pp" instead. telecine: Evil and useless. Available as dlopen filter for testing purposes. test: Useless. tfields: Useless, probably. tile: Questionable use. Available as dlopen filter. tinterlace: Evil and useless. yuvcsp: Probably useless. yvu9: Redundant with "scale". Also remove the following left-over files: vd_null.c, vqf.h
* vf_dlopen: add a generic filter to load external filtersRudolf Polzer2012-08-231-0/+20
| | | | | | Usage: -vf dlopen=filename.so:args... Examples of such filters are provided in TOOLS/vf_dlopen/
* vf_expand: remove OSD supportwm42012-08-161-41/+2
| | | | | | | | It's not clear why this video filter supported OSD rendering. The manpage says: "Can be used for placing subtitles/OSD in the resulting black bands." But every single VO already does this if vf_expand adds black borders. This feature is 100% pointless.
* man: update documentation related to screenshotswm42012-08-021-16/+10
|
* manpage: merge new manpagewm42012-08-021-0/+1452
About a year ago, ubitux converted most of the old manpage from the hard to maintain nroff format to reStructuredText. This was not merged back into the master repository immediately. The argument was that the new manpage still required work to be done. However, progress was very slow. Even worse: the old manpage wasn't updated, because it was scheduled for deletion, and updating it would have meant useless work. Now the situation is that the new manpage still isn't finished, and the old manpage is grossly out of sync with the player. This is not helpful for users. Additionally, keeping the new manpage in a separate branch, while the normal development repository for code had the old manpage, was very inconvenient, because you couldn't just update the documentation in the same commit as the code. Even though the new manpage isn't finished yet, merging it now seems to be the best course of action. Squash-merge the manpage development branch [1], revision e89f5dd3f2, which branches from the mplayer2 master branch after revision 159102e0cb. Committers: * Clément Bœsch <ubitux@gmail.com> (Initial conversion to RST.) * Uoti Urpala <uau@mplayer2.org> (Many updates.) * Myself (Minor edits.) Most text of the manpage has been directly taken from the old manpage, because this is a conversion, not a complete rewrite. [1] http://git.mplayer2.org/uau/mplayer2.git/log/?h=man