web-dev-qa-db-ja.com

画面をローカルホストにストリーミングする方法はありますか?

ローカルエリアネットワークのSony Bravia Tvにデスクトップをストリーミングしたい。

LAN上のデスクトップをスマートテレビにストリーミングするLinuxの方法はありません。

ただし、http://localhost:9000のようなローカルホストにストリームがある場合は、リンクをコピーすることでvGet Cast chrome拡張機能を介してテレビで再生できますが、サポートはhttpのみです。 rtmpまたはudpではありません

以下のコマンドを見つけました。正常に実行されますが、tcp://0.0.0.0:9000であるため、テレビに送信できません。

ffmpeg -f x11grab -s 1280x720 -framerate 30 -i :0.0 -c:v mpeg2video -q:v 20 -pix_fmt yuv420p -g 1 -threads  -f mpegts - | nc -l -p 8090

私はこれを試しました

 ffmpeg -f alsa -ac 2 -i hw:0,0 -f x11grab -framerate 30 -video_size 600x400 -i :0.0+0,0 -c:v libx264 -preset veryfast -maxrate 3000k -bufsize 3000k -vf "scale=1280:-1,format=yuv420p" -g 60 -c:a aac -b:a 128k -ar 44100 -f flv "http://localhost:8090/live"

しかし、今回は次のエラーが表示されます。

 Connection to tcp://localhost:8090 failed: Connection refused
 http://localhost:8090/live: Connection refused
1
kenn

VLCツールlocalhost経由でcvlcにストリーミングする方法を見つけました。

私はちょうどそれを作り上げました、誰かがそれを改善するか、別のアプローチを投稿するかもしれません。

 cvlc screen:// :screen-fps=10 :scre-caching=100 --sout '#transcode{vcodec=mp4v,vb=4096,acodec=mpga,ab=256,scale=1,width=1280,height=800}:http{dst=0.0.0.0:1234,access=http,mux=ts}'

編集:申し訳ありませんが、それは私の質問に答えますが、gmediarenderでテストしましたが、機能しましたが、テレビでテストしただけで、Sony Bravia Tvでは機能しません。ビデオ形式の問題か、ビデオ形式にseek tableが指定されていない可能性があります here

1
kenn