首页 碳资讯 dlna投屏怎么设置(如何在 Linux 下使用 DLNA 投屏)

dlna投屏怎么设置(如何在 Linux 下使用 DLNA 投屏)

dlna投屏怎么设置(如何在 Linux 下使用 DLNA 投屏)

设置

下面是如何实现。

先装这个 DLNA 库:

pip3install dlna

然后用pactl查找 “监视器信源”(中文输出) 或 “Monitor Source”(英文输出):

pactl listsinks

示例输出:

Sink#0State:RUNNINGName:alsa_output.pci-0000_05_00.6.HiFi__hw_Generic_1__sinkDescription:Family17h(Models10h-1fh)HDAudioControllerSpeaker+HeadphonesDriver:module-alsa-card.cSample Specification:s16le2ch44100HzChannel Map:front-left,front-rightOwner Module:9Mute:noVolume: front-left:53814/82%/-5.14dB,front-right:53814/82%/-5.14dBbalance0.00Base Volume:65536/100%/0.00dBMonitor Source:alsa_output.pci-0000_05_00.6.HiFi__hw_Generic_1__sink.monitorLatency:16676usec,configured16000us…

然后创建一个 CGI 脚本screen.flv。首先。建立放置该脚本的目录:

mkdirscreencast mkdirscreencast/cgi-bin

然后通过cat来直接创建该脚本:

cat screencast/cgi-bin/screen.flv #!/bin/bashecho”Content-Type:video/x-flv”echoffmpeg -f pulse -i -f x11grab -i :0 -vcodec h264_nvenc pipe:.flv eof

请用上面获得的监视器信源替换文件中的 。

并为它设置可执行权限:

chmod+x screencast/cgi-bin/screen.flv

注意:如果没有 Nvidia 显卡,或者要使用其他的硬件加速,请把编码方案h264_nvenc替换为相应的编码方案。不建议采用软解方式,延迟非常高。

投屏

需要投屏时,首先启动本地 Web 服务器:

cdscreencastpython3-m http.server –cgi 9999&

然后,找到你的 DLNA 设备,然后把location后面的 URL 复制下来:

dlnadevice

示例输出:

=> Device 1: { “location”: “http://192.168.3.118:1528/”, “host”: “192.168.3.118”, “friendly_name”: “Kodi”, …

找到你的 Linux 电脑的局域网 IP 地址:

ipaddr

示例输出:

3: wlp2s0:

启动投屏的命令如下:

dlnaplay -d

请相应替换其中的 和 参数,此处我替换后的命令是:

dlnaplay -d http://192.168.3.118:1528/ http://192.168.3.117:9999/cgi-bin/screen.flv

然后在你的电视上设置接受投屏,各种电视设备设置投屏方式不同,请参照具体设备说明。

稍等片刻,视频就会出现在电视上了。投屏效果如下:

dlna投屏怎么设置(如何在 Linux 下使用 DLNA 投屏)

热门文章

发表回复