aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
...
| * lua: auto-load scripts from ~/.mpv/lua/Gravatar wm42014-02-14
| | | | | | | | This is like passing them to --lua.
| * lua: make register_event() not overwrite previous event handlerGravatar wm42014-02-14
|/ | | | | | | | Instead, chain them. Note that there's no logic to prevent the other event handlers to be run from an event handler (like it's popular in GUI toolkits), because I think that's not very useful for this purpose.
* build: Add -U__STRICT_ANSI__ to CFLAGS on CygwinGravatar Diogo Franco (Kovensky)2014-02-13
| | | | | | | | | | | | Cygwin's libc (newlib) doesn't obey a lot of unix feature test macros, including _GNU_SOURCE; as a result, a lot of functions and defines get masked out -- important defines such as M_PI and strcasecmp. Work around it by undefining __STRICT_ANSI__ on cygwin systems. This will still cause compilation issues on any non-cygwin system that uses newlib, but hopefully nobody does that, or if they do, they will find this commit message and know to add -U__STRICT_ANSI__ to their CFLAGS. Hopefully.
* build: disable clang's tautological compare warnings [2]Gravatar Stefano Pigozzi2014-02-13
| | | | Fixup 8009646583d523fc0.
* sub: handle vobsub-in-mp4Gravatar wm42014-02-13
| | | | | | | | | | | The mplayer decoder (spudec.c) actually handled this. There was explicit code for binary palettes (16 32 bit values), and the subtitle resolution was handled by video resolution coincidentally matching the subtitle resolution. Whoever puts vobsub into mp4 should be punished. Fixes the sample gundam_sample.mp4, closes github issue #547.
* build: disable clang's tautological compare warningsGravatar Stefano Pigozzi2014-02-13
| | | | | This silences two non issues in the client.c file. Fixing them as clang would want us to, would introduce security bugs and potential crashes.
* cocoa: fix deadlock during initialization [2]Gravatar Stefano Pigozzi2014-02-13
| | | | Fixup commit for 20fa191ad.
* player: select subtitles added with sub_addGravatar wm42014-02-13
| | | | | | | | | | In particular, this affects drag & drop of subtitles, which uses sub_add internally. This will make the subtitles show up immediately, instead of requiring manual selection of the added subtitle. Might be not so ideal when adding multiple subtitles at once, because that leads to multiple sub_add commands, and will end up with the last subtitle instead of the first selected. But this is a minor detail.
* build: bump libmpg123 versionGravatar wm42014-02-13
| | | | | | | | | The minimum required version was bumped in the old configure script, but for the waf build system is was somehow forgotten or overlooked. Probably happened while the waf build system was developed in a separate branch. Closes #546.
* cocoa: fix deadlock during initializationGravatar Stefano Pigozzi2014-02-13
| | | | | | Thanks to @wm4 for catching the bug. Fixes #405
* vo_opengl: make :srgb decompand the BT.709 values correctlyGravatar nand2014-02-12
| | | | | | | | This is the same issue as addressed by 257d9f1, except this time for the :srgb option as well. (257d9f1 only addressed :icc-profile) The conditions of the srgb_compand mix() call are also flipped to prevent an off-by-one error.
* vo_wayland: silence shadowing warningGravatar wm42014-02-12
|
* command: fix metadata propertyGravatar wm42014-02-12
| | | | This crashed when retrieving the raw property value. Oops.
* manpage: reformat property listGravatar wm42014-02-12
| | | | | | | | Use a list instead of a table. This makes it easier to provide extended information about a property, and doesn't require you to fiddle with rhe RST ASCII-art tables. Also, extend some property descriptions.
* manpage: lua: move less important events to the end of the listGravatar wm42014-02-12
|
* manpage: lua: document receiving of terminal messagesGravatar wm42014-02-12
|
* manpage: lua: rewrite event descriptionGravatar wm42014-02-12
| | | | | Using such a small table is not such a great idea, because you can't put much information in it, even if you need to.
* client API: fix description of mpv_event.error fieldGravatar wm42014-02-12
| | | | The description was a left over from an earlier iteration of the API.
* manpage: lua: minor fixesGravatar wm42014-02-12
|
* player: fix --force-window on OSXGravatar wm42014-02-11
| | | | | | | | The initialization code was split and refactored for the libmpv changes. One change, moving a part of cocoa initialization, accidentally broke --force-window on OSX, which creates a VO in a certain initialization stage. We still don't know how cocoa should behave with libmpv, so fix this with a hack to beat it back into working. Untested.
* man: update wayland optionsGravatar Alexander Preisinger2014-02-11
|
* wayland/shm: rewrite buffer handlingGravatar Alexander Preisinger2014-02-11
| | | | | | | | | | | I was unhappy with the old way of handling buffers, especially resizing. But my original plan to use wl_shm_pool_resize wasn't as good as I initially thought. I might get back to it. With the new buffer pools it now possible to select triple buffering. Also the buffer pools are also needed for the upcoming subsurfaces for osd and subtitles. I hope this change was worth it.
* wayland/shm: prevent the window from flying awayGravatar Alexander Preisinger2014-02-11
| | | | With the new xdg_shell the problem will be no gone by itself.
* manpage: fix Lua script shutdown description againGravatar wm42014-02-11
| | | | | | It was split at the wrong sentence. Also, sneak in a reference to mp.suspend.
* manpage: document --aspect special valuesGravatar wm42014-02-11
| | | | | | | Use of these is "discouraged", but they're there to select these special cases with the "aspect" property. They really should use some sort of choice option type, but since it would be some work to make these work with float values, the simple and dumb alternative was picked.
* video: fix --no-aspectGravatar wm42014-02-11
| | | | This also affects the --aspect option and the "aspect" property.
* build: add SONAME to libmpv.soGravatar wm42014-02-11
|
* manpage: use Lua for Lua exampleGravatar wm42014-02-11
|
* manpage: document mp.commandv Lua commandGravatar wm42014-02-11
|
* manpage: move description of script shutdown to a separate paragraphGravatar wm42014-02-11
| | | | No other changes, just adding a paragraph break and reflowing the text.
* manpage: fix formatting of example codeGravatar wm42014-02-11
|
* manpage: document some Lua scripting functionsGravatar wm42014-02-11
|
* lua: some minor API changesGravatar wm42014-02-11
|
* lua: add set_property functionGravatar wm42014-02-11
|
* lua: change error behaviorGravatar wm42014-02-11
| | | | | | | Return the error Lua-style, instead of raising it as Lua error. This is better, because raising errors is reserved for more "fatal" conditions. Pretending they're exceptions and trying to do exception-style error handling will just lead to pain in this language.
* lua: rename some API functionsGravatar wm42014-02-11
| | | | | | | | | send_command -> command send_commandv -> commandv get_timer -> get_time property_get -> get_property property_get_string -> get_property_osd getopt -> get_opt
* av_log: add tons of warnings against mismatched ffmpeg/libav librariesGravatar wm42014-02-10
| | | | | | | | | | | | | Print a warning if a library has mismatched compile time and link time versions. Refuse to work if the compile time and link time versions are a mix of ffmpeg and libav. We print an error message and call exit(). Since we'd randomly crash anyway, I think this is ok. This doesn't catch the case if you e.g. use a ffmpeg libavcodec and a libav libavformat, which would of course just crash as quickly, but I think this checks enough already.
* av_log: restructure version printing codeGravatar wm42014-02-10
| | | | Makes the following commit simpler.
* vo_opengl: fix typo in gamma function's parameterGravatar nand2014-02-10
| | | | | The correct value is 0.081, not 0.18. The scale factor also needed slight adjustment due to the order of operations.
* vo_vdpau: Discard zero timestampsGravatar Jonas Zetterberg2014-02-10
| | | | Some drivers do not supply timestamps, use old timestamp in these conditions.
* vo_vdpau: Ensure presentation time is within boundsGravatar Jonas Zetterberg2014-02-10
| | | | | When a time sync happens the last sync time is the minimum time that can be used for presentation.
* Merge branch 'client_api'Gravatar wm42014-02-10
|\
| * Add a client API exampleGravatar wm42014-02-10
| |
| * build: add option to build a libraryGravatar wm42014-02-10
| | | | | | | | | | | | | | | | | | | | | | | | | | This library will export the client API functions. Note that this doesn't allow compiling the command line player to link against this library yet. The reason is that there's lots of weird stuff required to setup the execution environment (mostly Windows and OSX specifics), as well as things which are out of scope of the client API and every application has to do on its own. However, since the mpv command line player basically reuses functions from the mpv core to implement these things, it's not very easy to separate the command line player form the mpv core.
| * build: include a copy of syms.py from upstream wafGravatar wm42014-02-10
| | | | | | | | | | | | The alternatives to copying this small bit of code are even worse. This is unmodified, except for the added line 3.
| * lua: add a timer APIGravatar wm42014-02-10
| |
| * lua: port to client APIGravatar wm42014-02-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is partial only, and it still accesses some MPContext internals. Specifically, chapter and track lists are still read directly, and OSD access is special-cased too. The OSC seems to work fine, except using the fast-forward/backward buttons. These buttons behave differently, because the OSC code had certain assumptions how often its update code is called. The Lua interface changes slightly. Note that this has the odd property that Lua script and video start at the same time, asynchronously. If this becomes an issue, explicit synchronization could be added.
| * Add a client APIGravatar wm42014-02-10
| | | | | | | | | | | | | | Add a client API, which is intended to be a stable API to get some rough control over the player. Basically, it reflects what can be done with input.conf commands or the old slavemode. It will replace the old slavemode (and enable the implementation of a new slave protocol).
| * timer: init only onceGravatar wm42014-02-10
| | | | | | | | | | | | | | | | | | | | This avoids trouble if another mpv instance is initialized in the same process. Since timeBeginPeriod/timeEndPeriod are hereby not easily matched anymore, use an atexit() handler to call timeEndPeriod, so that we can be sure these calls are matched, even if we allow multiple initializations later when introducing the client API.
| * options: add --no-terminal switchGravatar wm42014-02-10
| | | | | | | | | | Mostly useful for internal reasons. This code will be enabled by default if mpv is started via the client API.