aboutsummaryrefslogtreecommitdiffhomepage
path: root/DOCS
Commit message (Collapse)AuthorAge
* manpage: remove confusing statementGravatar wm42015-04-07
| | | | | | There still might be FFmpeg demuxers which mess up if audio is disabled (like it happened to the FLV demuxer), but these are bugs and shouldn't happen.
* command: new subproperty for video-params: gammaGravatar Niklas Haas2015-04-04
|
* vf_format: add gamma override optionGravatar Niklas Haas2015-04-04
|
* vo_opengl: make csp options consistent with vf_formatGravatar Niklas Haas2015-04-04
|
* csputils: add some missing colorspacesGravatar Niklas Haas2015-04-04
| | | | | 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 documentationGravatar Niklas Haas2015-04-04
| | | | Brings it in line with changes to vo_opengl options.
* vo_opengl: make jinc presets resizableGravatar Niklas Haas2015-04-04
| | | | No real reason this is disabled with the new configuration API.
* vo_opengl: add scale-wparam optionGravatar Niklas Haas2015-04-04
| | | | This lets us tune the window parameter
* vo_opengl: refactor scaler configurationGravatar Niklas Haas2015-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This merges all of the scaler-related options into a single configuration struct, and also cleans up the way they're passed through the code. (For example, the scaler index is no longer threaded through pass_sample, just the scaler configuration itself, and there's no longer duplication of the params etc.) In addition, this commit makes scale-down more principled, and turns it into a scaler in its own right - so there's no longer an ugly separation between scale and scale-down in the code. Finally, the radius stuff has been made more proper - filters always have a radius now (there's no more radius -1), and get a new .resizable attribute instead for when it's tunable. User-visible changes: 1. scale-down has been renamed dscale and now has its own set of config options (dscale-param1, dscale-radius) etc., instead of reusing scale-param1 (which was arguably a bug). 2. The default radius is no longer fixed at 3, but instead uses that filter's preferred radius by default. (Scalers with a default radius other than 3 include sinc, gaussian, box and triangle) 3. scale-radius etc. now goes down to 0.5, rather than 1.0. 0.5 is the smallest radius that theoretically makes sense, and indeed it's used by at least one filter (nearest). Apart from that, it should just be internal changes only. Note that this sets up for the refactor discussed in #1720, which would be to merge scaler and window configurations (include parameters etc.) into a single, simplified string. In the code, this would now basically just mean getting rid of all the OPT_FLOATRANGE etc. lines related to scalers and replacing them by a single function that parses a string and updates the struct scaler_config as appropriate.
* vo_opengl: separate kernel and windowGravatar Niklas Haas2015-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes the core much more elegant, reusable, reconfigurable and also allows us to more easily add aliases for specific configurations. Furthermore, this lets us apply a generic blur factor / window function to arbitrary filters, so we can finally "mix and match" in order to fine-tune windowing functions. A few notes are in order: 1. The current system for configuring scalers is ugly and rapidly getting unwieldy. I modified the man page to make it a bit more bearable, but long-term we have to do something about it; especially since.. 2. There's currently no way to affect the blur factor or parameters of the window functions themselves. For example, I can't actually fine-tune the kaiser window's param1, since there's simply no way to do so in the current API - even though filter_kernels.c supports it just fine! 3. This removes some lesser used filters (especially those which are purely window functions to begin with). If anybody asks, you can get eg. the old behavior of scale=hanning by using scale=box:scale-window=hanning:scale-radius=1 (and yes, the result is just as terrible as that sounds - which is why nobody should have been using them in the first place). 4. This changes the semantics of the "triangle" scaler slightly - it now has an arbitrary radius. This can possibly produce weird results for people who were previously using scale-down=triangle, especially if in combination with scale-radius (for the usual upscaling). The correct fix for this is to use scale-down=bilinear_slow instead, which is an alias for triangle at radius 1. In regards to the last point, in future I want to make it so that filters have a filter-specific "preferred radius" (for the ones that are arbitrarily tunable), once the configuration system for filters has been redesigned (in particular in a way that will let us separate scale and scale-down cleanly). That way, "triangle" can simply have the preferred radius of 1 by default, while still being tunable. (Rather than the default radius being hard-coded to 3 always)
* vf_format: allow forcing aspect ratioGravatar wm42015-04-03
| | | | | Makes vf_dsize completely useless. Unfortunately, even our "official" encoding profiles still use it.
* vf_format: allow forcing display sizeGravatar wm42015-04-03
|
* vo_opengl: remove chroma-location suboptionGravatar wm42015-04-03
| | | | Terribly obscure, and vf_format can do this for all VOs.
* vf_format: allow forcing rotation flagsGravatar wm42015-04-03
|
* vf_format: allow forcing stereo mode parametersGravatar wm42015-04-03
|
* sub: add --sub-text-bold optionGravatar wm42015-04-01
| | | | This was basically requested.
* ao_wasapi: fix device listingGravatar Kevin Mitchell2015-03-31
| | | | | remove depricated and convoluted validation. refer instead to the --audio-device option.
* manpage: correct option minchn->minch for lavcac3encGravatar Kevin Mitchell2015-03-30
|
* manpage: clarify global config file locationGravatar wm42015-03-31
| | | | (Stupid Unix conventions.)
* options: make --video-rotate use range 0-360Gravatar wm42015-03-31
| | | | | Include 360 in the range and don't stop at 359. This makes cycling through the range in 90° steps less awkward.
* video: move colorspace overrides to vf_format, simplifyGravatar wm42015-03-31
| | | | | | | | | | | | | | | | | | | 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 passedGravatar wm42015-03-31
| | | | | | | 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 changeGravatar wm42015-03-31
| | | | | | Instead of forcing a useless format (packed YUV??) by default. Also cleanup.
* csputils: unify names for colorspace/etc. namesGravatar wm42015-03-31
|
* ad_lavc: disable AC3 DRC by defaultGravatar wm42015-03-30
|
* RPI supportGravatar wm42015-03-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This requires FFmpeg git master for accelerated hardware decoding. Keep in mind that FFmpeg must be compiled with --enable-mmal. Libav will also work. Most things work. Screenshots don't work with accelerated/opaque decoding (except using full window screenshot mode). Subtitles are very slow - even simple but huge overlays can cause frame drops. This always uses fullscreen mode. It uses dispmanx and mmal directly, and there are no window managers or anything on this level. vo_opengl also kind of works, but is pretty useless and slow. It can't use opaque hardware decoding (copy back can be used by forcing the option --vd=lavc:h264_mmal). Keep in mind that the dispmanx backend is preferred over the X11 ones in case you're trying on X11; but X11 is even more useless on RPI. This doesn't correctly reject extended h264 profiles and thus doesn't fallback to software decoding. The hw supports only up to the high profile, and will e.g. return garbage for Hi10P video. This sets a precedent of enabling hw decoding by default, but only if RPI support is compiled (which most hopefully it will be disabled on desktop Linux platforms). While it's more or less required to use hw decoding on the weak RPI, it causes more problems than it solves on real platforms (Linux has the Intel GPU problem, OSX still has some cases with broken decoding.) So I can live with this compromise of having different defaults depending on the platform. Raspberry Pi 2 is required. This wasn't tested on the original RPI, though at least decoding itself seems to work (but full playback was not tested).
* ao_alsa: add an option to ignore ALSA channel map negotiationGravatar wm42015-03-28
| | | | This was requested, more or less.
* manpage: update warning on blend-subtitlesGravatar Niklas Haas2015-03-27
|
* manpage: vo_opengl: blend-subtitles is brokenGravatar wm42015-03-27
|
* manpage: fix typoGravatar wm42015-03-26
|
* vo_opengl: draw subtitles directly onto the videoGravatar Niklas Haas2015-03-26
| | | | | | | | | | | | | | | | This has a number of user-visible changes: 1. A new flag blend-subtitles (default on for opengl-hq) to control this behavior. 2. The OSD itself will not be color managed or affected by gamma controls. To get subtitle CMS/gamma, blend-subtitles must be used. 3. When enabled, this will make subtitles be cleanly interpolated by :interpolation, and also dithered etc. (just like the normal output). Signed-off-by: wm4 <wm4@nowhere>
* vo_opengl: set cscale=spline36 as default for opengl-hqGravatar Niklas Haas2015-03-25
| | | | | | | Bilinear scaling is not a suitable default for something named "hq"; the whole reason this was done in the past was because cscale used to be obscenely slow. This is no longer the case, with cscale being nearly free.
* command: add property returning current working directoryGravatar wm42015-03-24
| | | | Requested; fixes #1717.
* input: remove Linux joystick supportGravatar wm42015-03-24
| | | | | | | | | | | Why did this exist in the first place? Other than being completely useless, this even caused some regressions in the past. For example, there was the case of a laptop exposing its accelerometer as joystick device, which led to extremely fun things due to the default mappings of axis movement being mapped to seeking. I suppose those who really want to use their joystick to control a media player (???) can configure it as mouse device or so.
* input: remove classic LIRC supportGravatar wm42015-03-24
| | | | It's much easier to configure remotes as X11 input devices.
* manpage: ipc: make requirements for newlines more explicitGravatar wm42015-03-23
| | | | Clarifying because someone asked.
* manpage: remove "experimental" notice from dxva2 codeGravatar wm42015-03-19
| | | | | | | It's relatively stable now. Also fix a typo in an unrelated place (better not waste commits on typos).
* manpage: add a link to mpv.conf documentationGravatar wm42015-03-17
| | | | Like we do it for input.conf and osc.conf.
* DOCS: fix compilation instructions for MXE crosscompilationGravatar gunmantheh2015-03-17
| | | | | | Add bootstrap step for Linux->Windows MXE crosscompilation. Signed-off-by: wm4 <wm4@nowhere>
* man/vo: fix typoGravatar Martin Herkt2015-03-15
|
* vo_opengl: add oversample support for tscaleGravatar Niklas Haas2015-03-15
| | | | | This is interesting mainly because it's essentially equivalent to the old smoothmotion algorithm. As such, it is now the default for tscale.
* vo_opengl: add oversample scalerGravatar Niklas Haas2015-03-15
| | | | | | This is like nearest neighbour, but the edges between pixels are linearly interpolating if needed, as if they had been (naively) oversampled.
* vo_opengl: refactor smoothmotion -> interpolationGravatar Niklas Haas2015-03-15
| | | | | | | | | | | | | This replaces the old smoothmotion code by a more flexible tscale option, which essentially allows any scaler to be used for interpolating frames. (The actual "smoothmotion" scaler which behaves identical to the old code does not currently exist, but it will be re-added in a later commit) The only odd thing is that larger filters require a larger queue size offset, which is currently set dynamically as it introduces some issues when pausing or framestepping. Filters with a lower radius are not affected as much, so this is identical to the old smoothmotion if the smoothmotion interpolator is used.
* man: fix PDF buildGravatar Martin Herkt2015-03-15
|
* manpage: update cscaleGravatar Niklas Haas2015-03-13
| | | | Had some outdated information.
* options: introduce --cache=yes choiceGravatar wm42015-03-12
| | | | | | I think this is what I alwass missed ever since I found the MPlayer cache options: a way to enable the cache on local files with the default settings, whatever they are.
* cache: bump default size to 150MBGravatar wm42015-03-12
| | | | (Well, almost 150MB.)
* command: display-fps is the display FPS as assumed by the VOGravatar wm42015-03-12
| | | | | | | | | Requested change in behavior. Note that we set the assumed "infinite" display_fps to 1e6, which conveniently lets vo_get_vsync_interval() return a dummy value of 1, which can be easily checked against, and still avoids doing math with float INFs.
* vo_opengl: refactor shader generation (part 2)Gravatar Niklas Haas2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | This adds stuff related to gamma, linear light, sigmoid, BT.2020-CL, etc, as well as color management. Also adds a new gamma function (gamma22). This adds new parameters to configure the CMS settings, in particular letting us target simple colorspaces without requiring usage of a 3DLUT. This adds smoothmotion. Mostly working, but it's still sensitive to timing issues. It's based on an actual queue now, but the queue size is kept small to avoid larger amounts of latency. Also makes “upscale before blending” the default strategy. This is justified because the "render after blending" thing doesn't seme to work consistently any way (introduces stutter due to the way vsync timing works, or something), so this behavior is a bit closer to master and makes pausing/unpausing less weird/jumpy. This adds the remaining scalers, including bicubic_fast, sharpen3, sharpen5, polar filters and antiringing. Apparently, sharpen3/5 also consult scale-param1, which was undocumented in master. This also implements cropping and chroma transformation, plus rotation/flipping. These are inherently part of the same logic, although it's a bit rough around the edges in some case, mainly due to the fallback code paths (for bilinear scaling without indirection).
* command: add display-fps propertyGravatar wm42015-03-10
| | | | Requested. Untested; leaving that to the users.