python模块、服务器和实用程序来控制绿色屏幕。

greenscreen-control的Python项目详细描述


一个简单的模块、命令行实用程序和TCP服务器,用于无头控制 GreenScreen安装和一组 镀铬。控制将绿色屏幕频道分配给 Chromecast使用绿屏API,然后可以开始/停止铸造 一种特殊的颜色。

需要工作的GreenScreen安装。

应用程序ID

在这些说明中,$appid是 Google Cast Developer Console。这个遗嘱 已作为GreenScreen的一部分设置 安装。

使用命令行实用程序

在厨房色度表上设置闭路电视频道:

$ greenscreen_control -c CCTV set-channel Kitchen

开始在chromecast上投射给定的appid:

$ greenscreen_control -a $APPID cast Kitchen

停止在厨房镀铬层上浇铸:

$ greenscreen_control stop-cast Kitchen

可用参数:

usage: greenscreen_control_cli.py [-h] [-g GREENSCREEN_SERVER] [-a APPID]
                                  [-c CHANNEL] [-l {ERROR,WARNING,INFO,DEBUG}]
                                  [-r TRIES] [-t TIMEOUT] [-w RETRY_WAIT]
                                  {set-channel,cast,stop-cast} chromecast

positional arguments:
  {set-channel,cast,stop-cast}
                        Command
  chromecast            Chromecast name

optional arguments:
  -h, --help            show this help message and exit
  -g GREENSCREEN_SERVER, --greenscreen_server GREENSCREEN_SERVER
                        GreenScreen server:port
  -a APPID, --appid APPID
                        Chromecast Greenscreen App ID
  -c CHANNEL, --channel CHANNEL
                        GreenScreen channel to set
  -l {ERROR,WARNING,INFO,DEBUG}, --loglevel {ERROR,WARNING,INFO,DEBUG}
                        Logging level
  -r TRIES, --tries TRIES
                        Chromecast connection tries. Default is infinite.
  -t TIMEOUT, --timeout TIMEOUT
                        Chromecast socket timeout seconds. Default is 30.
  -w RETRY_WAIT, --retry_wait RETRY_WAIT
                        Seconds to wait between Chromecast retries. Default is
                        5.

启动服务器

启动一个简单的TCP服务器(默认端口4995)来控制绿色屏幕和 镀铬铸件。

$ greenscreen_control_server -l INFO -a $APPID

可用参数:

usage: greenscreen_control_server.py [-h] [-g GREENSCREEN_SERVER] [-a APPID]
                                     [-c CHANNEL]
                                     [-l {ERROR,WARNING,INFO,DEBUG}]
                                     [-r TRIES] [-t TIMEOUT] [-w RETRY_WAIT]
                                     [-p PORT]

optional arguments:
  -h, --help            show this help message and exit
  -g GREENSCREEN_SERVER, --greenscreen_server GREENSCREEN_SERVER
                        GreenScreen server:port
  -a APPID, --appid APPID
                        Chromecast Greenscreen App ID
  -c CHANNEL, --channel CHANNEL
                        GreenScreen channel to set
  -l {ERROR,WARNING,INFO,DEBUG}, --loglevel {ERROR,WARNING,INFO,DEBUG}
                        Logging level
  -r TRIES, --tries TRIES
                        Chromecast connection tries. Default is infinite.
  -t TIMEOUT, --timeout TIMEOUT
                        Chromecast socket timeout seconds. Default is 30.
  -w RETRY_WAIT, --retry_wait RETRY_WAIT
                        Seconds to wait between Chromecast retries. Default is
                        5.
  -p PORT, --port PORT  TCP server port number

服务器协议

TCP服务器使用简单的基于行的协议,很容易从 脚本、cron或家庭自动化。

将“CCTV”频道分配给“厨房”Chromecast,并开始播放 信息:

chromecast=Kitchen,channel=CCTV,cast=1

将“闭路电视”频道分配给“厨房”彩排,不要播放 (为将来的铸造做准备,或者假设已经铸造):

chromecast=Kitchen,channel=CCTV

转换当前分配的频道(无论是什么):

chromecast=Kitchen,cast=1

停止铸造:

chromecast=Kitchen,cast=0

默认情况下启动服务器

使用附带的greenscreen_control.service将服务器作为systemd启动 单位。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在sqlite数据库中保存特定列的历史记录   java如何更改/更新timeseriechart名称(JFreeChart)   java如何将整数转换为可绘制的   汇编什么解释Java的字节码   java查找已编译的类版本号   我应该什么时候在ColdFusion应用程序中使用Java?   java当一个实体的两个字段为(unique=true)时,如何处理JPA异常?   java为什么在所有其他实例都正确的情况下返回错误的布尔值?   java Hibernate每次都准备语句   java停留在平均字长上   对Java和日语字符进行编码   java如何将导致异常的方法的错误消息传递给侦听器中的onTestFailure方法   java代码没有打印结果   java为什么私有内部接口的方法必须是公共的?   休眠发生错误。有关详细信息,请参阅错误日志。JAVAlang.NullPointerException