编辑:这篇文章是Linux中国公开投稿节目收到的第一篇投稿,投稿作者是中学生,我们会为他点赞的!
一般来说,Android设备和Windows设备投屏使用miracast协议,但该协议要求网卡支持p2pwifi,在Linux上,大多数网卡驱动程序不支持p2pwifi。
所以我用Python FFmpeg DLNA完成了在Linux上的屏幕程序。这个方案的缺点是延迟有点大。
设置
下一步是如何实现的。
请先安装这个DLNA库。
安装Pip3的dlna
然后使用pactl查找“显示器源”(中文输出)或“显示器源”(英文输出)。
Pactl list sinks
输出示例:
Sink #0
State: RUNNING
Name: al
Description :系列17h (models 10h-1fh)高清音频控制器speaker headphones
驱动程序:模块-al
sample specification : s16le 2ch 44100hz
Channel map : front-left、front-right
Owner Module: 9
Mute:常开触点
volume : Front-left : 53814/82%/-5.14 DB、Front-RIGHT 3360 53814/82%/-5.14 DB
平衡0.00
基本卷: 65536/100%/0.00db
显示器源: al.monitor
Latency : 16676 usec、configured 16000 us.
然后创建CGI脚本。首先。设置要放置脚本的目录。
Mkdir屏幕播客
Mkdir screencast/cgi-bin
然后直接通过cat创建脚本。
Cat screencast/cgi-bin/
#!/bin/bash
Echo '内容-类型3360视频/x-flv '
回声
FFM peg-f pulse-I-f x 11 gra b-I :0-vcodec h 264 _ NV enc pipe : flv
Eof
用上面获取的监视器源替换文件中的。
设置执行权限。
Chmod x screencast/cgi-bin/
注:如果没有Nvidia显卡或要使用其他硬件加速,请用相应的编码方案替换编码方案h264_nvenc。建议不要使用软解决方案。延迟很高。
需要
投屏
屏幕时,首先启动本地web服务器。
Cd屏幕播客
python 3-m-CGI 9999
然后找到DLNA设备并复制该位置后面的URL。
Dlna设备
输出示例:
=Device 1:
{
位置' : ';而且,
主机' :' 192.168.3.118 ',
Friendly_name': 'Kodi '、
.
查找Linux计算机的Linux IP地址:
Ip addr
输出示例:
3: wlp2s0:欢迎屏幕命令如下:
请相应地更改Dlna play -d中的和参数。这里我更换的命令如下。
dlna play-d http://192 . 168 . 3 . 1173360999/CGI-bin/
然后在电视上安装接收屏幕,各种电视设备设置屏幕的方式不同,请参考具体的设备说明。(大卫亚设)。
等等,视频会出现在电视上。屏幕投影效果如下:
作者简介:
卡尔文林:一个普通的深圳中学生。
Via:
作者:编辑卡尔文林:wxy
本文由投稿人向Linux中国公共投稿计划投稿,利用CC-BY-SA协议发表,Linux中国荣誉发表。
1.《【SA915H怎么放电视】Linux屏幕在Linux系统中的使用方法》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《【SA915H怎么放电视】Linux屏幕在Linux系统中的使用方法》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/why/3063944.html