Oystein Kristoffer Tveit
2736d1d7ad
wrap event data in `Option`
2024-05-03 22:29:28 +02:00
Oystein Kristoffer Tveit
878cebbc9f
use usize for request ids
2024-05-03 22:29:27 +02:00
Oystein Kristoffer Tveit
cb0921144d
rework error messages
2024-05-03 22:29:25 +02:00
Oystein Kristoffer Tveit
7eec34ce00
split property parsing from event parsing:
...
Build and test / build (pull_request) Successful in 1m55s
Details
Build and test / check (pull_request) Successful in 1m52s
Details
Build and test / docs (pull_request) Successful in 2m21s
Details
Build and test / test (pull_request) Successful in 4m9s
Details
Build and test / check (push) Successful in 1m55s
Details
Build and test / build (push) Successful in 1m57s
Details
Build and test / docs (push) Successful in 2m43s
Details
Build and test / test (push) Successful in 5m33s
Details
High-level properties are now optional, considering there are about a
thousand of them to parse. The high-level properties are a few chosen
ones that I suspect might be useful for most people, with catch-all enum
variants for the less common ones.
2024-05-02 21:16:23 +02:00
Oystein Kristoffer Tveit
f5ca2ebde9
add more tests, fix event/command response race condition
Build and test / check (pull_request) Successful in 1m56s
Details
Build and test / build (pull_request) Successful in 1m57s
Details
Build and test / docs (pull_request) Successful in 2m30s
Details
Build and test / test (pull_request) Successful in 4m0s
Details
Build and test / check (push) Successful in 1m55s
Details
Build and test / build (push) Successful in 1m56s
Details
Build and test / docs (push) Successful in 3m2s
Details
Build and test / test (push) Successful in 3m59s
Details
2024-05-01 23:45:42 +02:00
Oystein Kristoffer Tveit
64bf743c6c
clean: add docstrings, move a few things around
2024-05-01 22:22:45 +02:00
Oystein Kristoffer Tveit
7e20ff9b56
api: split into several files
2024-04-30 17:39:33 +02:00
Oystein Kristoffer Tveit
3be7b2bda6
cargo fmt + clippy
Build and test / check (push) Successful in 1m55s
Details
Build and test / build (push) Successful in 1m59s
Details
Build and test / test (push) Successful in 2m30s
Details
2024-04-30 02:13:57 +02:00
Oystein Kristoffer Tveit
75645c5880
api: move highlevel functions into extension
2024-04-30 02:07:08 +02:00
Oystein Kristoffer Tveit
aacde5df12
Create event stream
2024-04-30 02:07:04 +02:00
Oystein Kristoffer Tveit
deb45a4570
Make entire project async
...
This moves all communication with Mpv's unix socket into another tokio
task, and uses message passing through clonable mpsc channels to receive
commands to execute, and to send responses.
2024-04-19 00:59:22 +02:00
Oystein Kristoffer Tveit
f5c9674b78
Misc: refactor + serde serialization derives
...
- Split content into more files
- Refactor TypeHandler impls
- Add serialization traits to public structs/enums
2024-04-16 23:11:19 +02:00
Oystein Kristoffer Tveit
6d2575b940
Add `Clone` and `Copy` to several public structs
2024-04-16 20:54:17 +02:00
Jonas Frei
9e3ec12894
Generate JSON string with serde_json
...
Closes #3
2023-08-02 11:15:37 +02:00
Jonas Frei
ff7a7b7c9d
Added mpv commands script-message and script-message-to
2023-07-31 20:19:03 +02:00
Jonas Frei
cea343cd3b
Merge branch 'add-client-message-event' into 'master'
...
Add support for `client-message` events
See merge request mpv-ipc/mpvipc!4
2023-07-31 07:30:06 +00:00
naglis
f023be48f7
Use `cycle` command for toggling play/pause
...
This way we do not need to get the `pause` property first.
2023-07-31 00:47:04 +03:00
naglis
83abe0bf62
Add support for `client-message` events
...
These events are issued [1] when clients communicate to each other using
`script-message` [2] and `script-message-to` [3] commands.
[1]: https://mpv.io/manual/stable/#command-interface-client-message
[2]: https://mpv.io/manual/stable/#command-interface-script-message
[3]: https://mpv.io/manual/stable/#command-interface-script-message-to
2023-07-30 23:14:20 +03:00
jole
9fde540089
do not panic on message without event field
...
intead discard it and try again
2022-07-19 21:27:02 +02:00
jole
fded248b7e
minor cleanup: run_mpv_command()
2022-07-19 21:07:20 +02:00
jole
71b148cce4
auto formatting
2022-07-19 21:06:47 +02:00
jole
be2132735b
remove comments
2022-07-19 21:06:34 +02:00
jole
cc9f2cae53
fix potential bug
...
could potentially return MpvError("success")
2022-07-19 21:00:30 +02:00
jole
fde2bce07d
clean up get_mpv_property_string()
2022-07-19 20:54:44 +02:00
jole
8b5d3bc0fd
clean up listen()
2022-07-19 20:34:11 +02:00
Jonas Frei
442f121b2e
Using _isize_ instead of _usize_ for observation as per mpv documentation
2022-07-10 20:59:52 +02:00
Jonas Frei
b21f0c804b
Added Observe/Unobserve MpvCommand.
...
Closes #2
2022-07-10 15:23:58 +02:00
Christoph Herzog
9552cad8ef
Add method to call custom commands
2019-10-30 01:13:52 +01:00
Christoph Herzog
8e47f52803
Implement std::error::Error for Error
2019-10-30 01:11:44 +01:00
Jonas Frei
cb5ad88544
Added list of supported commands as Enum. Cleaned up comments. Pushed version to 1.1.8
2019-06-24 20:11:58 +02:00
Jonas Frei
5b28c95a0a
Included observation ID in PropertyChange event
2019-06-20 06:00:44 +02:00
Emmanuel Gil Peyrot
b0a62f25eb
Run rustfmt on the entire crate
2019-06-19 00:51:11 +02:00
Emmanuel Gil Peyrot
2911b9bb49
Simplify user code by parsing properties ourselves
2019-06-19 00:31:17 +02:00
Emmanuel Gil Peyrot
8f105eb41f
Add a logging system, using the log crate
2019-06-18 18:34:23 +02:00
Emmanuel Gil Peyrot
c429d88d1b
Property id is an isize, not a usize, and can be absent if 0
2019-06-18 18:32:45 +02:00
Emmanuel Gil Peyrot
939541599f
Remove .unwrap() from examples, they are bad practice
2019-06-18 18:05:37 +02:00
Emmanuel Gil Peyrot
244a34057f
Switch to edition 2018
2019-06-18 17:34:20 +02:00
Emmanuel Gil Peyrot
461a87d377
Add a Debug implementation for Mpv
2019-06-18 17:34:10 +02:00
Emmanuel Gil Peyrot
a14b02fb10
Fix documentation tests, with a hidden use mpvipc::Mpv
2019-06-18 17:33:34 +02:00
Emmanuel Gil Peyrot
a43401b6c4
Replaced trim_right() with trim_end(), as the former is deprecated
2019-06-18 17:32:42 +02:00
Jonas Frei
6133122536
Switch from Github to GitLab
2017-07-14 01:21:09 +02:00
Jonas Frei
c808c2171c
Changed listen functions not to use Sender,Reader but to return a Event-Result. Other minor improvements.
2017-06-17 13:03:27 +02:00
Jonas Frei
1916f60dd6
Added the PropertyChange event. Implemented all variantes of MpvDataType. Documented event_listen
2017-06-06 23:08:27 +02:00
Jonas Frei
ed9f35ba5d
Added Mpv type, added Event enum, removed Command trait
2017-06-01 19:30:52 +02:00
Jonas Frei
249743158d
Corrected documentation
2017-05-31 19:36:12 +02:00
Jonas Frei
57d7226373
Replaced string errors with a proper Error struct. Changed run_command arguments to a slice instead of vector.
2017-05-31 19:32:46 +02:00
Jonas Frei
ea0e60097d
Keeps the socket open for the entire lifetime of the Mpv struct. Now using channels to inform about new events (listen command). Added Readme
2017-05-29 17:54:12 +02:00
Jonas Frei
e797bd871a
Changed listener to work with mpsc
2017-05-24 00:13:23 +02:00
Jonas Frei
7fffe9b1cd
Initial commit
2017-05-22 18:31:20 +02:00