2011-11-02 11 views
8

iOSでのビデオエンコードに関してインターネット上で十分な情報が見られないため、私は本当にこの問題に固執しましたが、ビデオストリーミングの問題に対処するアプリをたくさん見ることができます(skype 、qik、justin.tvなど)
私は、カメラから取得し、h.263(h.264またはMPEG-4が決定中)でエンコードされたビデオフレームを、ウェブサーバ。このために、私はいくつかのビデオエンコーディングライブラリが必要です。明らかに、ffmpegはそのタスクに対処することができますが、それはAppStoreでアプリケーションを提出する際におそらく問題を引き起こす可能性のあるLGPLライセンスの下にあります。一方、applicationsはffmpegライブラリを使用しているようですが、Timelapserのみがこの説明をアプリの説明に明記しています。これは、他のアプリがffmpegを使用していない、またはこの情報を隠していないことを意味しますか?iOS向けビデオエンコードライブラリ

このトピックに関するご意見やご感想をお寄せください。私は反論のために開いています。

答えて

8

この分野でいくつかの調査を行った結果、この1つのライブラリhttp://www.foxitsolutions.com/iphone_h264_sdk.htmlが見つかりました。彼らは実際にハードウェアエンコーディングを使用します。私は楽器を使ったデモの例を調べましたが、エンコードするうちに〜12%のCPUが使用され、システムコールread()が絶えず呼び出されていることがわかりました。私の結論では、彼らのライブラリは、標準のAVFoundationのAVAssetWriterを使ってテンポラリファイルに書き込んでおり、(おそらく)並行スレッドは、この一時ファイルを読み込み、エンコードされたフレームを取得するために使用されます。

また、http://www.videolan.org/developers/x264.htmlをご覧ください。それはGPLの下にありますが、それでも役に立つことがあります。

+0

Foxit Solutionsへのリンクありがとうございます。残念ながら、彼らは今デモを持っていない - 連絡先の電子メールのみ。あなたが助けてくれる他の図書館を知っていますか? H264の生データをコンテナ(たとえばmp4コンテナ)でラップする必要があります。 –

+0

@ LukaszCzerwinski私はこの問題を少し前に解決するために私自身のコードを書いた(2012年に私は思う)。このコードは、プロジェクトが放棄されたときに適切にデバッグする必要があります。 DM私が興味を持っているなら、私はまだその源泉を持っているはずです。 – peetonn

+0

うわー、ありがとう、それは素晴らしいだろう。私はDMに満足していますが、あなたのプロフィールには「明らかに、このユーザーは彼らについての謎の空気を保つことを好む」と述べています。さらに、PMはありませんので、DMをあなたに送っていただく方法はありません:) –