summaryrefslogtreecommitdiffstats
path: root/DOCS
Commit message (Collapse)AuthorAgeFilesLines
* video: remove --flipwm42013-12-051-3/+0
| | | | | | | | | | | | | | | | The --flip option flipped the image upside-down, by trying to use VO support, or if not available, by inserting a video filter. I'm not sure why it existed. Maybe it was important in ancient times when VfW based decoders output an image this way (but even then, flipping an image is a free operation by negating the stride). One nice thing about this is that it provided a possible path for implementing video orientation, which is a feature we should probably support eventually. The important part is that it would be for free for VOs that support it, and would work even with hardware decoding. But for now get rid of it. It's useless, trivial, stands in the way, and supporting video orientation would require solving other problems first.
* video: allow hardware decoding only for certain codecswm42013-12-051-4/+12
| | | | | | | | | | In particular, this disables mpeg4. There are some files out there that use GMC, a usually rarely used and ineffective feature, which is not supported by most hardware decoders. In these cases the hw decoder outputs garbage, while software decoding works perfectly fine. We can't really fallback to software decoding in these cases, because we don't know that something is wrong in the first place. I can't see any advantages of hw decoding of mpeg4, so it's better to disable it.
* docs: edl: minor correctionswm42013-12-051-4/+5
|
* af_pan: change options, use option parserwm42013-12-041-9/+13
| | | | Similar to af_channels etc...
* af_ladspa: change options, use option parserwm42013-12-041-4/+13
|
* af_delay: change option parsing, fix bugs, use option parserwm42013-12-041-3/+3
| | | | Similar situation to af_channels.
* af_channels: change options, fix bugs, use option parserwm42013-12-041-8/+15
| | | | | | | Apparently this stopped working after some planar changes (broken format negotiation). Radically change option parsing in an incompatible way. Suggest alternatives to this filter, since it barely has any importance anymore.
* ad_lavc: expose an option to enable threadingwm42013-12-041-0/+6
|
* manpage: use different quoting in examplewm42013-12-041-1/+1
| | | | | Using "" quotes often tricks people into using this on the command line, while shell still expands $ inside of these.
* manpage: remove unhelpful paragraph about video filter paramswm42013-12-041-5/+0
| | | | | | This makes it sound like -1 would work to set the default for any parameter. But this is just a (crappy) convention, which doesn't work always.
* manpage: update af_format entrywm42013-12-041-10/+3
| | | | | | Don't bother explaining the sample format naming schema. The "ne" bit is outdated anyway, and anyone who has to use this option will be able to understand the naming schema just by looking at the names too.
* manpage: fix examplewm42013-12-041-1/+1
|
* manpage: remove two stray video fitler deprecation noteswm42013-12-041-10/+0
| | | | | | | | vf_stereo3d now uses vf_lavfi, if mpv was compiled with libavfilter. vf_swapuv is hereby undeprecated. It's too trivial to wrap it with libavfilter, and it's also too useless that even typing this commit message is not really worth the time to spend on it.
* manpage: generic notice about changed sub-option parsingwm42013-12-041-0/+9
| | | | | | Just in case someone expects these are unchanged just because they're not mentioned in changes.rst anywhere. Documenting all of these changes would be too much work and not helpful either.
* vf_pp: use option parserwm42013-12-042-4/+9
|
* vf_dsize: use option parserwm42013-12-041-1/+4
| | | | | | | Mostly backwards compatible, we don't change much because we just want to get rid of the legacy option string handling. You can't pass an aspect as first argument anymore.
* video/filter: remove vf_down3drightwm42013-12-041-8/+0
| | | | | | | | Apparently you can get this with: stereo3d=ab[2]{l,r}:sbs[2]{l,r} So it seems the filter is redundant and can be removed. Also see FFmpeg commit 2f11aa141a01.
* vf_pullup: change options, reroute to vf_lavfiwm42013-12-041-1/+1
| | | | The options are probably mostly backwards compatible.
* vf_unsharp: change options, reroute to vf_lavfiwm42013-12-041-14/+6
|
* vf_phase: change options, reroute to vf_lavfiwm42013-12-041-1/+1
| | | | The option change is probably backwards compatible.
* vf_noise: reroute to vf_lavfiwm42013-12-041-11/+20
| | | | | | | | Unfortunately, this forces filtering both luma and chroma, because otherwise we'd have to deal with libavfilter's vf_noise weird handling of YUV vs. RGB formats. Would we e.g. filter luma only, it would filter red in RGB mode only, because it goes by component and there's no way to distinguish YUV and RGB by just using the filter's options.
* vf_hqdn3d: change options, reroute to vf_lavfiwm42013-12-041-5/+0
|
* vf_gradfun: reroute to vf_lavfiwm42013-12-041-6/+6
| | | | | Also update the manpage. We changed defaults and added a suboption quite some time ago, and we forgot to update the manpage at all.
* vf_delogo: reroute to vf_lavfiwm42013-12-041-6/+4
| | | | The ``file`` suboption is unsupported on lavfi.
* vf_yadif: change options, reroute to vf_lavfiwm42013-12-041-11/+14
| | | | | | Also remove the ability to disable deinterlacing at runtime. You can still disable deinterlacing at runtime by using the ``D`` key and its automatical filter insertion/removal.
* vf_lavfi: export a wrapper functionwm42013-12-041-2/+2
| | | | | | | | | | | This will allow old filter to run libavfilter instead by calling vf_lw_set_graph(), which turns the filter into a wrapper, using a given libavfilter graph. Later commits use that to automatically "reroute" a bunch of filters to libavfilter. We want to get rid of the old MPlayer filter code, because it's bad an unmaintained, but we still don't want to force everyone to use vf_lavfi, so this solution will do for a while.
* manpage: mention that vda can work with vo_openglwm42013-12-022-1/+2
| | | | | Also, with the addition of VDA, all hardware decoding backends work with vo_opengl now.
* options: add option to disable using right Alt key as Alt GrVivek Jain2013-12-022-0/+9
| | | | | | | | | mpv was hardcoded to always consider the right Alt key as Alt Gr, but there are parituclar combinations of platforms and keyboard layouts where it's more convenient to treat the right Alt as a keyboard modifier just like the left one. Fixes #388
* vo_opengl: add support for rectangle textureswm42013-12-011-0/+5
| | | | | | | | | This allows vo_opengl to use GL_TEXTURE_RECTANGLE textures, either by enabling it with the 'rectangle-textures' sub-option, or by having a hwdec backend force it. By default it's off. The _only_ reason we're adding this is because VDA can export rectangle textures only.
* command: add a revert_seek commandwm42013-12-011-0/+6
| | | | As discussed on IRC.
* options: add options that set defaults for af/vf/ao/vowm42013-12-014-3/+27
| | | | | | | | There are some use cases for this. For example, you can use it to set defaults of automatically inserted filters (like af_lavrresample). It's also useful if you have a non-trivial VO configuration, and want to use --vo to quickly change between the drivers without repeating the whole configuration in the --vo argument.
* command: add a cycle_values input commandwm42013-11-301-0/+18
|
* command: change the syntax and semantics of the "run" commandwm42013-11-301-3/+18
| | | | | | | See the changes in input.rst for explanations. Technically speaking, this also gets rid of some undefined behavior: passing NULL as a vararg (execl()) is always a bug.
* ao_alsa: disable ALSA resampling by default againwm42013-11-291-1/+4
| | | | | | | | | | | | | | | | | | | | | This partially reverts commit 7d152965. It turns out that at least some ALSA drivers (at least snd-hda-intel) report incorrect audio delay with non-native sample rates, even if the sample rate is only very slightly different from the native one. For example, 48000Hz is fine on my hda-intel system, while both 8000Hz and 47999Hz lead to a delay off by 40ms (according to mpv's A/V difference display), which suggests that something in ALSA is calculating the delay using the wrong sample rate. As an additional problem, with ALSA resampling enabled, using 48001Hz/float/2ch fails, while 49000Hz/float/2ch or 48001Hz/s16/2ch work. With resampling disabled, all these cases work obviously, because our own resampler doesn't just refuse any of these formats. Since some people want to use the ALSA resampler (because it's highly configurable, supports multiple backends, etc.), we still allow enabling ALSA resampling with an ao_alsa suboption.
* command: allow "current" as argument to playlist_remove commandwm42013-11-281-2/+4
| | | | Feature request from github issue #376.
* build: make --disable-gl disable all the gl backendsStefano Pigozzi2013-11-281-0/+5
| | | | Fixes #369
* video: disable PTS sorting fallback by defaultwm42013-11-251-4/+7
| | | | | | | | | | | | | | | | It appears PTS sorting was useful only for avi files (and VfW-muxed mkv). Maybe it was historically also important for decoders with broken or non-existent PTS reordering (win32 codecs?). But now that we handle demuxers which outputs DTS only correctly, it just seems dead weight. Disable it by default. The --pts-association-mode option is now forced to always use the decoder's PTS value. You can still enable the old default (auto) or force sorting. But we will probably remove this option entirely at some point. Make demux_mkv export timestamps at DTS when it's in VfW mode. This is needed to get correct timestamps with the new default mode. demux_lavf already does that.
* demux_lavf: disable genpts by default, remove the builtin genpts hackwm42013-11-251-8/+4
| | | | | | | | | This was needed to determine PTS from DTS, but the previous commits make it unnecessary. The builtin genpts hack was used for DVD, because libavformat's genpts essentially went amok on DVD timestamp resets. See commit 65d87091 for details.
* options: implement --pphelp differentlywm42013-11-233-4/+2
| | | | Make it work via --vf=pp:help instead.
* video: remove vf_pp auto-insertionwm42013-11-232-3/+1
| | | | | | | | | | This drops the --pp option, which was probably broken for a while. The option automatically inserted the "pp" filter. The value passed to it was ignored (which is probably broken, it always selected maximal quality). Inserting this filter can be done simply with --vf=pp, so this is not needed anymore.
* manpage: document , mapping (frame_back_step)enkore2013-11-221-0/+4
| | | | See #356
* Fixing list of vo's that vavpp works with, in man page.Josh Driver2013-11-221-4/+4
|
* switch the build system to wafStefano Pigozzi2013-11-213-4/+154
| | | | | | | | | | | | | | | | | | | | | | | This commit adds a new build system based on waf. configure and Makefile are deprecated effective immediately and someday in the future they will be removed (they are still available by running ./old-configure). You can find how the choice for waf came to be in `DOCS/waf-buildsystem.rst`. TL;DR: we couldn't get the same level of abstraction and customization with other build systems we tried (CMake and autotools). For guidance on how to build the software now, take a look at README.md and the cross compilation guide. CREDITS: This is a squash of ~250 commits. Some of them are not by me, so here is the deserved attribution: - @wm4 contributed some Windows fixes, renamed configure to old-configure and contributed to the bootstrap script. Also, GNU/Linux testing. - @lachs0r contributed some Windows fixes and the bootstrap script. - @Nikoli contributed a lot of testing and discovered many bugs. - @CrimsonVoid contributed changes to the bootstrap script.
* timeline: reject mplayer2 EDL files, change EDL headerwm42013-11-211-3/+4
| | | | | | | | | | | This was forgotten when the parser for mplayer2 EDL files was removed. Change the header of the mpv EDL format to include a '#', so a naive parser could skip the header as comment. (Maybe this is questionable; on the other hand, if it can be simpler, why not.) Also, strip the header in demux_edl.c before passing on the data, so the header check doesn't need to be duplicated in tl_mpv_edl.c.
* tech-overview.txt: minor updatewm42013-11-201-2/+2
|
* timeline: remove support for the mplayer2 EDL formatwm42013-11-191-139/+0
| | | | | It was a bit too complicated and inconvenient, and I doubt anyone actively used it. The mpv EDL format should cover all use cases.
* player: add --merge-files optionwm42013-11-191-0/+9
|
* timeline: add edl:// URIswm42013-11-192-0/+10
| | | | | Questionable change from user perspective, but internally needed to implement the next commit. Also useful for testing timeline stuff.
* timeline: add new EDL formatwm42013-11-191-0/+94
| | | | | | | | | | Edit Decision Lists (EDL) allow combining parts from multiple source files into one virtual file. MPlayer had an EDL format (which sucked), which mplayer2 tried to improve with its own format (which sucked). As logic demands, mpv introduces its very own format (which sucks). The new format should actually be much simpler and easier to use, and its implementation is simpler and smaller too.
* manpage: fix typo in --video-align-y descriptionwm42013-11-191-1/+1
|
* ao_null: properly simulate final chunk, add buffer optionswm42013-11-171-0/+6
| | | | | | | | | | Simulate proper handling of AOPLAY_FINAL_CHUNK. Print when underruns occur (i.e. running out of data). Add some options that control simulated buffer and outburst sizes. All this is useful for debugging and self-documentation. (Note that ao_null always was supposed to simulate an ideal AO, which is the reason why it fools people who try to use it for benchmarking video.)
* audio: drop "_NE"/"ne" suffix from audio formatswm42013-11-151-6/+6
| | | | | | You get the native format by not appending any suffix to the format. This change includes user-facing names, e.g. for the --format option.
* manpage: mark DTS-HD passthough as brokenwm42013-11-151-0/+2
|
* af_lavcac3enc: use option parserwm42013-11-151-8/+9
| | | | | | | This changes option parsing as well as filter defaults slightly. The default is now to encode to spdif (this is way more useful than writing raw AC3 - what was this even useful for, other than writing broken ac3 -in-wav files?). The bitrate parameter is now always in kbps.
* ao_null: add untimed sub-optionwm42013-11-131-1/+6
|
* sd_lavc, sd_spu: make dvdsub stretching conditional on --stretch-dvd-subs.Rudolf Polzer2013-11-071-0/+13
| | | | | | | | | | | | We found that the stretching - although it usually improves the looks of the fonts - is incorrect. On DVD, subtitles can cover the full area of the picture, and they have the same pixel aspect as the movie itself. Too bad many commercially released DVDs use bitmap fonts made with the wrong pixel aspect (i.e. assuming 1:1) - --stretch-dvd-subs will make these more pretty then.
* vd_lavc: remove explicit crystalhd supportwm42013-11-061-1/+0
| | | | | | | | | | | | | | | | This removes "--hwdec=crystalhd". I doubt anyone even tried to use this. But even if someone wants to use it, the decoders can still be explicitly invoked with e.g.: --vd=lavc:h264_crystalhd The only advantage our special code provided was fallback to software decoding. (But I'm not sure how the ffmpeg crystalhd pseudo-decoder actually behaves.) Removing this will allow some simplifications as soon as we don't need vdpau_old.c anymore.
* vo_opengl: support for vdpau hardware decodingwm42013-11-051-1/+1
| | | | | | | | | | | | This uses vdpau OpenGL interop to convert a vdpau surface to a texture. Note that this is a bit weak and primitive. Deinterlacing (or any other form of vdpau postprocessing) is not supported. vo_opengl chroma scaling and chroma sample position are not supported. Internally, the vdpau video surfaces are converted to a RGBA surface first, because using the video surfaces directly is too complicated. (These surfaces are always split into separate fields, and the vo_opengl core expects progressive frames or frames with weaved fields.)
* manpage: fix incorrect default for --oscwm42013-11-051-1/+1
|
* vo_opengl: add support for VA-API OpenGL interopwm42013-11-041-1/+1
| | | | | | | | VA-API's OpenGL/GLX interop is pretty bad and perhaps slow (renders a X11 pixmap into a FBO, and has to go over X11, probably involves one or more copies), and this code serves more as an example, rather than for serious use. On the other hand, this might be work much better than vo_vaapi, even if slightly slower.
* vo_opengl: add infrastructure for hardware decoding OpenGL interopwm42013-11-041-0/+5
| | | | | | | | | | | | Most hardware decoding APIs provide some OpenGL interop. This allows using vo_opengl, without having to read the video data back from GPU. This requires adding a backend for each hardware decoding API. (Each backend is an entry in gl_hwdec_vaglx[].) The backends expose video data as a set of OpenGL textures. Add infrastructure to support this. The next commit will add support for VA-API.
* video: check profiles with hardware decodingwm42013-11-011-0/+7
| | | | | | | | | | | | | | | We had some code for checking profiles earlier, which was removed in commits 2508f38 and adfb71b. These commits mentioned that (working) hw decoding was sometimes prevented due to profile checking, but I can't find the samples anymore that showed this behavior. Also, I changed my opinion, and I think checking the profiles is something that should be done for better fallback to software decoding behavior. The checks roughly follow VLC's vdpau profile checks, although we do not check codec levels. (VLC's profile checks aren't necessarily completely correct, but they're a welcome help anyway.) Add a --vd-lavc-check-hw-profile option, which skips the profile check.
* command: replace speed_mult with multiply commandwm42013-10-311-3/+0
| | | | The compatibility layer still takes care of the old speed_mult command.
* command: add generic "multiply" commandwm42013-10-311-0/+3
| | | | Essentially works like "add".
* command: add property to scale window sizewm42013-10-311-0/+1
|
* tech-overview.txt: reflect recent updateswm42013-10-301-21/+32
| | | | mplayer.c split, and some other things.
* af_volume: switch to new option parsingwm42013-10-261-7/+7
|
* af_volume: remove unused featureswm42013-10-261-4/+0
| | | | | | Roughly follows MPlayer svn commits 36492 and 36493. We also remove the volume peak reporting. (There are much better libavfilter filters for this, I think.)
* docs: osc: update cache display percentage.ChrisK22013-10-261-1/+1
|