1
0
Fork 0
mirror of https://github.com/albfan/miraclecast.git synced 2025-03-09 23:38:56 +00:00
Commit graph

62 commits

Author SHA1 Message Date
Alberto Fanjul
43505ab3dd Allow to override/extend the request parameters 2022-05-28 10:46:44 +02:00
Alberto Fanjul
e816de93d3 Allow auto commands with any number of parameters 2022-05-28 10:43:12 +02:00
Alberto Fanjul
c42624885b simplify pass request options 2022-05-26 20:55:51 +02:00
Edward Betts
3ab7d5913f Correct spelling mistakes 2022-04-12 09:22:13 +02:00
Alberto Fanjul
a13c1b7c33 Do not fail stopping existing links 2021-01-03 19:45:49 +01:00
Alberto Fanjul
62c5b8daa8 Do not fail if peers are found before links
After discover peers, a miracle-sinkctl restart can lead to peers
without links. Just ignore that
2021-01-03 19:45:05 +01:00
Alberto Fanjul
3b3531de5c Allow to set friendly name even if unmanaged 2021-01-03 14:04:38 +01:00
Alberto Fanjul
4111333521 Set readline as required package
autotools already set it, but cmake and meson no.
2019-08-27 11:01:22 +02:00
albfan
8151bb8cbd whitespace 2018-09-30 12:41:40 +02:00
Xu Fasheng
8b76e3c212 Make miracle-wifid conexists with other network tools
The new option --lazy-managed will let miracle-wifid don't managed the
links automatically. Instead, the link will be managed only when the new
DBus property Managed was set to true. So this will be possible that
miracle-wifid could be coexists with other network tools like
networkmanager.

For example, unmanage the device in networkmanager with setting the DBus
property org.freedesktop.NetworkManager.Device.Managed to false and
manage it in miracle-wifid with setting
org.freedesktop.miracle.wifi.Link.Managed to true, then both them could
works and don't need to kill each other.

Besides, there is new command named make-managed in miracle-wifictl and
miracle-sinkctl.

closes #135, #75
2018-09-21 13:41:16 +02:00
albfan
1d01ae2117 sink: Enable all resolutions by default 2018-02-22 22:30:09 +01:00
Derek Dai
6b5907ad45 Add meson build system
Use it as:

    $ meson build
    $ cd build
    $ ninja build
    $ ninja test
    $ sudo ninja install
2017-04-14 11:32:27 +02:00
Eric Nelson
fe9a39bee8 miracle-sinkctl: don't use readline if no stdin
Signed-off-by: Eric Nelson <eric@nelint.com>
2017-04-08 09:53:36 +02:00
albfan
c3f6b7f683 Fix cmake compilation for ini files 2017-04-07 21:49:43 +02:00
albfan
b8de12cab3 Avoid config stdin if not a tty
Allow to run miracle-sinkctl as a service

relates to #98
2017-04-05 07:51:11 +02:00
albfan
04a1ec8aa3 Ini files for miracle-wifid
Honor ~/.miraclecast or ~/.config/miraclecastrc

Properties avaliable:
- wifid: log-level
- sinkctl: external-player, rstp-port, log-level, log-journal-level, autocmd
- wifictl: log-level, journal-log-level

Command line has always higher priority over ini files

fixes #113
2017-04-04 22:00:39 +02:00
albfan
a9da0067e3 Improve autocompletion
Standardize help commands
Add autocompletion for short arguments
Install autocompletion
2017-03-26 09:31:32 +02:00
albfan
3628f789b4 Add external player config
Allow to run custom player. It will be run within a wrapper that
respect -p/--port, option at least

fixes #87
2017-03-25 12:48:04 +01:00
albfan
016159bb1e Check running as root
Detect running with elevated privileges to access dbus

fixes #89
2017-03-25 11:55:28 +01:00
Alberto Fanjul
e5795edd04 Read UIBC capability in raw mode
Some devices send its UIBC capabilities with spaces. Read in raw mode to parse port correctly
2016-10-28 11:37:16 +02:00
albfan
cedfeeebe1 Debug GStreamer execution
Allow to config gstreamer log level
2016-10-23 10:20:12 +02:00
albfan
472fbf4a24 Check source UIBC capability
If source has no UIBC capability don't try to connect UIBC controller,
and listen UIBC setting to disable UIBC

relates to #115
2016-10-23 09:46:02 +02:00
albfan
5e93ad0638 Fix compilation warnings 2016-10-23 04:27:17 +02:00
albfan
412ce067b6 Use resolution provided to resize viewer 2016-07-23 19:15:38 +02:00
albfan
1e69dd6dae UIBC support
Basic support for UIBC (single mouse events and key events)

 - Option --uibc on miracle-sinkctl to enable it
 - Option --log-journal-level to see player execution on journalctl
 - Controller for uibc miracle-uibcctl
 - Player based on PyGtk to receive and communicate mouse and keyevents

closes #57
2016-07-02 15:47:15 +02:00
albfan
4637409d0b relay on PATH to find executables 2016-07-02 15:22:13 +02:00
albfan
c94be167c8 open UIBC connection
relates to #57
2016-04-02 13:15:38 +02:00
albfan
117ed2071b Parse text log level
closes #42
2015-08-30 14:53:12 +02:00
albfan
b0f985069c change callback interface
resolves #30
2015-07-04 05:06:26 +02:00
albfan
8484a126be fix cmake compilation
closes #7
2015-04-11 23:11:52 +02:00
albfan
640f731d44 Merge branch 'agusakov' 2015-03-30 13:40:52 +02:00
Andrey Gusakov
1a86754573 Show timeout error
Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
2015-03-30 12:06:38 +02:00
Andrey Gusakov
c1b476146c RTSP: reply with only requested parameters
Some peers (like Nexus 5 and Nexus 7) send empty GET_PARAMETER
request during streaming. Seems it just some kind of ping. Do not
include unnecessary information in reply.

Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
2015-03-30 12:06:38 +02:00
Andrey Gusakov
62460a9e89 RTSP: parse SET_PARAMETER resolution
Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
2015-03-30 12:06:38 +02:00
Andrey Gusakov
c6334a7509 Allow to set resolution mask from command line
Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
2015-03-30 12:06:38 +02:00
Andrey Gusakov
9be88e46bf Add WFD defines and helpers
Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
2015-03-30 12:06:38 +02:00
Andrey Gusakov
0d54cd4e0b Separate go_neg_request and provision_discovery
Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
2015-03-30 12:06:38 +02:00
Andrey Gusakov
16d90afcd2 Remove unnecessary close body and close head
Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
2015-03-30 12:06:37 +02:00
albfan
cda6da3144 Allow virtual path on cmake
Remove fixed paths on CMake whom broke virtual path compilation

Relates to #7 but still not resolve it.
2015-03-22 11:25:19 +01:00
albfan
2e933497ff cmake configuration 2015-03-13 07:54:19 +01:00
albfan
f884dd858c split monolithic Makefile.am to follow autotools standards 2015-03-08 22:16:57 +01:00
Alberto Fanjul
931cbea770 include stdio.h 2014-09-09 12:16:12 +02:00
Andrey Gusakov
5fc9133a60 sink: fix session ID extraction
Devices sometimes report sessions followed by ";timeout=..". Cut this off.

Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2014-09-03 08:44:40 +02:00
Andrey Gusakov
e81f5e2833 sink: use RTSP_CODE_OK
Avoid magic numbers when creating rtsp responses, use RTSP_CODE_*
constants instead.

Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2014-09-03 08:11:53 +02:00
Andrey Gusakov
dbf3972619 sink: add arguments to enable/disable audio and scaling
Forward the --audio and --scale arguments to our gst-spawn helper and
parse them via bash for now.

Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2014-09-03 08:11:13 +02:00
Andrey Gusakov
e7aa531dca sink: move GST pipeline construction to bash script
The sinkctl tool is currently a hack to make Miracast sinks work. The
embedded gst-launch invocation is kinda ugly to handle. Move it into a
bash-script so we can experiment a bit more with different pipelines.
Ultimatively, the goal is obviously to make this work as its own gst
element.

Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2014-09-03 08:11:03 +02:00
David Herrmann
b7d04aa20d sink: exit header/body in case rtsp_message_readv() fails
rtsp_message_readv() is a convenience function. If one of the values to be
read fails, it does not restore the previous situation. Therefore, handle
that in sinkctl in case we cannot read a value.

Reported-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2014-08-15 15:53:25 +02:00
Thomas Hindoe Paaboel Andersen
f489b45f9a ctl: remove unused variables
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2014-08-08 15:15:43 +02:00
Andrey Gusakov
60e2254e9e ctl: save wfd_presentation_URL from M4
M6 M7 messages should use URL from wfd_presentation_URL of M4. Parse it
during set_parameter and use it in further requests instead of a
hard-coded URL.

Signed-off-by: Andrey Gusakov <adnrey.gusakov@cogentembedded.com>
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2014-08-05 13:30:35 +02:00
Andrey Gusakov
40484a022a ctl: divide M6 (SETUP) and M7 (PLAY) stages
In M7 message session ID should be included. Session ID is returned in M6
response. So we should wait for M6 response.

Signed-off-by: Andrey Gusakov <adnrey.gusakov@cogentembedded.com>
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2014-08-05 13:21:02 +02:00