
公式チュートリアルhttps://trac.ffmpeg.org/wiki/StreamingGuideこの-pix_fmt yuv420p
オプションを使用してください。
私もこれを使ってチュートリアルからコピーし、FFmpegからYoutubeにストリーミングするのが私に役立ちました。しかし、その目的が何であるか、特にYouTubeに必要なオプションなのか、それとも良いオプションがあるのかは不明です。
このトピックに関するYouTubeの記事では、このコンテンツを扱っていないようですが、次のコンテンツがどこにあるのかわかりません。https://support.google.com/youtube/answer/1722171?hl=ja。
これに関する正確な文書を知っている人はいますか?
答え1
YUV420は、クロマサブサンプリングを使用して画像を表現するために必要なデータ量を減らす色空間です。クロマサブサンプリングは、輝度(明るさ)情報よりも色差(色相)情報の解像度を下げて画像をエンコードする方法です。これは、人間の視覚システムが明るさの差よりも色の差に敏感でないという事実を利用する。したがって、YUV420は、クロマサブサンプリングを使用しない形式よりも画像を表現するのに必要なデータが少ないため、省スペース形式と見なすことができます。。
ストリーミング中の使用に関する質問に関する-pix_fmt yuv420p
一般的な回答とYouTube関連の回答を見つけました。
私の質問にリンクされているFFmpegストリーミングガイド(https://trac.ffmpeg.org/wiki/StreamingGuide)次の方法でH.264コーデックを使用してください-vcodec libx264
。 YouTubeの公式おすすめでもおすすめのコーデックでもあります。https://support.google.com/youtube/answer/1722171?hl=en#zippy=%2Cvideo-codec-h)。
YouTubeに対する具体的な回答は、ドキュメントのこの文にあります。:
「クロマサブサンプリング:4:2:0」。
-pix_fmt yuv420p
これはオプションと正確に一致します。。
一般的な回答は、H.264 の FFmpeg ドキュメントにあります。https://trac.ffmpeg.org/wiki/Encode/H.264。ページの下部には次の内容があります。
QuickTimeと他のほとんどのプレーヤーで出力が機能するようにするには
-vf format=yuv420p
(またはエイリアス)を使用する必要があります。-pix_fmt yuv420p
このプレーヤーは、H.264ビデオのYUVフラットカラースペースと4:2:0クロマサブサンプリングのみをサポートします。それ以外の場合、ソースによっては、ffmpeg
出力がこれらのプレーヤーと互換性のないピクセル形式である可能性があります。
答え2
私はあなたが探しているものが次のとおりです。 https://en.wikipedia.org/wiki/YUV
YUVは実際にここでビデオフォーマットです。
私の理解によると、ピクセル/色だけが説明されているので、効果的に圧縮されません。つまり、1080p画像のサイズが数メガバイトになるのを防ぐ一般的な方法を使用せずに、ピクセル単位で色データを明示的に渡すことができます。
ストリーミングのためにはOBS(https://obsproject.com/de)。オープンソースであり、すべてのビデオと同様にffmpegも使用します。 OBSはこれらのパラメータを非常によく処理し、実際には業界標準です。
UnixとLinuxで公開されているため、OBSはさまざまな一般的なディストリビューションの標準パッケージソースから入手できます。