summaryrefslogtreecommitdiffstats
path: root/DOCS
Commit message (Collapse)AuthorAgeFilesLines
* vd_lavc: by default, output all frames, even corrupted oneswm42013-12-291-0/+5
| | | | | | | | | | | | | | | | Set the flag CODEC_FLAG_OUTPUT_CORRUPT by default. Note that there is also CODEC_FLAG2_SHOW_ALL, which is older, but this seems to be ffmpeg only. Note that whether you want this enabled depends on the user. Some might prefer that only good frames are output, while others want the decoder to try as hard as possible to output _anything_. Since mplayer/mpv is rather the kind of player that tries hard instead of being "clever", set the new default to override libavcodec's default. A nice way to test this is switching video tracks. Since mpv doesn't wait for the next key frame, it'll start feeding the decoder with a packet from the middle of the stream.
* Install encoding-profiles.conf by defaultwm42013-12-281-6/+5
| | | | | | | | | | | | This is probably useful. Note that this includes a small, stupid hack to prevent loading of the config file if vf_lavfi is not available. The profile by default uses vf_lavfi, and the config parser will output errors if vf_lavfi is not available. As another caveat, we install the example profile even if encoding is disabled (though we don't load it, since this would print errors).
* player: add --secondary-sid for displaying a second subtitle streamwm42013-12-242-0/+23
| | | | | | | This is relatively hacky, but it's Christmas, so it's ok. This does two things: 1. allow selecting two subtitle tracks, and 2. include a hack that renders the second subtitle always as toptitle. See manpage additions how to use this.
* changes.rst: add entry for dvdnav menuwm42013-12-231-1/+1
|
* manpage: mention video-unscaled propertywm42013-12-231-0/+1
|
* options: disable joystick by defaultwm42013-12-231-1/+1
|
* af_export: require filename argumentwm42013-12-211-2/+2
| | | | | | Since mp_find_user_config_file() is going to get a context argument, which would be annoying to do in the audio chain (actually I'm just lazy).
* msg: change --msglevel, reduce legacy gluewm42013-12-202-12/+17
| | | | | | | | | | | | Basically, reimplement --msglevel. Instead of making the new msg code use the legacy code, make the legacy code use the reimplemented functionality. The handling of the deprecated --identify switch changes. It temporarily stops working; this will be fixed in later commits. The actual sub-options syntax (like --msglevel-vo=...) goes away, but I bet nobody knew about this or used this anyway.
* crosscompile-mingw.txt: fix instructionswm42013-12-191-1/+1
| | | | | The instructions hardcode some paths, so it sure would be better if the listed commands actually use this path.
* command: remove radio commandswm42013-12-191-2/+1
| | | | | | | Remove these because I'm too lazy to convert them to proper STREAM_CTRLs. Considering that probably nobody uses radio://, caring about this is a complete waste of time. I will add these commands back if someone asks for them, but I don't expect this to happen.
* Fix OSX build; remove all remaining mpvcore references11rcombs2013-12-171-7/+7
|
* command: scale osd’s time remaining by the current speedVivek Jain2013-12-161-0/+1
| | | | Signed-off-by: wm4 <wm4@nowhere>
* manpage: fix --vf=expand aspect ratio exampleAlessandro Ghedini2013-12-161-1/+1
|
* manpage: undocument syntax for skipping optional arguments in input commandswm42013-12-161-2/+0
| | | | | | | | "-" could skip optional arguments. I think this was a pretty bad idea, because it introduced a weird special case. I'll remove the special syntax, but keep compatibility for the "seek" and "screenshot" commands.
* matroska: add --ordered-chapters-files optionwm42013-12-141-0/+12
| | | | | This option takes a playlist. The playlist will then be used as list of potential segment files for use with ordered chapters.
* manpage: mention that the "run" does not wait for the commandwm42013-12-141-0/+3
|
* Allow some options taking filenames to refer to mpv config dirwm42013-12-141-0/+22
| | | | | | | | | | Add the mp_get_user_path() function, and make it expand special path prefixes. Use it for some things in mpv which take filenames (--input-config, --screenshot-template, opengl icc-profile suboption). This allows accessing files in the mpv config dir without hardcoding the config path by prefixing the path with ~~/. Details see manpage additions.
* dvdnav: select longest title by defaultwm42013-12-141-0/+1
| | | | This way we probably do the right thing, and avoid all the menu shit.
* video: change --video-zoom behaviorwm42013-12-131-3/+8
| | | | | | | | | | | Use the scaled video size (i.e. as shown on the window) as reference for zoom. This is the easiest way to fix different width/height scale factors as they happen when zooming video with a pixel aspect ratio other than 1:1. Also fix the unscaled mode, so that it 1. doesn't scale even with --video-zoom, and 2. doesn't scale by small amounts when the video is cropped by making the window smaller than the video.
* osd: add option for "unscaled" OSDwm42013-12-101-0/+6
|
* demux: set fps for mf:// to 1wm42013-12-101-1/+1
|
* manpage: remove some --flip leftoverswm42013-12-072-2/+2
|
* manpage: mark "run" command as Unix-onlywm42013-12-071-0/+1
|
* 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
| | | | | |