問題タブ [avcomposition]

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 投票する
1 に答える
709 参照

objective-c - AVPlayerItemVideoOutput ファイルは、AVComposition IOS7 では使用できません

AVCompositionを使用するとIOS7で壊れるIOS6で完全に機能するアプリがあります。

問題は次のとおりです。以前のビュー コントローラーでは、AVPlayerItemVideoOutput&を使用してユーザーの画面をキャプチャしAVAssetWriterInputPixelBufferAdaptor、ビデオ出力ファイルを生成していました。現在のビュー コントローラーでは、その生成されたビデオ ファイルを取得して AVComposition に追加し、このファイルと一部のオーディオの間でビデオ コンポジションを生成します。IOS6 では、このプロセスは完全に機能し、AVExportSession が完了します。IOS7 では、エクスポート プロセスは完了しません (終了ハンドラーは呼び出されず、ステータスは常にAVAssetExportSessionStatusExportingです)。

ここに私の疑似コードがあります:

コードをデバッグした後、問題は使用されていた生成されたビデオ ファイルに帰着しました。ハードコードされたファイルに変更assetすると、エクスポーターが完了します。興味深いのは、から生成されたビデオ ファイルAVPlayerItemVideoOutputMPMoviePlayerViewController. 出力ファイルがコンポジションで使用されないように、IOS7 で、AVPlayerItemVideoOutputまたはIOS7 で何か変更がありましたか? AVAssetWriterInputPixelBufferAdaptorコンポジションに追加の仕様を追加する必要がありますか? 異なるフレームレートに対処する必要がありますか?

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

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

ios7 - タイプ AVMediaTypeText で AVMutableCompositionTrack をインスタンス化する方法

作成中のビデオの一部のテキストを配置しようとしています。CALayers を使用してビデオの全長にわたってテキストを含むレイヤーを使用できることはわかっていますが、ビデオの一部のみでそれを行うにはどうすればよいですか? いくつかの調査の結果、タイプ AVMediaTypeText の AVMutableCompositionTrack を作成できることがわかりました。それでうまくいくようです。ただし、そのようなトラックの宣言、インスタンス化などの例は見つかりませんか?

私はそれを次のように宣言しています:

実際にテキストを追加したり、文字列でインスタンス化するにはどうすればよいですか?

任意の入力をいただければ幸いです。

0 投票する
0 に答える
47 参照

ios - オーディオをマージしている間、オーバーレイしたいのに両方のオーディオが線形になります

そのため、次のコードを「for」ループで使用してオーディオをオーバーレイしようとしましたが、最後に接続されたオーディオが最初に来るように、直線的に入ってきます。

2011 WWDC、セッション 415 - Working with media in AVFoundation でこれらすべてが説明されていることがわかります。その解決策は AVEditIPadDemo の例にありますが、そのソースにもアクセスできません。そのコードにアクセスできるようにしていただければ幸いです。ありがとう

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

ios - AVComposition での処理後にオーディオが失われる

AVMutableComposition を使用して、2 つのメディア (1 つのビデオと 1 つのグラフィック オーバーレイ) を結合しています。ビデオは UIImagePickerController を使用してキャプチャされました。

ビデオは正常に記録され、オーディオは記録をプレビューするときにそこにあります。

コンポジションで処理し、セッションをエクスポートします。ビデオは正常に保存されますが (オーバーレイあり)、オーディオは保存されません。

iOS7.

コンポジションのオーディオに関しては特に何もしていません。ビデオファイルと一緒に「来る」と思っただけです。それは正確ですか、それともコンポジションに専用のオーディオ トラックを作成する必要がありますか?

_マイク

0 投票する
0 に答える
793 参照

objective-c - AVFoundation AVComposition に字幕トラックを追加する方法

タイプ AVMediaTypeSubtitle のトラックを AVMutableComposition に追加したいのですが、追加自体は簡単ですが、このトラックにデータを入力するにはどうすればよいですか? 後でそれを読む方法は?

タイプ AVMediaTypeSubtitle のトラックを読み書きする方法に関連するものが見つかりません!!

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

ios - AVComposition の TimeRange を AVMutableComposition に挿入しようとしたときのエラー -11800

私はAVFoundationオーディオのみを使用して作業しています。つまり、ビデオは使用せず、複数AVCompositionの を次々に結合して、1 つのAVComposition.

例: 2 つだけAVComposition。次のように AVPlayer を作成することで、それぞれが正常に再生されます。

compインスタンスですAVMutableComposition。(ちなみに、_playerivar でなければならないことに注意してください。そうしないと、ARC は再生前に時期尚早にそれをリリースします - それを追跡するのにしばらく時間がかかりました。)

よかった - 実行中

comp正常に再生されます。

ただし、これは失敗します。

(のカスタム サブクラスでself.segmentsあるNSMutableArray要素を含むAVMutableComposition)

このコードが実行されたときのすべての要素について、メソッドself.segmentsを呼び出すときに次のエラーが発生します。insertTimeRange::::

このエラーが何を示しているかについての情報を見つけることができません。何か案は?

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

ios - AVComposition でのビデオ タイミングの編集

AVComposition複数のビデオ トラックとオーディオ トラックを含むがあります。これまでのところ、プログラム的には純粋で、GUI はありません。ユーザーがボタンをクリックすることで、1 つのトラックを数フレーム前後にプッシュできるようにしたいと考えています。例: 「-10 フレーム」というタイトルのボタンはトラックを 10 フレーム戻し、「+10 フレーム」はトラックを 10 フレーム進めます。を使用してトラックを追加した後、実際にトラックを移動する方法が見つかりませんinsertTimeRange:ofTrack:atTime:

私はそれを削除して、次のように再追加しようとしました:

そして、それは実際にはそれほど進んでいません(私は何か間違ったことをしたかもしれません)が、これはとてもハックな方法だと感じています.. すでに追加されたトラックに新しい時間を与える適切な方法を知っている人AVComposition?_