0

メイン画面(デスクトップ)にHTTPライブストリーム(最後の2秒程度)を提供する必要があるMacアプリを開発しています。

私は次のプロセスを考えていました:

  1. AVCaptureScreenInputを入力として使用してAVCaptureSessionを作成します(sessionPreset = AVCaptureSessionPresetPhoto)
  2. AVCaptureVideoDataOutput出力をセッションに追加します
  3. フレームをcaptureOutput:didDropSampleBuffer:fromConnection:で(kCVPixelFormatType_32BGRA形式で)キャプチャし、MPEG-TSおよびプレイリストファイルを作成するセグメント化(パイプなどを使用)のためにこれらをffmpegプロセスに書き込みます。
  4. 組み込みHTTPサーバーを使用して、セグメント化されたファイルとプレイリストファイルをサーバー化します。

これは最良のアプローチであり、ビデオストリームをエンコードおよびセグメント化するためのffmpeg部分を回避する方法はありませんか?

生のフレームをffmpegにパイプする最良の方法は何ですか?

4

1 に答える 1

1

それは良いアプローチのように聞こえます。ffmpeg 出力をストリームに使用し、Apple のセグメント化ツールを使用してセグメント化できます。Apple ツールの方がマルチプレクサ レートがわずかに優れていると思いますが、ユース ケースでは問題にならない可能性があります。

于 2013-03-04T15:52:01.447 に答える