aboutsummaryrefslogtreecommitdiffhomepage
path: root/DOCS
Commit message (Collapse)AuthorAge
* manpage: talk about one script, not multiple scriptsGravatar Ryan Jacobs2015-01-02
| | | | | | There aren't multiple scripts. We're just talking about one: youtube-dl. Signed-off-by: wm4 <wm4@nowhere>
* OSC: add osc-message script command (wip)Gravatar ChrisK22015-01-02
|
* vo_opengl_old: remove ancient ATI-specific YUV conversionsGravatar wm42015-01-02
| | | | | | | | | | While there's no actual need to get rid of these, I want to make sure nobody actually needs this stuff, and removing it is the best way to get to know this. We still can revert this commit if it turns out there is a significant need for this stuff. The final goal is removing vo_opengl_old entirely. Add a warning, which basically announces this intention.
* build: try to make examples build both in-tree and out-of-treeGravatar wm42015-01-02
| | | | | | | | | | | | | | | | | | | | | | | | | The examples simple.c and cocoabasic.m can be compiled without installing libmpv. But also, they didn't use the correct include path libmpv programs normally use, so they couldn't be built with a properly installed system-libmpv. That's pretty bad for examples, which are supposed to show how to use libmpv correctly. So do some bullshit that symlinks libmpv to a "mpv" include directory under the build directory. This name-mismatch is a direct consequence of the bullshit done in 499a6758 (requested in #539 for dumb reasons). (We don't want to name the client API headers directory "mpv", because that would be too unspecific, and clashes with having the mpv binary in the same directory.) If you have spaces or other "unusual" characters in your paths, the build will break, because I couldn't find out where waf hides its function to escape shell parameters (or a way to invoke programs without involving the shell). Neither does such a thing to be documented, nor do they seem to have a clear way to do this in their code. This also doesn't compile the Qt examples, because everything becomes even more terrible from there on.
* DOCS/client_api_examples: move all examples into their own subdirsGravatar wm42015-01-01
| | | | | Also get rid of shared.h; it actually doesn't have much value. Just copy the tiny function it contained into the 2 files which used it.
* DOCS/client_api_examples: don't throw char* in C++ codeGravatar wm42015-01-01
| | | | | | | C++ is the worst language ever, and allows throwing any type, even if it doesn't make sense. In this case, we were throwing char*, which the runtime typically treats as opaque, instead of printing it as message if such an exception was not caught.
* manpage: fix typoGravatar wm42015-01-01
|
* command: make the "run" command work on Windows tooGravatar wm42015-01-01
| | | | | | | | | Do so by using mp_subprocess(). Although this uses completely different code on Unix too, you shouldn't notice a difference. A less ncie thing is that this reserves an entire thread while the command is running (which wastes some memory for stack, at least). But this is probably still the simplest way, and the fork() trick is apparently not implementable with posix_subprocess().
* client API: add function to create new mpv_handles from existing onesGravatar wm42014-12-31
| | | | | | | This may or may not be useful for client API users. Fold this API extension into the previous API bump. The previous bump was only yesterday, so it's ok.
* vo_opengl_cb: simplify API uninitializationGravatar wm42014-12-31
| | | | | | | | | | | Until now, calling mpv_opengl_cb_uninit_gl() at a "bad moment" could make the whole thing to explode. The API user was asked to avoid such situations by calling it only in "good moments". But this was probably a bit too subtle and could easily be overlooked. Integrate the approach the qml example uses directly into the implementation. If the OpenGL context is to be unitialized, forcefully disable video, and block until this is done.
* DOCS/client_api_examples: add an explicit licenseGravatar wm42014-12-30
| | | | IANAL, but we don't give a shit what you do with this code.
* DOCS/client_api_examples: qtexample: use queued signalsGravatar wm42014-12-30
| | | | | | | | Use queued signals instead of QEvent for the wakeup notification. This is slightly nicer, and reduces the chance that the event (QEvent::User) could clash with other code using the same event. Also switch to modern connect() syntax.
* DOCS/client_api_examples: qtquick: fix destructionGravatar wm42014-12-30
| | | | | | | | | | | | | | | | Destruction (e.g. when closing the window) was a bit broken. This commit fixes some possible crashes, and should make lifetime management relatively sane. (Still a bit complex, though. Maybe this code should be moved into a tiny library.) QtQuick runs the renderer on a separate thread. This thread is rather loosely connected to the main thread. The loose separation is enforced by the API, which also makes coordination of initialization and destruction harder. Throw refcounting at the problem, which fixes it. The refcounting wrapper introduced in the previous commit is used for this. Also contains some general cleanups.
* client API: qthelper: add a refcounting wrapper around mpv_handleGravatar wm42014-12-30
| | | | | This is useful to deal with crazy Qt object lifetime issues (the following commit needs it).
* command: add filtered-metadata propertyGravatar wm42014-12-29
| | | | | Goes in hand with the previous commit; the main purpose is to easily show on OSD what is shown on terminal.
* player: filter tags, add --display-tags optionGravatar wm42014-12-29
| | | | | | | | This attempts to increase user-friendliness by excluding useless tags. It should be especially helpful with mp4 files, because the FFmpeg mp4 demuxer adds tons of completely useless information to the metadata. Fixes #1403.
* player: make --shuffle/--merge-files affect runtime loaded playlistsGravatar wm42014-12-29
| | | | | | | Until now, these options took effect only at program start. This could be confusing when e.g. doing "mpv list.m3u --shuffle". Make them always take effect when a playlist is loaded either via a playlist file, or with the "loadlist" command.
* ao_portaudio: remove this audio outputGravatar wm42014-12-29
| | | | | It's just completely useless. We have good native support for all 3 desktop platforms, and ao_sdl or ao_openal as fallbacks.
* manpage: document new --stream-dump behaviorGravatar wm42014-12-27
| | | | That's probably a good idea.
* command: overlay_add: more flexible treatment of offset parameterGravatar wm42014-12-26
| | | | | | | | | | | | | | Essentially, don't make it the mmap() argument, and just add it to the memory address. This hides tricky things like alignment reequirements from the user. Strictly speaking, this is not entirely backwards compatible: this adds the regression that you can't access past 2 or 4 GB of a file on 32 bit systems anymore. But I doubt anyone cared about this. In theory, we could be clever, and just align the offset manually and pass that to mmap(). This would also be transparent to the user, but minimally more effort, so this is left as exercise to the reader.
* win32: add mmap() emulationGravatar wm42014-12-26
| | | | | | | | Makes all of overlay_add work on windows/mingw. Since we now don't explicitly check for mmap() anymore (it's always present), this also requires us to make af_export.c compile, but I haven't tested it.
* manpage: lua: fix a linkGravatar wm42014-12-26
|
* manpage: fix typoGravatar wm42014-12-25
| | | | Fixes #1384.
* manpage: lua: fixes and improvementsGravatar wm42014-12-25
| | | | Some things were outdated, or outright wrong.
* ipc: add enable_event and disable_event commandsGravatar wm42014-12-24
| | | | This was requested.
* command: extend revert_seek commandGravatar wm42014-12-17
| | | | | "revert_seek mark" basically forces the seekback point. It's basically a one-way bookmark.
* vo_opengl: switch default FBO format to rgba, use GL_RGBAGravatar wm42014-12-17
| | | | | | | | | | I'm hoping this is generally more compatible, and it works with GLES. This probably has not much of an effect on desktop GL. It also switches only the default format for --vo=opengl, not --vo=opengl-hq. "-hq" already uses GL_RGBA16, though since it's a sized format, the story is a bit different, and it won't work on GLES either.
* manpage: ao_alsa: link upmix wiki entryGravatar wm42014-12-16
| | | | | | Also clarify the statement about what we expect to happen by default. It's well possible that distros at some point will fix their ALSA configuration, and e.g. enable the upmix plugin by default.
* audio: make native channel count the default instead of stereo downmixGravatar wm42014-12-15
| | | | | | | | | | | | | | This should work well with most audio APIs, except ALSA. A long-winded explanation is provided how to make ALSA multichannel output work. All other AOs should have no such problems. Of course it's possible that previously unknown issues arise, because I assume that enabling multichannel audio is actually relatively rare. This also disables codec downmix by default, which could change the audio output due to different mixing in the codec and libavresample. Fixes #1313.
* vo_opengl: remove quadbuffer/anaglyph stereo 3D renderingGravatar wm42014-12-15
| | | | | | | | Obscure feature, and I've never heard of anyone using it. The anaglyph effects can be reproduced with vf_stereo3d. The only thing that can't be reproduced with it is "quadbuffer", which requires special and expensive hardware.
* options: deprecate 'lua' based options/dirs for 'script'Gravatar Avi Halachmi (:avih)2014-12-15
| | | | | | | | | | | | - --lua and --lua-opts change to --script and --script-opts - 'lua' default script dirs change to 'scripts' - DOCS updated - 'lua-settings' dir was _not_ modified The old lua-based names/dirs still work, but display a warning. Signed-off-by: wm4 <wm4@nowhere>
* command, dvd: add property which returns list of DVD titlesGravatar wm42014-12-13
| | | | | | | | | This was requested. It seems libdvdread can't get the duration for titlesets other than the currently opened title. The data structures contain dangling pointers for these, and MPlayer works this around by opening every title separately for the purpose of dumping the title list.
* DOCS: add missing close bracketGravatar Ben Boeckel2014-12-12
|
* options: add option for ignoring patch in resume mechanismGravatar wm42014-12-13
| | | | | | Whatever. Fixes #1281.
* player: add a --keep-open=always modeGravatar wm42014-12-12
| | | | | | | | The --keep-open behavior was recently changed to act only on the last file due to user requests (see commit 735a9c39). But the old behavior was useful too, so bring it back as an additional mode. Fixes #1332 (or rather, should help with it).
* DOCS/crosscompile-mingw: updateGravatar wm42014-12-12
| | | | Unrecommend mingw-w64-cmake, point out MXE host requirements.
* command: add properties for current bitrateGravatar wm42014-12-12
| | | | Fixes #1192.
* demux: don't always make --cache-secs override --demuxer-readahead-secsGravatar wm42014-12-12
| | | | It's confusing. Whether the new behavior is less confusing... whatever.
* DOCS/contribute.md: remove unintentional headlineGravatar selsta2014-12-11
| | | | The # from the IRC channel made it appear as a headline.
* manpage: fix mistake in --video-zoom mentionGravatar wm42014-12-11
| | | | Fixes #1331.
* command: add "idle" propertyGravatar wm42014-12-10
| | | | Yes, it's redundant with events.
* manpage: update the ao_alsa example (no-block was removed)Gravatar wm42014-12-09
| | | | | Also, don't use the "hw" device, but "plughw". ALSA docs say never to use "hw".
* DOCS/client_api_examples: remove nonsenseGravatar wm42014-12-09
| | | | | | | I thought setSamples() was some funky abstraction to set the number of components, but it's actually something else. Also fix the include paths.
* options: enable --ytdl by defaultGravatar wm42014-12-09
| | | | Let's see who complains...
* vo_opengl_cb: simplify reconfigure, render transparent if unconfiguredGravatar wm42014-12-09
| | | | | | | I think that's expected; mpv shouldn't draw anything while no video is active. This doesn't blend transparently, though. Also document the vo_opengl_cb thing.
* vo_opengl: make background color configurableGravatar wm42014-12-09
| | | | | This mainly affects the black bars that are drawn if the window and video aspect ratios mismatch.
* client API: expose OpenGL rendererGravatar wm42014-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds API to libmpv that lets host applications use the mpv opengl renderer. This is a more flexible (and possibly more portable) option to foreign window embedding (via --wid). This assumes that methods like context sharing and multithreaded OpenGL rendering are infeasible, and that a way is needed to integrate it with an application that uses a single thread to render everything. Add an example that does this with QtQuick/qml. The example is relatively lazy, but still shows how relatively simple the integration is. The FBO indirection could probably be avoided, but would require more work (and would probably lead to worse QtQuick integration, because it would have to ignore transformations like rotation). Because this makes mpv directly use the host application's OpenGL context, there is no platform specific code involved in mpv, except for hw decoding interop. main.qml is derived from some Qt example. The following things are still missing: - a way to do better video timing - expose GL renderer options, allow changing them at runtime - support for color equalizer controls - support for screenshots
* DOCS: Improve documentation of --ytdl-format optionGravatar ChrisK22014-12-07
| | | | As suggested in #1321
* options: add a 'once' idle modeGravatar Stefano Pigozzi2014-12-07
| | | | | This allows to make mpv wait for file open events at start but close after it is done playing the first playlist.
* DOCS, OSC: Un-document removed seektooltip optionGravatar ChrisK22014-12-05
|