aboutsummaryrefslogtreecommitdiffhomepage
path: root/DOCS
Commit message (Collapse)AuthorAge
...
* DOCS/client_api_examples: add qt widget + opengl-cb exampleGravatar wang-bin2015-10-11
|
* ytdl: Remove DASH hacks, use DASH by defaultGravatar ChrisK22015-10-11
| | | | | | | | | | | Thanks to rcombs, ffmpeg now properly supports DASH and we can remove our hacks for it and use it by default whenever available. If you don't like this for whatever reason, you can get the "normal" streams back with --ytdl-format=best . Closes #579 Closes #1321 Closes #2359
* DOCS/client_api_examples/README: rewriteGravatar wm42015-10-10
| | | | | | The new one is much more detailed. Also add part of it to the libmpv doxygen.
* manpage: font options do not support fontconfig patterns anymoreGravatar wm42015-10-09
| | | | | | libass 0.13.0 breaks this due to removal of fontconfig from its core (instead, fontconfig is one possible backend, and pattern lookup is apparently not possible anymore).
* video: remove user-controllable PTS sorting (--pts-association-mode)Gravatar wm42015-10-06
| | | | | | | | | Useless. Sometimes it might be useful to make some extremely broken files work, but on the other hand --no-correct-pts is sufficient for these cases. While we still need some of the code for AVI, the "auto" mode in particular inflated the size of the code.
* audio: add option for falling back to ao_nullGravatar wm42015-10-05
| | | | | | | | | The manpage entry explains this. (Maybe this option could be always enabled and removed. I don't quite remember what valid use-cases there are for just disabling audio entirely, other than that this is also needed for audio decoder init failure.)
* manpage: edit recommended VO remarksGravatar wm42015-10-04
|
* Revert "vo_x11: remove this video output"Gravatar wm42015-09-30
| | | | | | | | | | | | | | | This reverts commit d11184a256ed709a03fa94a4e3940eed1b76d76f. Unfortunately, there was a lot of unexpected resistance. Do note that this is still extremely slow, crappy, etc. Note that vo_x11.c was further edited. Compared to the removed vo_x11.c, an additional ~200 lines of code was removed in order to simplify it. I tried to strip it down as much as possible. In particular, support for odd non-32 bit formats (24, 16, 15, 8 bit) is dropped. Closes #2300.
* manpage: adjustments to hwdec remarksGravatar wm42015-09-29
|
* video: replace vf_format outputlevels option with global optionGravatar wm42015-09-29
| | | | | | | | | | | 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.
* video: remove VDA supportGravatar wm42015-09-28
| | | | | | | | | VideoToolbox is preferred. Now that FFmpeg released 2.8, there's no reason to support VDA anymore. In fact, we had a bug that made VDA not useable with older FFmpeg versions in some newer mpv releases. VideoToolbox is supported even on slightly older OSX versions, and if not, you still can run mpv without hw decoding.
* manpage: fix broken exampleGravatar wm42015-09-27
| | | | Fixes #2353.
* client API: rename GL_MP_D3D_interfacesGravatar wm42015-09-24
| | | | | | | | | | | | | This is a pseudo-OpenGL extension for letting libmpv query native windowing system handles from the API user. (It uses the OpenGL extension mechanism because I'm lazy. In theory it would be nicer to let the user pass them with mpv_opengl_cb_init_gl(), but this would require a more intrusive API change to extend its argument list.) The naming of the extension and associated function was unnecessarily Windows specific (using "D3D"), even though it would work just fine for other platforms. So deprecate the old names and introduce new ones. The old ones still work.
* vo_opengl: remove sharpen scalers, add sharpen sub-optionGravatar wm42015-09-23
| | | | | | | | | | | | This turns the old scalers (inherited from MPlayer) into a pre- processing step (after color conversion and before scaling). The code for the "sharpen5" scaler is reused for this. The main reason MPlayer implemented this as scalers was perhaps because FBOs were too expensive, and making it a scaler allowed to implement this in 1 pass. But unsharp masking is not really a scaler, and I would guess the result is more like combining bilinear scaling and unsharp masking.
* DOCS: update client API changes for releaseGravatar Martin Herkt2015-09-23
|
* DOCS: update release policyGravatar Martin Herkt2015-09-23
|
* manpage: add a note about libavfilterGravatar wm42015-09-11
|
* video/filter: remove some vf_lavfi wrappersGravatar wm42015-09-11
| | | | | | | | | | | | | | | | 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.
* af_lavfi: implement af-metadata propertyGravatar wm42015-09-11
| | | | | | | Works like vf-metadata. Unfortunately requires some code duplication (even though it's not much). Fixes #2311.
* video: make --field-dominance set interlaced flagGravatar Kevin Mitchell2015-09-10
| | | | fixes #2289
* cache: do not include backbuffer size in total stream cache sizeGravatar wm42015-09-10
| | | | | | | | | This causes weirdness with the "cache-size" property and option. Only the read handler of the property included the backbuffer, while all others did not. Make it consistent, and subtract the backbuffer size from the cache size. Fixes #2305.
* DOCS: cleanup API changes version markersGravatar wm42015-09-10
| | | | | | Make it so that they don't need to be edited on release (no change in tense). Also, move the "stray" changes after client API version 1.19 to 1.19 itself.
* vo_opengl: implement debanding (and remove source-shader)Gravatar Niklas Haas2015-09-09
| | | | | | | | | | The removal of source-shader is a side effect, since this effectively replaces it - and the video-reading code has been significantly restructured to make more sense and be more readable. This means users no longer have to constantly download and maintain a separate deband.glsl installation alongside mpv, which was the only real use case for source-shader that we found either way.
* af_lavrresample: add normalize suboptionGravatar wm42015-09-08
|
* vo_opengl: restore single pass optimization as separate code pathGravatar wm42015-09-07
| | | | | | | | | | | | | | | | | | | | | | The single path optimization, rendering the video in one shader pass and without FBO indirections, was removed soem commits ago. It didn't have a place in this code, and caused considerable complexity and maintenance issues. On the other hand, it still has some worth, such as for use with extremely crappy hardware (GLES only or OpenGL 2.1 without FBO extension). Ideally, these use cases would be handled by a separate VO (say, vo_gles). While cleaner, this would still cause code duplication and other complexity. The third option is making the single-pass optimization a completely separate code path, with most vo_opengl features disabled. While this does duplicate some functionality (such as "unpacking" the video data from textures), it's also relatively unintrusive, and the high quality code path doesn't need to take it into account at all. On another positive node, this "dumb-mode" could be forced in other cases where OpenGL 2.1 is not enough, and where we don't want to care about versions this old.
* vo_opengl: require FBOs and get rid of the single-pass optimizationGravatar Niklas Haas2015-09-07
| | | | | | | This change makes vo_opengl slightly less compatible (ancient devices without FBOs will no longer work) and decreases performance in the simplest case (vo=opengl), in exchange for significantly reducing code complexity and making everything easier to reason about.
* DOCS/client_api_examples/sdl: make the window resizableGravatar wm42015-09-04
|
* audio/filter: remove af_bs2b tooGravatar wm42015-09-04
| | | | | | | Some users still use this filter, so the filter was going to be kept. But I overlooked that libavfilter provides this filter. Remove the redundant wrapper from mpv. Something like --af=lavfi=bs2b should work and give exactly the same results.
* audio/filter: remove some useless filtersGravatar wm42015-09-03
| | | | | | | | | | | | | | | | | | | | | | | | All of these filters are considered not useful anymore by us. Some have replacements in libavfilter (useable through af_lavfi). af_center, af_extrastereo, af_karaoke, af_sinesuppress, af_sub, af_surround, af_sweep: pretty simple and useless filters which probably nobody ever wants. af_ladspa: has a replacement in libavfilter. af_hrtf: the algorithm doesn't work properly on most sources, and the implementation was buggy and complicated. (The filter was inherited from MPlayer; but even in mpv times we had to apply fixes that fixed major issues with added noise.) There is a ladspa filter if you still want to use it. af_export: I'm not even sure what this is supposed to do. Possibly it was meant for GUIs rendering audio visualizations, but it couldn't really work well. For example, the size of the audio depended on the samplerate (fixed number of samples only), and it couldn't retrieve the complete audio, only fragments. If this is really needed for GUIs, mpv should add native visualization, or a proper API for it.
* manpage: fix typoGravatar wm42015-09-03
| | | | Fixes #2279.
* vo_opengl: enable pbo by default with opengl-hqGravatar wm42015-09-02
| | | | | | | | | Can significantly help with very large video resolutions on nvidia drivers. It doesn't seem to have negative effects on Intel drivers either. (Although it could have on Intel drivers for older hardware.) For now, this is only for --vo=opengl-hq. Maybe --vo=opengl should use it too, but it's still meant to be the crappy, fail-safe default.
* video: make container vs. bitstream aspect ratio configurableGravatar wm42015-08-30
| | | | | | Utterly idiotic bullshit. Fixes #2259.
* player: add --playlist-pos optionGravatar wm42015-08-22
| | | | Oddly often requested.
* docs: correct typo for 'ingore-chmap'Gravatar Ellis Berner2015-08-22
| | | | ingore-chmap -> ignore-chmap
* command: make the playback-time property writableGravatar wm42015-08-21
| | | | | | | Provides a simplistic way to seek without having to care about weird situations like timestamp vs. playback time. This is good, because the seek command is currently timestamp based, so when using the seek command the user _does_ have to care.
* vo_opengl: add tscale-clamp optionGravatar Niklas Haas2015-08-20
| | | | | | | | | | This significantly reduces the amount of noticeable flashing when using tscale kernels with negative lobes, by cutting them off completely. I'm not sure if this has any negative effects. It needs a bit of subjective testing over a period of time, so I just made it an option. Fixes #2155.
* vo_rpi: disable background by defaultGravatar wm42015-08-20
| | | | And add an option to enable it.
* manpage: fix typoGravatar wm42015-08-18
| | | | Actually, this was unintentionally changed in commit 70e0bc1e.
* DOCS/client_api_examples/sdl: don't curse the mainloopGravatar wm42015-08-17
| | | | Fix a typo, and also reword another comment.
* DOCS/client_api_examples/sdl: add more explanation commentsGravatar wm42015-08-12
|
* player: use OSD formattin for DS on the terminal status lineGravatar wm42015-08-12
|
* DOCS/client_api_examples/sdl: don't load file before GL initGravatar wm42015-08-11
| | | | Could lead to failure because it's essentially a race condition.
* DOCS/client_api_examples: add SDL OpenGL exampleGravatar wm42015-08-11
|
* manpage: fix typoGravatar wm42015-08-11
|
* player: add display sync modeGravatar wm42015-08-10
| | | | | | | | | | | | | | | | | | | | | | | | If this mode is enabled, the player tries to strictly synchronize video to display refresh. It will adjust playback speed to match the display, so if you play 23.976 fps video on a 24 Hz screen, playback speed is increased by approximately 1/1000. Audio wll be resampled to keep up with playback. This is different from the default sync mode, which will sync video to audio, with the consequence that video might skip or repeat a frame once in a while to make video keep up with audio. This is still unpolished. There are some major problems as well; in particular, mkv VFR files won't work well. The reason is that Matroska is terrible and rounds timestamps to milliseconds. This makes it rather hard to guess the framerate of a section of video that is playing. We could probably fix this by just accepting jittery timestamps (instead of explicitly disabling the sync code in this case), but I'm not ready to accept such a solution yet. Another issue is that we are extremely reliant on OS video and audio APIs working in an expected manner, which of course is not too often the case. Consequently, the new sync mode is a bit fragile.
* player: separate controls for user and video controlled speedGravatar wm42015-08-10
| | | | | | | | | | For video sync, we want separate playback speed controls for user- requested speed and the "correction" speed for video timing. Further, we use this separation to make sure only a resampler is inserted if playback speed is only changed for video sync correction. As of this commit, this is basically inactive code. It's just preparation for the video sync code (the following commit).
* demux_mkv: disable timestamp fixup code againGravatar wm42015-08-10
| | | | | | | | | | | | This doesn't work too well if sections of the file change to a different framerate. It lowers our chances to guess the correct FPS in the display sync code. For normal playback, this (probably) doesn't help that much anyway, except that the "estimated-vf-fps" property will regress in the simplest mkv case. This will be fixed with the next commit. The now disabled code will probably be removed; it's not useful anymore.
* manpage: document videotoolbox supportGravatar wm42015-08-08
|
* manpage: use - as separator for the remaining commandsGravatar wm42015-08-06
| | | | | See commit 289705da. These manpage parts were just forgotten when updating the command descriptions.
* lua: implement input_enable_section/input_disable_section via commandsGravatar wm42015-08-06
| | | | | | | | | | | | | | | Removes some more internal API calls from the Lua scripting backend. Which is good, because ideally the scripting backend would use libmpv functions only. One awkwardness is that mouse sections are still not supported by the public commands (and probably will never), so flags like allow-hide- cursor make no sense to an outside user. Also, the way flags are passed to the Lua function changes. But that's ok, because they're only undocumented internal functions, and not supposed to be used by script users. osc.lua only does due to historical reasons.