問題タブ [qtkit]

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

quicktime - ヘッダーファイルで QTAtomContainer を探しています

多くの QuickTime の例では、ムービー エクスポート パラメータを設定するために QTAtomContainer を参照しています。

私は古代からすべての作業コードを持っています。現在、xcode 4 を使用していますが、コンパイラは QTAtomContainer を見つけることができません。Apples のドキュメントによると、これは Movie.h で宣言する必要があります。しかし、QTAtomContainer はありません。Appleがこの宣言をどこに移動したか、または欠落しているヘッダーを誰かが知っていますか?

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

objective-c - addImage:forDuration:withAttributesを試行したときのアウトバウンド例外のQTMovieインデックス

QTKitを使用してCocoaで映画を作成しようとしています。この映画は、私が作成したNSImageの束で構成されている必要があります。私はこれに関していくつかの問題に遭遇しています。全体的な問題は、ムービーが作成されていないことです。空のように見えるファイルがあり、数百バイトしか含まれていませんが、話す映画はありません。とにかく、コードは次のとおりです。

注目すべきラインは[movie addImage...です。ここでエラーが発生します。次の例外が発生します。

私はたくさんググってみましたが、この質問に本当に答えるものは何も見つかりませんでした。コードは非常に単純で、ほとんどのコードサンプルとまったく同じように見えます。画像は正常に読み込まれますが、まったく追加されません。何か案は?関連する場合は、JPEG画像です。

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

objective-c - QTKit スローモーションでムービーを再生

映画をスローモーションで再生し、それを既存の映画に添付しようとしています。これまでに行ったことは次のとおりです。

これにより、2 番目のムービーが最初のムービーに正しく追加されますが、もちろんスローモーションで再生されません。別の方法があることは知ってinsertSegmentOfMovie:fromRange:scaledToRange:いますが、そこに時間範囲を設定する方法がわかりません。

どんな助けでもいただければ幸いです

更新:次のコードを使用してスローモーションを追加できます:

これにより、ビデオがスロー モーションで正しく再生されますが、2 番目のビデオのオーディオがスロー モーションで保存されません。IE 2 番目のビデオはスローモーションですが、オーディオはそうではありません。

更新 2:

明確にするために、cocoa アプリからすぐに QuickTime プレーヤー内で originalVideo を再生しようとすると、2 番目のビデオのオーディオがスローモーションで再生されます。オーディオが同期していないのは、保存されたファイルだけです。

役立つ場合に備えて、完全なコードを投稿しています。

更新 3:

vlc などの QuickTime 以外のプログラムで最終ファイルを開くと、最初のビデオの最後 (モーションを開始する必要がある場所) でビデオの再生が停止しますが、オーディオは最後まで再生し続けます。

更新 4:

[originalMovie writeToFile:withAttributes]新しい場所を使用して指定すると、すべてが期待どおりに機能します。あらゆる種類の問題に遭遇するのは、ファイルを上書きしようとしたときだけです。

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

objective-c - URLで音楽を再生する

インターネットからURLで音楽を再生したい。次のコードを使用して、ボタンが1つある単純なプロジェクトを作成します。

動作しますが、多少の遅延があります(ファイルが完全にダウンロードされるまで待機するためだと思います)。
では、音楽がすぐに再生を開始するために何をする必要がありますか(たとえば、ファイルの10%がダウンロードされたとき)?

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

objective-c - 次/前のトラック ボタン アクション

NSTableView (曲の URL) と QTMovieView 要素があります。QTMovieView の前/次のボタンが押されたときに実行されるアクションを作成する必要があります。私は何をする必要がありますか?

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

objective-c - Cocoa ビデオの最後に画像を追加

QTCaptureSession を使用して iSight カメラからビデオを録画しています。

動画の最後に画像を追加したいので、didFinishRecordingToOutputFileAtURL デリゲート メソッドを実装しました。これまでに行ったことは次のとおりです。

このコードの問題点は、quicktime はうまく機能しますが、他のプレイヤーはそうではないことです。ここで基本的なものが欠けていると確信しています。

また、保存する前に画像をビデオに追加することもできます (2 回保存することを避けるため)。今すぐ録音を停止する方法は次のとおりです。

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

objective-c - QTMovieを使用してストリームの実際のフレームレートを決定します

でQTMovieをQTMovieOpenForPlaybackAttribute:YES使用していて、QTMovieViewを使用して表示しています。達成しているフレームレートを計算する必要があります。

これを行うことを考えることができる1つの方法は、フレームが表示されようとしている、または表示の準備ができるたびに呼び出されるコールバックを持つことです-そのようなコールバックに精通している人はいますか?

もう1つの方法は、-currentFrameImageを使用して、テストした最後のフレーム画像と比較するタイマーを用意することです。ただし、最初に2つのNSImageを比較する方法がわかりません。次に、2つのNSImageを比較すると問題が発生すると思います。連続するフレームは同じであり、そうでないときにフレームがドロップされたと効果的に想定します

私が考えることができる最後の方法は、タイマーを再び使用することです。今回は-currentTimeを呼び出します。私はこれを試しましたが、何らかの理由で、timeScaleが1000000000に設定されています。タイムスケールは100 * fpsであると想定されているので、currentTimeがFPSが10000000であると返すのはなぜですか?これは完全に間違っているようです。返されるQTTimeにフラグが設定されていません。

私はこれに関する情報をどこでも検索しました-フレームレートに関する検索は、私が探しているものではないキャプチャでフレームレートを設定する方法に私を導くだけです。

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

c - QTKit による QT ムービー メタデータのタグ付け

QTKit を使用して、いくつかのビデオ ファイルにメタデータのタグ付けをしようとしています。文字列を値として取るアトムにタグを付けるのに苦労しましたが、引数として8ビット整数を取るアトムを設定するのに苦労しました。以下は、Apple のドキュメントやインターネット上のその他のさまざまな情報源から得たものです。

したがって、atom 'stik' は、iTunes でビデオの種類を設定します。ビデオをテレビ番組として指定する場合は、値 10 を割り当てる必要があります。このメソッドに @"10" を送信すると、エラーは発生しませんが、ビデオ ファイルに適切なタグが付けられません。 .

私の問題の一部は、C の学習をスキップして Objective C に直行したことだと確信しているため、このように C に飛び込む必要がある場合、問題が発生します。

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

cocoa - QuickTime API を使用せずにビデオ フレームをムービーに記録する 10.6 互換の手段は何ですか?

アプリケーションを 64 ビットに対応するように更新していますが、動画記録コードに少し問題があります。YUV フレームをアプリケーションに供給する FireWire カメラがあり、これを処理して MPEG4 ムービー内でディスクにエンコードします。現在、これを行うために C ベースの QuickTime API を使用しています (Image Compression Manager などを使用) が、古い QuickTime API は 64 ビットをサポートしていません。

私の最初の試みは、QTKit の QTMovie を使用し-addImage:forDuration:withAttributes:、 を使用して個々のフレームをエンコードすることでしたが、これにはフレームごとに NSImage を作成する必要があり (計算コストが高くなります)、一時的な圧縮を行わないため、最もコンパクトなファイルが生成されません。

QTKit Capture の QTCaptureMovieFileOutput のようなものを使用したいのですが、QTCaptureInput に関連付けられていないフレームに生のフレームをフィードする方法がわかりません。カメラのゲイン、露出などを手動で制御する必要があるため、QTKit Capture でカメラを直接使用することはできません。

Lion では、これを可能にする AVFoundation に AVAssetWriter クラスがありますが、当面はまだ Snow Leopard をターゲットにする必要があるため、そこでも機能するソリューションを見つけようとしています。

-addImage:forDuration:withAttributes:したがって、QTMovie よりも効率的で、古い QuickTime API に匹敵するファイル サイズを生成する非 QuickTime フレームごとのビデオ録画を行う方法はありますか?

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

cocoa - XCode 4でQTKitのドキュメントタイプを設定する方法は?

ここで私の小さな問題を解決してくれることを願っています。

私はCocoaとXCode4から始めたばかりで、たくさんのチュートリアルを自分で行っています。Appleサイトに「QTKitアプリケーションチュートリアル」というチュートリアルが1つあります(http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/QTKitApplicationTutorial/BuildingaSimpleMediaPlayerApplication/BuildingaSimpleMediaPlayerApplication.htmlにあります) 。

問題は、このツタンカーメンがXCode 3.2をカバーしていて、XCode 4で対応する設定が見つからないことです。QTプレーヤーを持っているので、開くことができる形式と拡張機能を指定する必要があります。

XCode 3では、これはtutで説明されているようにいくつかのパラメーターを介して行われます。XC 4のどこでこれらの設定を見つけることができるか教えてもらえますか?

どんな助けでも強く感謝します、

一番、

Flo