0

STACKOVERFLOWやどこにも見つからない次の3つのアイテムを探しています。

  1. 圧縮の準備ができているファイルチャンク(〜10秒)にキャプチャするAVFoundationのサンプルコード?

  2. インターネットを介した送信のためにビデオとオーディオを圧縮するためのサンプルコード?ffmpeg?

  3. iPhoneからインターネットサーバーにファイルを送信するHTTPライブストリーミングのサンプルコード?

私の目標は、iPhoneをリモートサーバーにストリーミングする高品質のAVビデオカメラとして使用することです。介在するデータレートが低下した場合、ファイルはiPhoneでバッファリングする必要があります。

ありがとう。

4

2 に答える 2

3

AVAssetWriter を使用して、目的の長さの MP4 ファイルをエンコードできます。AV メディアは、H264/AAC でコンテナーにエンコードされます。これをリモートサーバーにアップロードするだけです。必要に応じて、HLS ストリーミング用にビデオをセグメント化できますが、HLS はサーバーからクライアントへのストリーミング プロトコルとして設計されていることに注意してください。私の知る限り、プッシュという概念はありません。セグメント化されたビデオ ストリームのプッシュを受け入れるには、カスタム サーバーを作成する必要があります (HLS の設計方法を考えると、これはあまり意味がありません。RFC ドラフトを参照してください。MP4を単純にアップロードする方が良い方法かもしれません)。 TCP ソケットを介してサーバーにビデオをセグメント化させ、クライアント ビューアにストリーミングします. これは、コマンド ラインまたはカスタム プログラムを介して FFmpeg を使用して簡単に実行できます。

また、セルラー接続を介して 720p ビデオをストリーミングしようとすると、過度のデータ使用のためにアプリが拒否される可能性が高くなることも付け加えたい.

于 2012-05-18T20:48:58.387 に答える
0

AVFoundation を使用してビデオとオーディオをキャプチャします。AVCaptureformatDescription の kCMVideoCodecType_H264 および kAudioFormatMPEG4AAC、フレーム サイズ、フレーム レートにオーディオおよびビデオ コーデックを指定できます。圧縮された H264 ビデオと AAC aduio が提供されます。

これをカプセル化し、Live555 Media などの RTP サーバーを使用してサーバーに送信します。

于 2013-04-19T14:19:15.637 に答える