aboutsummaryrefslogtreecommitdiffhomepage
path: root/DOCS/man
Commit message (Collapse)AuthorAge
...
* manpage: remove stale vo_wayland entryGravatar wm42018-01-13
|
* manpage: update references to gpu VOGravatar daschiller2018-01-10
|
* command: make pause display the same osd-msg-bar as seekGravatar Kevin Mitchell2018-01-07
| | | | | | Previously, toggling pause would generate no osd response, and changing that wasn't even configurable. This was surprising to users who generally expect to see *where* pause / unpause is taking place (#3028).
* command: default to osd-msg-bar for seeksGravatar Kevin Mitchell2018-01-07
| | | | | | | | The previous default was osd-bar (unless the user specified --no-osd-bar, in which case case it was osd-msg). Aside from requiring some twisted logic to implement, this surprised users since osd-msg3 wasn't displayed when seeking with the keyboard (#3028), so the time seeked to was never displayed.
* manpage: fix typos in osd level descriptionsGravatar Kevin Mitchell2018-01-07
|
* ytdl_hook: add script option to revert to trying youtube-dl firstGravatar Ricardo Constantino2018-01-07
| | | | | Should only make a difference if most of the URLs you open need youtube-dl parsing.
* player: strictly never autoselect tracks from --external-filesGravatar wm42018-01-06
| | | | | | | | | | | | | | | | Before this commit, some autoselection of tracks coming from files loaded with --external-files was still done. This commit removes all of it, and the only way to select a track is via the explicit stream selection options like --vid/--sid/--aid. I think this was always the original intention. The change could in theory still unintentionally surprise some users, so add a changelog entry. This does not affect --audio-file/--sub-file, even if these contain mismatching track types. E.g. if audio files passed to --audio-file contain subtitles, these should still be selected. Past feature requests indicate that users want this.
* vo_gpu: hwdec_dxva2dxgi: initial implementationGravatar James Ross-Gowan2018-01-06
| | | | | | | | | | | | | This enables DXVA2 hardware decoding with ra_d3d11. It should be useful for Windows 7, where D3D11VA is not available. Images are transfered from D3D9 to D3D11 using D3D9Ex surface sharing[1]. Following Microsoft's recommendations, it uses a queue of shared surfaces, similar to Microsoft's ISurfaceQueue. This will hopefully prevent surface sharing from impacting parallelism and allow multiple D3D11 frames to be in-flight at once. [1]: https://msdn.microsoft.com/en-us/library/windows/desktop/ee913554.aspx
* player: add --cache-pause-initial option to start in buffering stateGravatar wm42018-01-03
| | | | | | Reasons why you'd want this see manpage additions. Disabled by default, because it would increase latency of live streams by default. (Or well, at least it would be another problem when trying getting lower latency.)
* player: use fixed timeout for cache pausing (buffering) durationGravatar wm42018-01-03
| | | | | | | | | | | | | | | This tried to be clever by waiting for a longer time each time the buffer was underrunning, or shorter if it was getting better. I think this was pretty weird behavior and makes no sense. If the user really wants the stream to buffer longer, he/she/it can just pause the player (the network caches will continue to be filled until they're full). Every time I actually noticed this code triggering in my own use, I didn't find it helpful. Apart from that it was pretty hard to test. Some waiting is needed to avoid that the player just plays the available data as fast as possible (to compensate for late frames and underrunning audio). Just use a fixed wait time, which can now be controlled by the new --cache-pause-wait option.
* manpage: slightly improve description of --cache-pause optionGravatar wm42018-01-03
|
* osc: add seekbarkeyframes as a user optionGravatar dudemanguy2018-01-03
|
* player: remove internal `vo-resize` command againGravatar sfan52018-01-02
| | | | Its only usecase was automated in the previous commit.
* vo_gpu/context_android: replace both options with android-surface-sizeGravatar sfan52018-01-02
| | | | This allows us to automatically trigger a VOCTRL_RESIZE (also contained).
* command: add demuxer-lavf-list propertyGravatar Ricardo Constantino2018-01-02
| | | | | | | | | Was only available with --demuxer-lavf-format=help and the demuxer needed to be used for it to actually print the list. This can be used in the future to check if 'dash' support was compiled with FFmpeg so ytdl_hook can use it instead. For now, dashdec is too rudimentary to be used right away.
* player: add on_load_fail hookGravatar Ricardo Constantino2018-01-02
|
* vo_gpu/android: fallback to EGL_WIDTH/HEIGHTGravatar Aman Gupta2018-01-01
| | | | | | | | | | Uses the EGL width/height by default when the user fails to set the android-surface-width/android-surface-height options. This means the vo-resize command is optional, and does not need to be implemented on android devices which do not support rotation. Signed-off-by: Aman Gupta <aman@tmm1.net>
* manpage: put android surface options on one lineGravatar Kevin Mitchell2017-12-28
| | | | This is required by rst2man.
* vd_lavc: add an option to explicitly workaround x264 4:4:4 bugGravatar wm42017-12-28
| | | | | | Technically, the user could just use --vd-lavc-o with the same result. But I find it better to make this an explicit option, so we can document the ups and downs, and also avoid setting it for non-h264.
* player: add internal `vo-resize` commandGravatar sfan52017-12-27
| | | | Intended to be used with the properties from previous commit.
* vo_gpu/context: Let embedding application handle surface resizesGravatar sfan52017-12-27
| | | | | The callbacks for this are Java-only and EGL does not reliably return the correct values.
* manpage: fix typo in warningGravatar Bisaloo2017-12-27
|
* encode: implement --oset-metadata, and --oremove-metadataGravatar TheAMM2017-12-26
| | | | | | | | | | | | This commit introduces a new --oset-metadata key-value-list option, allowing the user to specify output metadata when encoding (eg. --oset-metadata=title="Hello",comment="World"). A second option --oremove-metadata is added to exclude existing metadata from the output file (assuming --ocopy-metadata is enabled). Not all output formats support all tags, but luckily libavcodec simply discards unsupported keys.
* encode: rename option --ometadata to --ocopy-metadataGravatar TheAMM2017-12-26
| | | | | | --copy-metadata describes the result of the option better, (copying metadata from the source file to the output file). Marks the old --no-ometadata OPT_REMOVED with a suggestion for the new --no-ocopy-metadata.
* options: add -add/-append actions to key/value listsGravatar wm42017-12-26
| | | | Requested.
* osc: make seek ranges rendering optionalGravatar pavelxdd2017-12-26
| | | | | This commit adds a new osc setting `seekranges` to control the seek ranges visibility.
* vo_gpu: vulkan: allow disabling async tf/compGravatar Niklas Haas2017-12-25
| | | | | | | | | Async compute in particular seems to cause problems on some drivers, and even when supprted the benefits are not that massive from the tests I have seen, so it's probably safe to keep off by default. Async transfer on the other hand seems to work better and offers a more substantial improvement, so it's kept on.
* vo_gpu: vulkan: support split command poolsGravatar Niklas Haas2017-12-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using a single primary queue, we generate multiple vk_cmdpools and pick the right one dynamically based on the intent. This has a number of immediate benefits: 1. We can use async texture uploads 2. We can use the DMA engine for buffer updates 3. We can benefit from async compute on AMD GPUs Unfortunately, the major downside is that due to the lack of QF ownership tracking, we need to use CONCURRENT sharing for all resources (buffers *and* images!). In theory, we could try figuring out a way to get rid of the concurrent sharing for buffers (which is only needed for compute shader UBOs), but even so, the concurrent sharing mode doesn't really seem to have a significant impact over here (nvidia). It's possible that other platforms may disagree. Our deadlock-avoidance strategy is stupidly simple: Just flush the command every time we need to switch queues, and make sure all submission and callbacks happen in FIFO order. This required lifting the cmds_pending and cmds_queued out from vk_cmdpool to mpvk_ctx, and some functions died/got moved as a result, but that's a relatively minor change. On my hardware this is a fairly significant performance boost, mainly due to async transfers. (Nvidia doesn't expose separate compute queues anyway). On AMD, this should be a performance boost as well due to async compute.
* vo_gpu: vulkan: properly track image dependenciesGravatar Niklas Haas2017-12-25
| | | | | | | | | | | | | | | | | | | | | | | | This uses the new vk_signal mechanism to order all access to textures. This has several advantageS: 1. It allows real synchronization of image access across multiple frames when using multiple queues for parallelism. 2. It allows using events instead of pipeline barriers, which is a finer-grained synchronization primitive that allows for more efficient layout transitions over longer durations. This commit also restructures some of the implicit transition code for renderpasses to be more flexible and correct. (Note: this technically drops the ability to transition the image out of undefined layout when not blending, but that was a bug anyway and needs to be done properly) vo_gpu: vulkan: remove no-longer-true optimization The change to the output_tex format makes this no longer true, and it actually seems to hurt performance now as well. So just don't do it anymore. I also realized it hurts performance when drawing an OSD, so it's probably not a good idea anyway.
* player: show demuxer cache buffered amount in bytes in the status lineGravatar wm42017-12-23
| | | | | | | | I don't want to add another field to display stream and demuxer cache separately, so just add them up. This strangely makes sense, since the forward buffered stream cache amount consists of data not read by the demuxer yet. (If the demuxer cache has buffered the full stream, the forward buffered stream cache amount is 0.)
* cache: lower default size to 2*10MBGravatar wm42017-12-23
| | | | | | | | | | | | Reduce it from 75MB in both directions (forward/backwards) to 10MB each. The stream cache is kind of becoming useless in favor of the demuxer cache. Using both doesn't make much sense, because they will contain duplicated data for no reason. Still leave it at 10MB, which may help with mp4 a bit. libavformat's mp4 demuxer tends to seek too much, so we try to avoid triggering network level seeks by having some caching in the stream layer.
* demux: bump the demuxer cache readahead durationGravatar wm42017-12-23
| | | | | | Set it to 10 hours, which is practically unlimited. (Avoiding use of "inf", since that might interact strangely with the option parser and such.)
* options: deprecate --ff- options and propertiesGravatar wm42017-12-21
| | | | | | | | | | | Some old crap which nobody needs and which probably nobody uses. This relies on a GCC extension: using "## __VA_ARGS__" to remove the comma from the argument list if the va args are empty. It's supported by clang, and there's some chance newer standards will introduce a proper way to do this. (Even if it breaks somewhere, it will be a problem only for 1 release, since I want to drop the deprecated properties immediately.)
* vo_mediacodec_embed: implement hwcontextGravatar Aman Gupta2017-12-20
| | | | Fixes vo_mediacodec_embed, which was broken in 80359c6615658f2784
* client API: change --stop-playback-on-init-failure defaultGravatar wm42017-12-17
| | | | | | | | | | | | | | | | This was off for mpv CLI, but on for libmpv. The motivation behind this was that it would be confusing for applications if libmpv continued playback in a severely "degraded" way (without either audio or video), and that it would be better to fail early. In reality the behavior was just a confusing difference to mpv CLI, and has confused actual users as well. Get rid of it. Not bothering with a version bump, since this is so minor, and it's easy to ensure compatibility in affected applications by just setting the option explicitly. (Also adding the missing next-release-marker in client-api-changes.rst.)
* js: implement mp.msg.trace()Gravatar TheAMM2017-12-16
| | | | | | | To match the new Lua helper introduced in 1afdeee1ad8bca1c703e741002fa3b882d162968 Add documentation for both.
* msg: bump up log level of --log-fileGravatar Niklas Haas2017-12-15
| | | | This now logs -v -v by default, instead of -v.
* vd_lavc: rename --hwdec=rpi to --hwdec=mmalGravatar wm42017-12-15
| | | | | | Annoying exception that makes no sense to keep. Normally, users or client applications will either use --hwdec=auto, or not set the option at all, which both leads to the expected result.
* lua+js: implement utils.file_info()Gravatar TSaaristo2017-12-13
| | | | | | | | | | | | | | | This commit introduces mp.utils.file_info() for querying information on file paths, implemented for both Lua and Javascript. The function takes a file path as an argument and returns a Lua table / JS object upon success. The table/object will contain the values: mode, size, atime, mtime, ctime and the convenience booleans is_file, is_dir. On error, the Lua side will return `nil, error` and the Javascript side will return `undefined` (and mark the last error). This feature utilizes the already existing cross-platform `mp_stat()` function.
* vf_buffer: remove this filterGravatar wm42017-12-12
| | | | | It has been deprecated for a while and is 100% useless. It was forgotten in the recent filter purge. Get rid of it.
* manpage: Fix typo (reomve -> remove)Gravatar Anna-Maria Meriniemi2017-12-10
| | | | This commit fixes the "reomve" typo in the Javascript docs.
* manpage: clarify --sub-file(s) optionsGravatar wm42017-12-07
| | | | | | This was a bit confused, and I bet nobody understood whether to use --sub-file or --sub-files, and what the difference is. Explicitly mention that both variants exist, and how they are related.
* options: add --start=none to reset previously set start timeGravatar Aman Gupta2017-12-06
| | | | | | | | | | | | | Previously when using a libmpv instance to play multiple videos, once --start was set there was no clear way to unset it. You could use --start=0, but 0 does not always mean the beginning of the file (especially when using --rebase-start-time=no). Looking up the start timestamp and passing that in also does not always work, particularly when the first timestamp is negative (since negative values to --start have a special meaning). This commit adds a new "none" value which maps to the internal REL_TIME_NONE, matching the default value of the play_start option.
* manpage: minor fixes to documenationGravatar Leo Izen2017-12-06
|
* manpage: add note about properties not immediately showing upGravatar Kevin Mitchell2017-12-06
| | | | fixes #5134
* Remove support for ffmpeg-mpvGravatar Rostislav Pehlivanov2017-12-05
|
* manpage: add some minor documenation fixesGravatar Leo Izen2017-12-04
| | | | | | - replace the incorrect reference to --opengl-shader - document a caveat when using --image-display-duration - add some documentation on --vf=lavfi=
* player/misc.c: allow both --length and --end to control play endpointGravatar Leo Izen2017-12-04
| | | | | | | | | | Most options that change the playback endpoint coexist and playback stops when it reaches any of them. (e.g. --ab-loop-b, --end, or --chapter). This patch extends that behavior to --length so it isn't automatically trumped by --end if both are present. These two will interact now as the other options do. This change is also documented in DOCS/man/options.rst.
* manpage: vaapi-copy is not limited to Intel GPUsGravatar Mariusz Skoneczko2017-12-03
| | | vaapi-copy works with some AMD cards
* man: remove incorrect note about default opengl backendGravatar Martin Herkt2017-12-02
|