aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* audio/out/push: reset projected EOF time on new dataGravatar wm42014-10-14
| | | | | Seems like this could theoretically happen in low buffer situations, but I haven't spotted this behavior in the wild.
* client API: qthelper: remove commented codeGravatar wm42014-10-14
| | | | This is already taken care of by Q_DISABLE_COPY().
* demux_lavf: set stream network options if applicableGravatar wm42014-10-14
| | | | | | | | | | | Normally, we pass libavformat demuxers a wrapped mpv stream. But in some cases, such as HLS and RTSP, we let libavformat open the stream itself. In these cases, set typical network properties like useragent according to the mpv options. (We still don't set it for the cases where libavformat opens other streams on its own, e.g. when opening the companion .sub file for .idx files - not sure if we maybe should always set these options.)
* demux_lavf: let libavformat open HLS streams directlyGravatar wm42014-10-14
| | | | | | | | Fixes opening some streams. This means the HLS playlist will be opened twice, but that's not much of a problem, considering it's pretty small, and HLS will make many other http accesses anyway.
* player: fix OSD cyclingGravatar wm42014-10-14
| | | | | | | OSD cycling attempted to remove the current message by setting an empty message with duration 0. Duration 0 tripped up a corner case causing no OSD to be displayed (until the next message was set), so exclude this explicitly.
* stream_lavf: expose concat://Gravatar wm42014-10-14
| | | | | | | Apparently there's an use for this; see #1178. I won't redocument obscure FFmpeg features, so add a hint to the manpage that some protocols are documented in FFmpeg instead.
* osd: properly redraw external overlays when they are setGravatar wm42014-10-14
|
* client API: allow returning float properties as integersGravatar wm42014-10-14
| | | | | I'm starting to think that being type-strict with this interface actually sucks. This commit is a step towards being less strict.
* player: fix --framesGravatar wm42014-10-14
| | | | | | | | | This could produce an extra frame, because reaching the maximum merely signals the playloop to exit, without strictly enforcing the limit. Fixes #1181. CC: @mpv-player/stable
* DOCS/client_api_examples: qtexample: remove debugging codeGravatar wm42014-10-14
| | | | Forgotten.
* client API: qthelper: fix bugsGravatar wm42014-10-14
| | | | Pretty dumb oversights.
* DOCS/client_api_examples: qtexample: stuffGravatar wm42014-10-13
| | | | | | Dump chapters and track list to the log for demo purposes. Compile in debug mode.
* client API: add qthelper.hppGravatar wm42014-10-13
| | | | | | | | | | | | | | This provides some helper functions and classes for C++/Qt. As the top of qthelper.hpp says, this is built on top of the client API, and is a mere helper provided for convenience. Maybe this should be a separate library, but on the other hand I don't see much of a point in that. It's also header-only, but C++ people like such things. This makes it easier for us, because we don't need to care about ABI compatibility. The client API doesn't change, but bump it so that those who are using this header can declare a proper dependency.
* ta/README: fix typosGravatar wm42014-10-13
|
* ao_wasapi: implement device listingGravatar wm42014-10-13
|
* ao_dsound: implement device listingGravatar wm42014-10-13
|
* ao_portaudio: implement device listingGravatar wm42014-10-13
|
* ao_openal: implement device listingGravatar wm42014-10-13
|
* audio/out: add "auto" pseudo-deviceGravatar wm42014-10-13
| | | | | Also, don't set an empty string for the fallback device if an AO doesn't list any devices.
* demux_mkv: fix undefined behaviorGravatar wm42014-10-13
| | | | | | | With some files, the extradata variable can remain uninitialized, but will be used for memory access. CC: @mpv-player/stable (with high priority)
* vf_vapoursynth: add debug message when returning error from GetFrameGravatar wm42014-10-13
| | | | | Some filters still (or will) behave badly on these errors, so explicitly log when it happens.
* x11: don't wait for asynchronous X resizing with window-scaleGravatar wm42014-10-13
| | | | | | | | | | | | | | | Instead of letting the window-scale property return the old value until X11 actually executed the resize, just set the new assumed internal window size immediately. This avoids a "lag" between setting and reading the window-scale property, like OSD controls typically do. Remove the additional calls from vo_x11_highlevel_resize() - they're pointless and slightly wrong, and resize events will take care of updating these things correctly anyway. Fixes #1176. ("window-scale" works via VOCTRL_[S|G]ET_UNFS_WINDOW_SIZE.)
* vf_vapoursynth: don't error if invoke() doesn't return a clipGravatar wm42014-10-12
| | | | | Not all functions are for creating filters. Consider for example LoadPlugin.
* vf_vapoursynth: resolve paths relative to home/configGravatar wm42014-10-12
| | | | | This affects the script filename passed to the filter. Resolve "~" (and some other variants) as described in the "Paths" section of mpv.rst.
* demux: fix a commentGravatar wm42014-10-12
| | | | Don't refer to fields that were removed.
* coreaudio: use the new device selection APIGravatar Stefano Pigozzi2014-10-12
| | | | | The CoreAudio API is built around device IDs so we store the integer as string and read it back.
* af_lavcac3enc: fix byte orderGravatar wm42014-10-12
| | | | | | | | Oops. Fixes #1172. CC: @mpv-player/stable
* DOCS/edl-mpv: minor clarificationGravatar wm42014-10-12
|
* gl_x11: distinguish missing GLX and too old GLX versionsGravatar wm42014-10-12
| | | | | | This probably led to confusing output. CC: @mpv-player/stable
* vf_vapoursynth: add standalone Lua scriptingGravatar wm42014-10-12
|
* vf_vapoursynth: abstract scripting backendGravatar wm42014-10-12
| | | | | | In theory, vsscript should be doing it, but it's not there yet, neither did there seem to be any interest in making it flexible enough to handle more than 1 scripting language.
* libmpv/cocoa: allow clients to use mpv event systemGravatar Stefano Pigozzi2014-10-12
| | | | | | | | | | This allows mpv's view to take key and send events to mpv's core. To set key status correctly, clients must call -[NSWindow selectNextKeyView:] during reconfig on the main thread. All is 'documented' in the cocoabasic example. If someone knows a better way to handle giving key to the embedded view, let me know!
* cocoa: remove usage of Objective-C categoriesGravatar Stefano Pigozzi2014-10-12
| | | | | Objective-C categories need special linker flags from the user when statically linking (-ObjC LDFLAG), so make everyone's life simpler and remove them.
* command: don't display non-sense if volume is unavailableGravatar wm42014-10-11
| | | | | | | | | Showed "Volume: (unavailable)%". That was dumb. The message string is now a bit convoluted; mostly because the property expand syntax can't do "if-else", just "if". CC: @mpv-player/stable
* command: make volume/mute unavailable if audio is not initializedGravatar wm42014-10-11
| | | | | | | | | | This does nothing good. This reverts a change made over a year ago - I don't remember why this was originally done this way. The main problem is that even if the volume option is set (something like "--volume=75"), the volume property will always return "100" until audio is initialized. If audio is uninitialized again, the volume property will remain frozen at its last value.
* build: remove useless functionGravatar Stefano Pigozzi2014-10-11
|
* build: update waf to version 1.8.1Gravatar Stefano Pigozzi2014-10-11
| | | | Fixes #1164
* vf_vapoursynth: return dummy frames if frames are requested during initGravatar wm42014-10-11
| | | | | | An attempt at fixing #1168. I see black frames flashing, so it's certainly not perfect.
* vf_vapoursynth: factor stuffGravatar wm42014-10-11
|
* vf_vapoursynth: when seeking, recreate only if it's already createdGravatar wm42014-10-11
|
* x11: don't wait until window is destroyedGravatar wm42014-10-11
| | | | | | | | | | This can hang if the window was destroyed externally (or that's what I suspect happens), and we somehow didn't receive the DestroyNotify event. I'm not sure why we wouldn't receive this event (since it should just be in the xlib event queue), but on the other hand there's no real need to wait for window destruction. This essentially reverts 97fc74e2.
* build: install input config files into doc dirGravatar wm42014-10-11
| | | | | Users using binary packages don't have obvious access to them, so this seems like a good idea.
* client API: check result ptr in mpv_command_nodeGravatar James Ross-Gowan2014-10-12
| | | | This follows the docs, which say the result parameter is optional.
* libmpv/mpv.def: add mpv_command_node[_async]Gravatar James Ross-Gowan2014-10-12
|
* build: make zsh completion directory configurableGravatar Philip Sequeira2014-10-11
| | | | Also, use the zsh default location (rather than the Debian one).
* vf_vapoursynth: fail gracefully if filter init requests framesGravatar wm42014-10-11
| | | | | | | | | | | | | | | | | Some VS filters will requests frames from their parent filters while they're initialized. Thy do this in a blocking manner, and initialization will not succeed until the frame request is satisfied. This deadlocked mpv, because we can feed frames to the filter only after initialization is finished. Return an error instead of deadlocking. Note that we (probably) can handle frames being requested during init fine, as long as the requests don't block initialization. But we can distinguish this situation, and a simple test seems to indicate VS usually doesn't do this. See #1168.
* lua: add command_native() functionGravatar wm42014-10-11
| | | | This is the Lua equivalent of mpv_command_node().
* client API: add mpv_command_node[_async]Gravatar wm42014-10-11
| | | | | | | | | Allows passing native types as arguments. Also some minor doc improvements, including giving some (natural) improvements to mpv_free_node_contents(). Note: mpv_command_node_async() is completely untested.
* etc/mplayer-input.conf: fix off by one errorGravatar wm42014-10-10
| | | | | | | | | playlist-pos is 0-based, but everyone thinks it's 1-based. Stupid crap. (The "not the same as MPlayer" refers to a playlist manipulation command that doesn't exist anymore in mpv.) CC: @mpv-player/stable
* input: remove some unneeded codeGravatar wm42014-10-10
|