VLCでYoutubeにストリーミングして、次のコマンド文字列を作成します。
cvlc -vv screen:// --live-caching=0 --screen-fps=30 --screen-width=1920 --screen-height=1080 --sout='#transcode{vcodec=h264,scale=Auto,width=1920,height=1080,acodec=mp3,ab=128,channels=2,samplerate=44100}:std{access=rtmp,mux=ffmpeg{mux=flv},dst=rtmp://a.rtmp.youtube.com/live2/xxxxxxxxxxx}'
screen:// ..
ビデオファイルに置き換える と、ストリームがYouTubeに正常にアップロードされます。
しかし、なぜスクリーンがキャストされないのかわかりません。Youtubeは簡単に接続を表示しますが、画像は表示しません。ストリームはVLCによって中断されず、アップロードを続行するために表示されますが、YTによって取得されることはありません。任意の助けをいただければ幸いです。
記録のために、ストリーミングせずにVLCで画面をオフラインで表示できます。
際立った特定のエラーが表示されます。
core mux warning: late buffer for mux input (repeated while streaming)
しかし、これはビデオをアップロードする場合にも起こり、問題を引き起こすようには見えません。
ログ
以下は、VLCで再生しながらデスクトップをストリーミングするHTTPサーバーをセットアップしようとしたときのログです。画像を取得しますが、ストリームの最初のフレームである静的な画像のみを取得します。
私のコンピューターは遅いと多くのことを教えてくれますが、Corei5であり、VLCプロセスは9%しか使用せず、残りは多くなります。ファイルへの保存は正常に機能します。
注意
2台のモニターがあります。どういうわけか、それが問題になるかもしれません、わかりません。
更新
でバッファを増やすことで、ドロップされたフレームの問題を修正しましたlive-caching=2500
。現在、ローカルHTTPサーバーでは正常に動作しますが、YTでは動作しません。
#transcode{vcodec=h264,scale=Auto,width=1920,height=1080
、私はあなたが出力小さいサイズのストリーム640から480にしようと、巨大な解像度でストリームのリアルタイムトランスコードを実行している得る限り