日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
通過DLNA在Linux中投屏

DLNA投屏是一個非常高效實用的功能,也是眾多高端家用播放器必備功能之一。

創(chuàng)新互聯(lián)公司:從2013年成立為各行業(yè)開拓出企業(yè)自己的“網(wǎng)站建設(shè)”服務(wù),為上1000+公司企業(yè)提供了專業(yè)的網(wǎng)站設(shè)計、做網(wǎng)站、網(wǎng)頁設(shè)計和網(wǎng)站推廣服務(wù), 按需求定制制作由設(shè)計師親自精心設(shè)計,設(shè)計的效果完全按照客戶的要求,并適當(dāng)?shù)奶岢龊侠淼慕ㄗh,擁有的視覺效果,策劃師分析客戶的同行競爭對手,根據(jù)客戶的實際情況給出合理的網(wǎng)站構(gòu)架,制作客戶同行業(yè)具有領(lǐng)先地位的。

簡而言之,便是把手機或平板電腦(同時支持蘋果與安卓)中的界面,比如在線視頻、音樂軟件,直接通過播放器投射在電視機大屏幕上。

于是我用 Python + FFmpeg + DLNA 完成了一個在 Linux 下的投屏方案。這個方案的不足是延遲有點大。

設(shè)置

下面是如何實現(xiàn)。

先裝這個 DLNA 庫:

pip3 install dlna

然后用 pactl 查找 “監(jiān)視器信源”(中文輸出) 或 “Monitor Source”(英文輸出):

pactl list sinks

示例輸出:

Sink #0
 State: RUNNING
 Name: alsa_output.pci-0000_05_00.6.HiFi__hw_Generic_1__sink
 Description: Family 17h (Models 10h-1fh) HD Audio Controller Speaker + Headphones
 Driver: module-alsa-card.c
 Sample Specification: s16le 2ch 44100Hz
 Channel Map: front-left,front-right
 Owner Module: 9
 Mute: no
 Volume: front-left: 53814 /  82% / -5.14 dB,   front-right: 53814 /  82% / -5.14 dB
         balance 0.00
 Base Volume: 65536 / 100% / 0.00 dB
 Monitor Source: alsa_output.pci-0000_05_00.6.HiFi__hw_Generic_1__sink.monitor
 Latency: 16676 usec, configured 16000 us...

然后創(chuàng)建一個 CGI 腳本 screen.flv。首先。建立放置該腳本的目錄:

mkdir screencast
mkdir screencast/cgi-bin

然后通過 cat 來直接創(chuàng)建該腳本:

cat screencast/cgi-bin/screen.flv
#!/bin/bash
echo "Content-Type:video/x-flv"
echo

ffmpeg -f pulse -i    -f x11grab -i :0  -vcodec h264_nvenc  pipe:.flv
eof

請用上面獲得的監(jiān)視器信源替換文件中的 。

并為它設(shè)置可執(zhí)行權(quán)限:

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

注意:如果沒有 Nvidia 顯卡,或者要使用其他的硬件加速,請把編碼方案 h264_nvenc 替換為相應(yīng)的編碼方案。不建議采用軟解方式,延遲非常高。

投屏

需要投屏?xí)r,首先啟動本地 Web 服務(wù)器:

cd screencast
python3 -m http.server --cgi 9999&

然后,找到你的 DLNA 設(shè)備,然后把 location 后面的 URL 復(fù)制下來:

dlna device

示例輸出:

=> Device 1:
{
   "location": "http://192.168.3.118:1528/",
   "host": "192.168.3.118",
   "friendly_name": "Kodi",
...

找到你的 Linux 電腦的局域網(wǎng) IP 地址:

ip addr

示例輸出:

3: wlp2s0: 
  
    mtu 1500 qdisc noqueue state UP group default qlen 1000    link/ether 74:4c:a1:82:2e:3f brd ff:ff:ff:ff:ff:ff    inet 192.168.3.117/24 brd 192.168.3.255 scope global dynamic noprefixroute wlp2s0       valid_lft 58283sec preferred_lft 58283sec    inet6 240e:3b3:2ee3:9530:d005:e492:6243:9/128 scope global dynamic noprefixroute       valid_lft 6738sec preferred_lft 3138sec    inet6 240e:3b3:2ee3:9539:f289:6043:c56a:4e7b/64 scope global dynamic noprefixroute       valid_lft 7189sec preferred_lft 3589sec    inet6 240e:3b3:2ee3:9539:3714:eaf0:c549:b8c9/64 scope global dynamic mngtmpaddr noprefixroute       valid_lft 7188sec preferred_lft 3588sec    inet6 fe80::c746:2540:ab7b:20aa/64 scope link       valid_lft forever preferred_lft forever    inet6 fe80::3543:2637:e0fc:3630/64 scope link noprefixroute       valid_lft forever preferred_lft forever 

啟動投屏的命令如下:

dlna play -d 
  
    http://:9999/cgi-bin/screen.flv 

請相應(yīng)替換其中的 參數(shù),此處我替換后的命令是:

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

然后在你的電視上設(shè)置接受投屏,各種電視設(shè)備設(shè)置投屏方式不同,請參照具體設(shè)備說明。

稍等片刻,視頻就會出現(xiàn)在電視上了。投屏效果如下:


分享題目:通過DLNA在Linux中投屏
當(dāng)前鏈接:http://www.5511xx.com/article/codsedg.html