-
Notifications
You must be signed in to change notification settings - Fork 413
miracle sinkctl
Is a controller connected to miracle-wifid which selects interface to use and manage RSTP communication, program to play audio/video screening and UIBC (input on source from sink) interaction.
$ miracle-sinkctl --help
miracle-sinkctl [OPTIONS...] ...
Control a dedicated local sink via MiracleCast.
-h --help Show this help
--help-commands Show avaliable commands
--version Show package version
--log-level <lvl> Maximum level for log messages
--log-journal-level <lvl> Maximum level for journal log messages
--gst-debug [cat:]lvl[,...] List of categories an level of debug
--audio <0/1> Enable audio support (default 1)
--scale WxH Scale to resolution
-p --port <port> Port for rtsp (default 1991)
--uibc Enables UIBC
-e --external-player Configure player to use
--res <n,n,n> Supported resolutions masks (CEA, VESA, HH)
default CEA 0000001F
default VESA 00000003
default HH 00000000
--help-res Shows avaliable values for res
You need to sum them in hex, so to support only 5 first resolutions CEA
01+02+04+08+10=1F
e.g:
miracle-sinkctl --res 1F,00,00
If you need to support only 1920x1080@25 CEA
e.g:
miracle-sinkctl --res 1000,00,00
$ miracle-sinkctl --help-res
CEA resolutions:
0 00000001 640x 480@60
1 00000002 720x 480@60
2 00000004 720x 480@60
3 00000008 720x 576@50
4 00000010 720x 576@50
5 00000020 1280x 720@30
6 00000040 1280x 720@60
7 00000080 1920x1080@30
8 00000100 1920x1080@60
9 00000200 1920x1080@60
10 00000400 1280x 720@25
11 00000800 1280x 720@50
12 00001000 1920x1080@25
13 00002000 1920x1080@50
14 00004000 1920x1080@50
15 00008000 1280x 720@24
16 00010000 1920x1080@24
VESA resolutions:
0 00000001 800x 600@30
1 00000002 800x 600@60
2 00000004 1024x 768@30
3 00000008 1024x 768@60
4 00000010 1152x 854@30
5 00000020 1152x 854@60
6 00000040 1280x 768@30
7 00000080 1280x 768@60
8 00000100 1280x 800@30
9 00000200 1280x 800@60
10 00000400 1360x 768@30
11 00000800 1360x 768@60
12 00001000 1366x 768@30
13 00002000 1366x 768@60
14 00004000 1280x1024@30
15 00008000 1280x1024@60
16 00010000 1440x1050@30
17 00020000 1440x1050@60
18 00040000 1440x 900@30
19 00080000 1440x 900@60
20 00100000 1600x 900@30
21 00200000 1600x 900@60
22 00400000 1600x1200@30
23 00800000 1600x1200@60
24 01000000 1680x1024@30
25 02000000 1680x1024@60
26 04000000 1680x1050@30
27 08000000 1680x1050@60
28 10000000 1920x1200@30
HH resolutions:
0 00000001 800x 480@30
1 00000002 800x 480@60
2 00000004 854x 480@30
3 00000008 854x 480@60
4 00000010 864x 480@30
5 00000020 864x 480@60
6 00000040 640x 360@30
7 00000080 640x 360@60
8 00000100 960x 540@30
9 00000200 960x 540@60
10 00000400 848x 480@30
11 00000800 848x 480@60
external-player option allows to change the player used by miraclecast. Is a wrapper that receives the params avaliable on miraclecast. You can create yours and play stream as you want. See an example wrapping vlc
RUN="vlc rtp://@:$PORT"
https://github.com/albfan/miraclecast/blob/master/res/miracle-vlc#L66
Some implementations extend miracast protocol (see Microsoft extension) Through miraclecast ini file you can extend protocol to provide extra parameters needed:
[sinkctl]
extends.<key>=<value>
example:
https://github.com/albfan/miraclecast/blob/master/res/sinkctl.protocol-extension.example