Commit graph

142 commits

Author SHA1 Message Date
jaseg
5a1a2734f2 Add __version__ field to module
Closes #248.
2023-03-30 13:57:01 +02:00
jaseg
7343604f10 Add tests and fix error handling for stream callbacks 2023-02-26 20:15:27 +01:00
jaseg
f9a655e7ca Add cross-thread exception handling for event loop and stream callbacks 2023-02-26 19:47:20 +01:00
jaseg
6625a3900d Update license header with dual-license information
Closes #206
2023-02-26 13:07:54 +01:00
jaseg
2330fcd416 Fix typo in repr format string
fixes #231
2022-08-16 16:44:27 +02:00
Elias Müller
91422de05a Fix show_text level default parameter 2022-07-11 12:37:36 +02:00
Naglis Jonaitis
20ec2a74b8 Fix observe_property() docstring
1. Fix decorator name - the decorator for property observation handlers is `@property_observer()`.
2. Fix handler's unregistration method name
3. Fix handler function signature - the signature is ``fun(property_name, new_value)`` and we can't have a bare `*` with no names after it.
4. Fix undefined variable in the example
2022-06-17 00:13:21 +02:00
James Gerity
4a8554319f Error for known-incompatible libmpv (closes #223) 2022-06-17 00:10:01 +02:00
jaseg
bd46633641 Add cancel handling to streams 2022-04-24 13:43:44 +02:00
jaseg
5f4cf600b5 Add event queue overflow handling 2022-04-24 13:43:44 +02:00
jaseg
3cb1196621 Finish event infrastructure rework. 2022-04-22 23:24:10 +02:00
jaseg
85ad2a6aa6 Finish rewriting event infrastructure 2022-04-22 23:18:48 +02:00
jaseg
c90a5f692f Continue reworking event infrastrucutre.
Note: We do not decode property values by default anymore.
2022-04-22 23:01:13 +02:00
jaseg
2d87c897e2 Update event wrapper classes 2022-04-22 21:53:10 +02:00
jaseg
341f4c5c16 Remove deprecated libmpv API 2022-04-22 21:53:08 +02:00
jaseg
116c756fa4 add albumart arg to video_add 2022-04-22 21:52:51 +02:00
DepFA
0f48db6398
Remove MpvSubApi wrapper 2022-04-20 13:57:56 +01:00
DepFA
87559cde89
Remove dropped mpv-2 api methods. 2022-04-20 13:55:22 +01:00
jaseg
9fbe39d3b4 Add some useful input commands 2022-04-18 00:31:33 +02:00
jaseg
be1e78158a Add keyword argument command interface 2022-04-18 00:26:47 +02:00
jaseg
6cc0b23114 Update copyright headers 2022-04-18 00:00:19 +02:00
jaseg
607bd3ff12 Add missing new event types 2022-04-17 23:52:29 +02:00
jaseg
8d448d49f1 Add future-based async command API 2022-04-17 23:52:12 +02:00
Elias Müller
d28f135382 mpv.py: add default error handler for failed async commands 2022-04-17 22:51:06 +02:00
Elias Müller
107c563f8d mpv.py: add support for asynchronous commands 2022-04-17 22:51:06 +02:00
jaseg
e8c8736a1a Default to node_command and rename old command to string_command 2022-04-17 22:49:20 +02:00
Kira
2b3249a73d mpv.py: change mpv_detach_destroy to mpv_destroy 2022-04-17 22:42:40 +02:00
jaseg
c12e1ed8a1 porcelain: Add fancy wait_for_event/property future handling 2022-04-17 22:37:10 +02:00
jaseg
0cda09c628 Add timeouts and error forwarding to wait_for_{property,event} conditions 2022-03-26 14:23:04 +01:00
jaseg
518421a127 use daemon = True instead of setDaemon 2022-03-26 14:23:04 +01:00
Marcel Moreaux
b5f03dd2b7 Fix handling of c_void_p args in MpvRenderParam.__init__()
Handling of c_void_p args (x11_display, wl_display) was broken.
Added a case to correctly handle the c_void_p constructor case.
See https://github.com/jaseg/python-mpv/issues/169
2021-07-28 12:37:55 +02:00
hixz00
3105db35a4 mpv.py: update: Use ctypes.memmove to speed up 2021-01-19 18:59:59 +01:00
Dziqs
035e1db1db Fixing typo in keep_playlist causing NameError 2020-07-25 23:42:26 +02:00
jaseg
1f2b0058b3 mpv.py: terminate: Raise warning when called from event thread. 2020-07-19 22:34:24 +02:00
jaseg
e85342a147 mpv.py: add wait_for_shutdown 2020-07-19 22:33:56 +02:00
jaseg
d6840f800e mpv.py: add check_core_alive, check core in __getattr__, __setattr__ 2020-07-19 22:33:42 +02:00
jaseg
583f12ed63 mpv.py: add prepare_and_wait_for_property 2020-07-19 21:54:40 +02:00
jaseg
632a87af49 mpv.py: Update copyright date 2020-07-19 21:13:36 +02:00
jaseg
0ea4622fb7 mpv.py: Add docstrings to new additions to API 2020-07-18 14:28:46 +02:00
jaseg
846f2a65ae Sprinkle some thread safety over event loop, add *wait_for_event 2020-07-18 14:21:31 +02:00
jaseg
ad68ec5927 mpv.py: improve shutdown handling, replace wait_for_playback 2020-07-18 00:06:04 +02:00
jaseg
759b9701c3 mpv.py: add wait_until_paused, wait_until_playing 2020-07-16 19:28:33 +02:00
jaseg
7362f663c1 mpv.py: Add overlay support 2020-07-16 15:01:35 +02:00
jaseg
b68a03c9d0 mpv.py: add some missing commands 2020-07-16 13:02:14 +02:00
Louis-Philippe Véronneau
b4f5b10699 remove superfluous whitespaces 2020-07-15 22:03:37 +02:00
jaseg
c3eef35f59 Fix handling of dashed options in loadfile.
Add tests based on --sub-file. Also add a test for sub_add here.
2020-07-12 13:27:53 +02:00
jaseg
3c21d679da Initial libmpv/render.h mapping
For an example using this with GTK see:
https://gist.github.com/jaseg/657e8ecca3267c0d82ec85d40f423caa
2020-01-03 01:08:16 +01:00
jaseg
63f9b74247 Windows: Use cytpes.load_library to look for DLL 2019-12-04 09:48:16 +01:00
ripdog
62ef265e2d Allow mpv-1.dll to be placed in python script directory (#96)
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-03 23:47:47 +01:00
jaseg
c7a50aec38 Fix Python 3.5 compatibility 2019-12-02 12:32:33 +01:00