2017-06-09 11 views
0

私がやっていることは、ストリームリンク経由でツイッチストリームを取得し、それをffmpeg経由でYouTubeストリームに出力することです。私は(確かに)ちょうどマニュアルの最初のコマンドをコピーし、それを少し微調整して、このコマンドを使用して終わったことを行うことができますどのように見上げたとき:ffmpegは非常に非効率的にストリーミングします

streamlink -O twitch.tv/boxbox best | ffmpeg -i pipe:0 -s 1920x1200 -framerate 30 -vcodec libx264 -preset veryfast -s 1280x720 -threads 0 -f flv "rtmp://a.rtmp.youtube.com/live2/-------------" 

は、このコマンドの動作を実行し、ストリームは、ユーチューブに表示されますそれは非常に遅れている。コンソールは私が実際に私が望むものではない一貫した9fpsでストリーミングしていると私に伝えます。これはffmpegの私の最初の経験なので、実際に何が起こっているのか分かりません。かなり安いdebian VPSを実行しているので、私のサーバかもしれません。これは期待できるのか、それともそれをより良く流すためにこれを微調整できますか?これは私が実際にこれを引き起こしているものを知らないffmpegのと私の非常に最初の経験ですので、非常に非効率的

ストリーミング

答えて

0

ffmpegの。

あなたはそれが非効率だと思いますか?あなたはビデオを再エンコードしています。これには1トンのCPUが必要です。

私は非常に安価なdebian VPSを実行しているので、それは私のサーバかもしれません。

いずれにしても、カップルオプションがあります。最も良いことは、ビデオを再エンコードしないことです。 TwitchがH.264とAACオーディオを提供している場合は、-vcodec copy -acodec copyを使用してください。

(VPSではそうはないかもしれませんが)もう1つのことはハードウェアアクセラレーションを強制することです。これにより、以前にエンコードされたビデオを既にエンコードしているので気にすることはありませんが、CPUに大きな影響を与えることなく動作します。 FFmpegはGPUの束をサポートしています。使用しているハードウェアと互換性のあるものを1つ選択する必要があります。

ストリームを中継するのではなく、元のソースから複数のストリームをストリームします。これは、再エンコードによる品質低下を避けるのに役立ちます。

関連する問題