summaryrefslogtreecommitdiffstats
path: root/DOCS/man/vf.rst
Commit message (Collapse)AuthorAgeFilesLines
* vf_vdpaurb: remove this filterwm42016-11-221-9/+0
| | | | Was deprecated, superseded by --hwdec=vdpau-copy.
* vf_vdpaurb: deprecate this filterwm42016-10-201-0/+2
|
* vf_d3d11vpp: add video processor selectionwm42016-07-151-0/+6
| | | | | Unfortunately completely useless. I still don't know how to force a video processor to use a specific algorithm, if it's even possible.
* man: fix typosJakub Wilk2016-07-091-1/+1
|
* vo_opengl: implement the Panasonic V-Log functionNiklas Haas2016-06-281-0/+1
| | | | | | | | | | User request and not that hard. Closes #3157. Note that FFmpeg doesn't support this and there's no signalling in HEVC etc., so the only way users can access it is by using vf_format manually. Mind: This encoding uses full range values, not TV range.
* manpage: add missing documentation for vf_format:gamma=dci-p3Niklas Haas2016-06-281-0/+1
|
* csputils: add Panasonic V-Gamut primariesNiklas Haas2016-06-281-0/+1
| | | | | | | This is actually not entirely trivial since it involves negative Yxy coordinates, so the CMM has to be capable of full floating point operation. Fortunately, LittleCMS is, so we can just blindly implement it.
* vo_opengl: implement ARIB STD-B68 (HLG) HDR TRCNiklas Haas2016-06-281-0/+1
| | | | | | | | | | | | | | This HDR function is unique in that it's still display-referred, it just allows for values above the reference peak (super-highlights). The official standard doesn't actually document this very well, but the nominal peak turns out to be exactly 12.0 - so we normalize to this value internally in mpv. (This lets us preserve the property that the textures are encoded in the range [0,1], preventing clipping and making the best use of an integer texture's range) This was grouped together with SMPTE ST2084 when checking libavutil compatibility since they were added in the same release window, in a similar timeframe.
* vo_opengl: refactor HDR mechanismNiklas Haas2016-05-301-0/+8
| | | | | | | | | | | | | | | | | | | | Instead of doing HDR tone mapping on an ad-hoc basis inside pass_colormanage, the reference peak of an image is now part of the image params (alongside colorspace, gamma, etc.) and tone mapping is done whenever peak_src != peak_dst. To get sensible behavior when mixing HDR and SDR content and displays, target-brightness is a generic filler for "the assumed brightness of SDR content". This gets rid of the weird display_scaled hack, sets the framework for multiple HDR functions with difference reference peaks, and allows us to (in a future commit) autodetect the right source peak from the HDR metadata. (Apart from metadata, the source peak can also be controlled via vf_format. For HDR content this adjusts the overall image brightness, for SDR content it's like simulating a different exposure)
* vf_d3d11vpp: add a D3D11 video processor filterwm42016-05-281-0/+9
| | | | | | | | | | | | | | | | | Main use: deinterlacing. I'm not sure how to select the deinterlacing mode at all. You can enumate the available video processors, but at least on Intel, all of them either signal support for all deinterlacers, or none (the latter is apparently used for IVTC). I haven't found anything that actually tells the processor _which_ algorithm to use. Another strange detail is how to select top/bottom fields and field dominance. At least I'm getting quite similar results to vavpp on Linux, so I'm content with it for now. Future plans include removing the D3D11 video processor use from the ANGLE interop code.
* vo_opengl: implement HDR (SMPTE ST2084)Niklas Haas2016-05-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Currently, this relies on the user manually entering their display brightness (since we have no way to detect this at runtime or from ICC metadata). The default value of 250 was picked by looking at ~10 reviews on tftcentral.co.uk and realizing they all come with around 250 cd/m^2 out of the box. (In addition, ITU-R Rec. BT.2022 supports this) Since there is no metadata in FFmpeg to indicate usage of this TRC, the only way to actually play HDR content currently is to set ``--vf=format=gamma=st2084``. (It could be guessed based on SEI, but this is not implemented yet) Incidentally, since SEI is ignored, it's currently assumed that all content is scaled to 10,000 cd/m^2 (and hard-clipped where out of range). I don't see this assumption changing much, though. As an unfortunate consequence of the fact that we don't know the display brightness, mixed with the fact that LittleCMS' parametric tone curves are not flexible enough to support PQ, we have to build the 3DLUT against gamma 2.2 if it's used. This might be a good thing, though, consdering the PQ source space is probably not fantastic for interpolation either way. Partially addresses #2572.
* DOCS: update documentation related to color managementNiklas Haas2016-05-061-1/+1
| | | | | | Some of this documentation was left woefully inaccurate as color management in mpv evolved. This commit updates all of the wording and adds notes and comments where appropriate.
* manpage: fix indenting issue in vf_formatNiklas Haas2016-02-111-21/+21
|
* vf_yadif: change defaultswm42015-12-211-5/+4
| | | | | | | | | | | | | | | | This is for the sake of command.c and the "deinterlace" option/property. Instead of forcing certain "better" defaults when inserting yadif, change the actual "yadif" defaults. I pondered not changing vf_yadif, and instead adding a trivial "yadif- auto" wrapper filter, which would merely have different defaults. But thinking about it, it doesn't make any sense for "deinterlace" to have different defaults from vf_yadif, with vf_yadif having the "worse" defaults. If someone wants the old behavior, the old behavior can be forced in a backward and forward compatible way by setting the suboptions. Fixes #2539 (kind of).
* video: switch from using display aspect to sample aspectwm42015-12-191-4/+4
| | | | | | | | | | | | | | | | MPlayer traditionally always used the display aspect ratio, e.g. 16:9, while FFmpeg uses the sample (aka pixel) aspect ratio. Both have a bunch of advantages and disadvantages. Actually, it seems using sample aspect ratio is generally nicer. The main reason for the change is making mpv closer to how FFmpeg works in order to make life easier. It's also nice that everything uses integer fractions instead of floats now (except --video-aspect option/property). Note that there is at least 1 user-visible change: vf_dsize now does not set the display size, only the display aspect ratio. This is because the image_params d_w/d_h fields did not just set the display aspect, but also the size (except in encoding mode).
* man: fix grammar issuesMartin Herkt2015-12-191-9/+9
|
* manpage: deinterlace is now the lowercase dKevin Mitchell2015-11-231-5/+5
| | | | | there were a few places that that used an upper case D and one that still actually said Shift+D
* video: replace vf_format outputlevels option with global optionwm42015-09-291-20/+0
| | | | | | | | | | | The vf_format suboption is replaced with --video-output-levels (a global option and property). In particular, the parameter is removed from mp_image_params. The mechanism is moved to the "video equalizer", which also handles common video output customization like brightness and contrast controls. The new code is slightly cleaner, and the top-level option is slightly more user-friendly than as vf_format sub-option.
* manpage: add a note about libavfilterwm42015-09-111-0/+4
|
* video/filter: remove some vf_lavfi wrapperswm42015-09-111-68/+0
| | | | | | | | | | | | | | | | I see no point in keeping these around. Keeping wrappers for some select libavfilter filters just because MPlayer had these filters is not a good reason. Ultimately, all real filtering work should go to libavfilter, and users should get used to using vf_lavfi directly. We might even not require the awful double-nested syntax for using libavfilter one day. vf_rotate, vf_yadif, vf_stereo3d are kept because mpv uses them internally. (They all extend the lavfi filters or change their defaults.) vf_mirror is kept for symmetry with vf_flip. vf_gradfun and vf_pullup are probably semi-popular, so I'll remove them not yet - only after some more discussion.
* vf_vdpaurb: Add a new filter for reading back vdpau decoded framesPhilip Langdale2015-07-111-0/+7
| | | | | | | | | | | | | | | | | Normally, vdpau decoded frames are passed directly to a suitable vo (vo_vdpau or vo_opengl) without ever touching system memory. This is efficient for output purposes, but prevents any of the regular filters from being used with such frames. This new filter implements a read-back step to pull the frames back into system memory where they can be acted on by other filters. Eventually the frames will be sent to the vo as if they were normal software-decoded frames. Note that a vdpau compatible vo must still be used to ensure that the decoder is properly initialised. Signed-off-by: wm4 <wm4@nowhere>
* vf_vdpaupp: don't attempt to deinterlace progressive frameswm42015-07-081-0/+2
|
* vf_vavpp: don't attempt to deinterlace progressive frameswm42015-07-081-0/+4
|
* command: make deinterlace property use interlaced-only yadif modewm42015-07-071-1/+2
|
* vf_yadif: expose interlaced frame modewm42015-07-071-5/+4
| | | | | Also remove the enabled suboption, which did nothing. (It was probably broken at some point.)
* DOCS/man: fix some grammar errorsDaniel Bergmann2015-06-291-1/+1
| | | | Signed-off-by: wm4 <wm4@nowhere>
* DOCS/manpage: fix typosrrooij2015-06-171-1/+1
| | | | | | | Fix some errors in the man pages by spell checking them. Most of them were typos. Signed-off-by: wm4 <wm4@nowhere>
* vf_dlopen: declare as deprecatedwm42015-05-251-0/+2
| | | | | Mostly to see whether someone uses it, and if a better solution can be worked out. (It's simple enough to be supported forever.)
* manpage: fix syntaxwm42015-05-191-1/+1
| | | | | I guess this wasn't meant to be literal syntax, but it implies "," is used as sub-option separator.
* manpage: update colormatrix property descriptionwm42015-04-271-1/+1
|
* vf_screenshot: remove this filterwm42015-04-161-6/+0
| | | | | | It's entirely useless, especially now that vo.c handles screenshots in a generic way, and requires no special VO support. There are some potential weird use-cases, but actually I've never seen it being used.
* vf_format: add gamma override optionNiklas Haas2015-04-041-0/+22
|
* csputils: add some missing colorspacesNiklas Haas2015-04-041-0/+4
| | | | | With target-prim and target-trc it makes sense to include some common colorspaces that aren't strictly speaking used for video.
* man/vf: update vf_format documentationNiklas Haas2015-04-041-4/+3
| | | | Brings it in line with changes to vo_opengl options.
* vf_format: allow forcing aspect ratiowm42015-04-031-0/+5
| | | | | Makes vf_dsize completely useless. Unfortunately, even our "official" encoding profiles still use it.
* vf_format: allow forcing display sizewm42015-04-031-0/+5
|
* vf_format: allow forcing rotation flagswm42015-04-031-0/+4
|
* vf_format: allow forcing stereo mode parameterswm42015-04-031-0/+8
|
* video: move colorspace overrides to vf_format, simplifywm42015-03-311-0/+91
| | | | | | | | | | | | | | | | | | | Remove the colorspace-related top-level options, add them to vf_format. They are rather obscure and not needed often, so it's better to get them out of the way. In particular, this gets rid of the semi-complicated logic in command.c (most of which was needed for OSD display and the direct feedback from the VO). It removes the duplicated color-related name mappings. This removes the ability to write the colormatrix and related properties. Since filters can be changed at runtime, there's no loss of functionality, except that you can't cycle automatically through the color constants anymore (but who needs to do this). This also changes the type of the mp_csp_names and related variables, so they can directly be used with OPT_CHOICE. This probably ended up a bit awkward, for the sake of not adding a new option type which would have used the previous format.
* vf_format: don't crash if nonsense parameters are passedwm42015-03-311-11/+2
| | | | | | | It was "by design" possible to make mpv crash if the parameters didn't make enough sense, like "format=rgb24:yuv420p". While forcing the format has some minor (rather questionable) use for debugging, allowing it to crash is just stupid.
* vf_format: by default, pass through video without changewm42015-03-311-1/+1
| | | | | | Instead of forcing a useless format (packed YUV??) by default. Also cleanup.
* manpage: fix vf_scale arnd parameterwm42015-02-191-2/+2
| | | | | | | It probably was always a flag, so the documentation became invalid as soon as mpv stopped accepting 0/1 for flags. Fixes #1608.
* sub: mess with styling defaults, change --ass-use-margins behaviorwm42015-02-161-2/+2
| | | | | | | | | | | | | | | | | | | Now --ass-use-margins doesn't apply to normal subtitles anymore. This is probably the inverse from the mpv behavior users expected so far, and thus a breaking change, so rename the option, that the user at least has a chance to lookup the option and decide whether the new behavior is wanted or not. The basic idea here is: - plain text subtitles should have a certain useful defalt behavior, like actually using margins - ASS subtitles should never be broken by default - ASS subtitles should look and behave like plaintext subtitles if the --ass-style-override=force option is used This also subtly changes --sub-scale-with-window and adds the --ass- scale-with-window option. Since this one isn't so important, don't bother with compatibility.
* vf_vapoursynth: add display refresh rate propertyJulian2015-02-131-0/+3
| | | | | This value is not necessarily trustworthy (it might change) and can be 0.
* vf_noise: remove internal implementationwm42015-02-111-4/+0
| | | | | It requires libavfilter now, just like many other filters. Not sure if it even makes sense to keep this wrapper.
* vf_ilpack: remove this filterwm42015-01-271-13/+0
| | | | | | | | This was apparently useful for correct interlaced scaling (although I don't know anyone who used this). It was rarely used (if at all), had an inconvenient output format (packed YUV), and now has a better solution in libavfilter (using the libavfilter "scale" filter via vf_lavfi). There is no reason to keep this filter any longer.
* vf_divtc: remove this filterwm42015-01-271-62/+0
| | | | | Better solutions are available in vf_vapoursynth and vf_lavfi. The only user I know who used this is now using vf_vapoursynth.
* vf_phase: remove this filterwm42015-01-271-52/+0
| | | | If you really want it, it's in libavfilter and can be used via vf_lavfi.
* vf_swapuv: remove this filterwm42015-01-271-3/+0
| | | | | | It's entirely useless. I left it in for a while, because the analog TV code had a transitional bug that could switch chroma planes, but it was fixed long ago. It's also available in libavfilter.
* vf_vavpp: add more deinterlacing algorithmswm42015-01-231-0/+4
| | | | | | These are untested due to lack of hardware. From what I've heard, the drivers are pretty buggy, so it's not clear how well this works, if at all.
* vf_vapoursynth: autodetect CPU countwm42015-01-051-1/+4
| | | | | | | | This adds an "auto" choice to the concurrent-frames suboption, and makes it the default. I'm not so sure about making this the default, though. It could lead to excessive buffering with large CPU counts. But we'll see.
* vf_vapoursynth: pass through container FPS valuewm42015-01-031-0/+9
| | | | | | | | This is basically a hack; but apparently a needed one, since many vapoursynth filters insist on having a FPS set. We need to apply the FPS override before creating the filters. Also change some terminal output related to the FPS value.
* manpage: vf_vapoursynth: document mpv-specific predefined variableswm42015-01-031-0/+11
|
* video/filter: kill vf_pp (libpostproc)wm42014-12-031-150/+0
| | | | | | | | | This is an ancient filter, and we assume it's not useful anymore. If you really want this, it's still available in libavfilter (e.g. via --vf=lavfi=[pp...]). The disadvantage is that mpv doesn't pass through QP information to libavfilter. (This was probably the reason vf_pp still was part of mpv - it was slightly easier to pass QP internally.)
* vf_vapoursynth: add standalone Lua scriptingwm42014-10-121-0/+25
|
* manpage: clarify vf_pp docswm42014-09-211-8/+14
| | | | | Make the note about quoting more prominent. Add a warning that this filter is useless for new files.
* man: fix a whole bunch of typosMartin Herkt2014-09-011-13/+13
|
* video/filter: add vf_bufferwm42014-07-301-0/+6
| | | | Mostly useful for debugging.
* manpage: eliminate the word "movie"wm42014-07-261-3/+3
| | | | | | | It's evil and sounds outdated. Use the words "media" and "video" instead. Closes #935.
* DOCS: remove en/ sub-directorywm42014-06-201-0/+971
This additional sub-directory doesn't serve any purpose anymore. Get rid of it.