5

live555 を使用して FFMPEg を使用してエンコードされたデータをストリーミングしようとしています。データをシンクに送信するカスタム フレームソースがありますが、フレーマーで SPS と PPS を設定する方法がわかりません。にこの情報が含まれていることは理解してextradataいますが、その中には SPS しか表示されませんでした。FFMpeg によるエンコード中にエクストラデータは変更されますか? はいの場合、live555 フレーマーでこの情報をいつ、どのように更新する必要がありますか。

FFMpeg と live555 を使用して H264 をストリーミングするサンプルを持っている人はいますか?

4

1 に答える 1

9

Live555 は単なるストリーミング ツールであり、エンコードは行いません。

SPS と PPS は、エンコードされた H264 ストリーム (または FFMPEG 実装からの出力) 内の NAL ユニットです (ここでいくつかの情報を参照してください: http://www.cardinalpeak.com/blog/the-h-264-sequence-parameter-set / )。

SPS または PPS 情報を変更する場合は、FFMPEG で行う必要があります。

FFMPEG と Live555 が連携して MPG2 および H264 ストリームをストリーミングする例は次のとおりです:
https://github.com/alm865/FFMPEG-Live555-H264-H265-Streamer/

H264ストリームのストリーミングに関しては、FFMPEGからの出力をNALユニットに分割してから、個別のフレーマーに送信して正しく動作させる必要があります。また、パケットから先頭と末尾の NAL ビットを削除する必要があります (つまり、NAL 識別子 0x00 0x00 0x00 0x01 を削除します)。

Live555 はこれらを自動的に読み込み、必要に応じて更新します。

于 2014-06-13T01:47:19.933 に答える