問題タブ [avassetwriter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
10928 参照

ios4 - UIImages の配列からビデオを作成し、ビデオを iPhone ライブラリに保存します。AVAssetLibrary +AVFoundation

ビデオを iPhone ライブラリに保存する際の問題。UIImagesの配列と、「convertToVideo」と「saveToiPhoneLib」という2つのボタンがあります

iPhone ライブラリへの保存

しかし、保存中にエラーメッセージが表示されます:-

ビデオの保存がエラーで終了しました: エラー Domain=ALAssetsLibraryErrorDomain Code=-3302 "Invalid data" UserInfo=0x1d59f0 {NSLocalizedFailureReason=データが無効で表示または再生できないため、このアセットの書き込み中に問題が発生しました。NSLocalizedRecoverySuggestion=別のデータで試してください、NSLocalizedDescription=無効なデータ}

私の間違いを教えてください。前もって感謝します

0 投票する
4 に答える
1279 参照

iphone - iPhoneでOpenGLからビデオへ

私は現在、物理シミュレーションを iPhone 自体のビデオに変換するプロジェクトに取り組んでいます。

これを行うために、現在 2 つの異なるループを使用しています。最初のループは、AVAssetWriterInput オブジェクトが EAGLView をポーリングしてさらに画像を取得するブロックで実行されます。EAGLView は、格納されている配列から画像を提供します。

もう 1 つのループは、実際のシミュレーションです。シミュレーションタイマーをオフにして、毎回事前に指定された時間差でティックを呼び出しています。tick が呼び出されるたびに、バッファーがスワップされた後、EAGLView のスワップ バッファー メソッドで新しい画像を作成します。この画像は、AVAssetWriter がポーリングする配列に配置されます。

配列が大きくなりすぎないようにするためのその他のコードもあります。

これはすべて正常に動作しますが、非常に遅いです。

私がやっていることは、概念的に、プロセス全体を本来よりも遅くしていることがありますか? また、glReadPixels よりも Open GL から画像を取得する高速な方法を知っている人はいますか?

0 投票する
3 に答える
4973 参照

iphone - AVAssestWritterを使用したビデオ出力用のOpenGLのCMSampleBuffer

OpenGLフレームのCMSampleBufferを取得する必要があります。私はこれを使用しています:

CMSampleBufferCreateのEXEC_BAD_ACCESSを取得します。

どんな助けでもありがたいです、ありがとう。

0 投票する
2 に答える
9293 参照

iphone - iOS: AVAssetWriter を使って一連の画像でムービーを作成する方法

この質問が、ここと他のフォーラムの両方でさまざまな形で何度も出されているのを見てきました。質問には答えられるものもあれば、答えられないものもあります。回答者または著者が成功したと主張する場所がいくつかあります。私は成功を主張する例を実装しましたが、同じ結果はまだ見ていません。

サンプル バッファが AVCaptureSession から取得されたときに、AVAssetWriter (および AVAssetWriterInputPixelBufferAdaptor) を使用して、画像データと音声データを同時に書き込むことができました。ただし、別の方法で生成された CGImageRef があり、CVPixelBufferRef を「ゼロから」作成すると、AVAssetWriterInputPixelBufferAdaptor の appendPixelBuffer:withPresentationTime メソッドが数フレーム成功し、その後のすべてのフレームで失敗します。結果のムービー ファイルはもちろん有効ではありません。

サンプル コードはhttp://pastebin.com/FCJZJmMiで確認できます。

イメージは有効であり、デバッグ ウィンドウに表示することで検証されます (50 ~ 53 行を参照)。アプリは Instruments でテストされており、アプリの実行中のメモリ使用率は低くなっています。メモリ警告は表示されません。

私が知る限り、利用可能なドキュメントに従っています。サンプル コードが失敗するのはなぜですか? それを修正するために何をする必要がありますか?

AVAssetWriterInputPixelBufferAdaptor を自分の画像で正常に動作させた人がいる場合は、声をかけてください。

0 投票する
1 に答える
663 参照

iphone - iOS: AVAssetWriter で動画を保存するハーフ サイズのフレームを修正する方法

AVAssetWriter と AVAssetWriterInputPixelBufferAdaptor で動画ファイルを書いています。

CVPixelBuffer を構築するために使用される CGImage は (画面に表示されるように) 通常のように見えます。出力ムービーは、フレームの上半分に圧縮された入力画像を示しています。幅、高さ、bytes_per_row はすべて同じです (CGImage、AVAssetWriter 設定、および CVPixelBuffer 設定の場合)。

この種の問題の原因は何ですか?

0 投票する
1 に答える
7662 参照

iphone - AVAssetWriter の複数のセッションと status プロパティ

AVAssetWriter を使用して複数のシリアル書き込みセッションを作成しようとしています。正常に完了すると (finishWriting を呼び出した後)、ステータスは 2 (AVAssetWriterStatusCompleted) に設定されます。

別のセッションを作成しようとして、startWriting を呼び出しましたが、次のエラーが発生しました。

何かを設定しない限り、書き込みセッションを作成できないようです。AVAssetWriter を再度作成する必要がありますか? 私は何かが欠けているに違いありません、そしてドキュメントは役に立ちません。

ありがとう。

0 投票する
2 に答える
1532 参照

iphone - AVAssetWriter startWriting 問題

AVAssetWriter startWriting は、2G デバイスでムービーを書き込んでいるときに BOOL False 値を返しますが、他のすべてのデバイスでは TRUE 値を返し、正常に動作しています。誰かがこの問題に直面したか、それが起こった理由を知っていますか?助けてください

0 投票する
1 に答える
5681 参照

iphone - AVAssetWritter はオーディオでは機能しません

iOS アプリケーションのビデオでオーディオを動作させようとしています。ビデオは問題ありません。ファイルに音声が記録されません (iPhone のスピーカーは機能します)。

初期設定は次のとおりです。

録音の開始と終了は次のとおりです。

オーディオのデリゲートは次のとおりです。

ビデオの方法は問題ありません。「restateConfigiration」は、セッション構成を整理するだけです。そうしないと、トーチがオフになります。

助けてくれてありがとう。

0 投票する
3 に答える
19318 参照

iphone - 複数のトラック (オーディオとビデオ) に同時に AVAssetReader と AVAssetWriter を使用する方法は?

私は と の使用方法を知ってAVAssetReaderおりAVAssetWriter、それらを使用して、ある映画からビデオ トラックを取得し、それを別の映画にトランスコードすることに成功しました。ただし、オーディオでもこれを行いたいと思います。最初のトランスコードを行った後に作成するAVAssetExportSession必要がありますか?それとも、書き込みセッション中にトラックを切り替える方法はありますか? のオーバーヘッドに対処する必要はありませんAVAssetExportSession

プルスタイルの方法を使用すると、while ([assetWriterInput isReadyForMoreMediaData]) {...}1つのトラックのみを想定しているため、お尋ねします。複数のトラック、つまりオーディオトラックとビデオトラックの両方にどのように使用できますか?

0 投票する
2 に答える
2860 参照

iphone - iPhone を mediastreamsegmenter への入力として使用 - HTTP ライブ ストリーミング

私は HTTP ライブ ストリーミング プロトコルの作業を開始し、非常に興味深いと感じました。Apple から提供された完全なドキュメントに目を通しました。

開発者フォーラムの 1 つに記載されている手順に従って、ストリーミング サーバーとして VLC プレーヤーを使用して、Vedio オン デマンドとライブ ストリーミングを試しましたが、正常にストリーミングできました。

今、私は自分の iPhone をストリーミングのソースにしたいと考えており、別の iPhone を使用してそのコンテンツを表示したいと考えています。

前述のように、mediastreamsegmenter は、UDP ネットワーク接続または sdtin から MPEG-2 トランスポート ストリームを受信するツールです。

私のiPhoneをストリーミングサーバーとして使い始め、コンテンツをストリーミングできるようにする方法について、誰かが光を当てることができますか. 私の知る限り、コンテンツをサーバーに送信し、サーバーがストリームを MPEG-2 トランスポート ストリームに変換してメディア ストリーム セグメンターに送信するクライアント (iPhone) アプリケーションが必要だと思います。残りの部分は、VLC プレーヤーでストリーミングしたときと同じであることを願っています。

誰かがこれを始める方法として私を助けることができれば素晴らしいでしょう.