summaryrefslogtreecommitdiff
path: root/mpv.py
AgeCommit message (Collapse)AuthorFilesLines
2019-12-03Allow mpv-1.dll to be placed in python script directory (#96)ripdog1-1/+4
Windows: Look for DLL in script directory Loading DLLs through ctypes on Windows is a mess. ctypes looks in PATH, which is different from the Windows built-in DLL loading system. By default ctypes looks next to python.exe, but you might not want to install python script dependencies next to the system-wide python interpreter. This commit adds a fallback looking for mpv-1.dll in the same directory the mpv.py script is placed in to allow people to use python-mpv with a minimum in configuration. You can still control loading behavior through PATH. For details on this, consult the following stackoverflow answer: https://stackoverflow.com/a/23805306
2019-12-02Fix Python 3.5 compatibilityjaseg1-1/+1
2019-12-01Add stream protocol handlingjaseg1-4/+261
This allows you to directly feed bytes into mpv without going through a file, FIFO etc. first. The new API is: @player.register_stream_protocol(name) @player.python_stream(name, size) @player.python_stream_catchall See their docstrings for their usage.
2019-11-26key bindings: Introduce key char parameterjaseg1-4/+4
Adapt key binding script message handling to be compatible with the new key char parameter introduced upstream in https://github.com/mpv-player/mpv/commit/21f2468d67e11eff7ede0d85fa6f4ab5c4f7de84 This change is backwards-compatible. With older mpv versions this parameter will be None.
2019-11-10Use stride//4 rather than the returned image wdfaker1-1/+1
As per discussion on the mpv issue https://github.com/mpv-player/mpv/issues/7076 to handle the screenshot-raw when vf cropping filters are in use.
2019-02-07fix: getProcAddr function should return a function or 0cosven1-1/+1
2018-07-25command: fix default show-text duration param valuejaseg1-1/+1
The mpv manpage seems to be wrong here. A look at mpv's command.c show that -1 works fine here.
2017-12-25Refactor node_cast_value to use large if/elif instead of dict lookupjaseg1-12/+25
2017-12-24Fix MpvNode logic to use pröper unionsjaseg1-27/+40
...instead of lots manual ctypes pointer casting
2017-09-18Fixed TypeError: _handle_key_binding_message() signature incompatibility ↵Vilius Grigaliūnas1-1/+1
with mpv < v0.15.0 key-binding message has key name parameter only since mpv version 0.15.0 (as stated in manual), therefore trying to bind keys with earlier versions results in TypeError: _handle_key_binding_message() missing 1 required positional argument: 'key_name'. This change makes this argument optional and default to None.
2017-09-14Nicer API names for add/multiply/cycle propertyjaseg1-7/+7
add: _add_property -> property_add multiply: _multiply_property -> property_multiply cycle: _cycle_property -> cycle
2017-09-14Wrap all docstrings to 120 char line widthjaseg1-150/+91
This is to stay consistent with everything else.
2017-09-13Reformat doctrings to follow PEP 257 and use reStructuredTextRaphael McSinyx1-192/+228
2017-09-13Fix add, cycle and multiply command.Raphael McSinyx1-4/+14
2017-08-21Add on_key_pressjaseg1-1/+31
2017-08-20Fix key binding registration for bound methods, add unit testsjaseg1-9/+10
2017-08-20Fix window dragging while using custom key bindingsjaseg1-1/+1
closes #45
2017-08-06mpv, mpv-test: Fix vim mode linesjaseg1-2/+1
2017-08-06Restore compatibility with older libmpv versionsjaseg1-1/+1
At least v0.26.0 also works with the unfixed version
2017-08-06mpv.py: Un-break property write accessjaseg1-9/+19
2017-08-03Add pillow-based screenshot_raw commandjaseg1-0/+11
2017-08-03Move to fully FORMAT_NODE-based APIjaseg1-325/+145
This will break lots of stuff. * Use MPV_FORMAT_NODE mostly everywhere * Dynamically discover properties instead of using a static list * Modify encoding handling to be more versatile
2017-08-03Fixes for libmpv v0.26.0jaseg1-0/+7
2017-08-02mpv module: Remove load_luajaseg1-5/+0
It wouldn't work on all systems anyway due to differing names for liblua ("liblua.so", "liblua-5.1.so" etc.) and also doesn't seem to be necessary anymore.
2017-08-02MPV constructor: Add loglevel argumentjaseg1-4/+3
2017-07-23Fix register_event_callback to work with methodsjaseg1-1/+0
2017-07-13Remove debug hack accidentially left in the codejaseg1-1/+1
2017-07-13Fix message handler registration and advanced README examplejaseg1-2/+1
2017-07-03Make compatible with libmpv 0.22.0jaseg1-10/+7
2017-07-03Add support for string-array optionsjaseg1-11/+65
2017-05-26mpv-test: Fix some tests, add property observer decorator testjaseg1-4/+3
Also fix ass-style-override
2017-05-21Fix `unobserve_property` RuntimeErrorMatt Deacalion Stevens1-2/+9
2017-05-20Fix typo in register_key_bindingjaseg1-1/+1
2017-05-11Add property observer format overridejaseg1-11/+20
2017-05-10BREAKING: Move property observation API to NODE formatjaseg1-43/+24
2017-05-10Add documentation and polish handler registrationjaseg1-50/+246
2017-05-10MPV.event_callback: Allow str event type namesjaseg1-1/+6
2017-05-10Update properties for current upstream masterjaseg1-7/+16
2017-05-10Add OSD property accessjaseg1-2/+9
2017-05-10Add callback/message handler decoratorsjaseg1-1/+20
2017-05-07Organize convenience functionsjaseg1-7/+7
2017-05-07Add playlist_append porcelainjaseg1-0/+3
2017-05-07Add license headerjaseg1-0/+18
2017-05-06Add playlist_filenames propertyHans Ole Hatzel1-0/+4
Closes #21
2017-01-06Simplify initialization logic somewhatjaseg1-3/+1
2017-01-06Make sure _mpv_initialize is called before _mpv_terminate_destroyFrechdachs1-4/+8
2017-01-04Make so/DLL loading more robustjaseg1-2/+8
* Print a proper error message if shared object not found on unix * Abide by local conventions and look for DLL in script's directory on windows
2016-11-23Clarify event thread handling in the READMEjaseg1-5/+8
2016-09-15Fix MPV.terminate so it can be called from event handlersjaseg1-5/+11
2016-08-20Pimp loadfile to accept per-file optionsjaseg1-2/+6