問題タブ [cmsamplebufferref]

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

objective-c - CMSampleBuffer と didOutputSampleBuffer について

がどのように機能するかを理解しようとしていCMSampleBufferます。CMSampleBuffer最終的に、ピクセル(kCVPixelFormatType_420YpCbCr8BiPlanarVideoRangeフォーマットされている)をピクセルに変更する最も効率的な方法を探していますgrayScale

最終的な結果は、(高速) グレースケールのライブ ビデオ ストリームになります。

私は次のことを試しました:

どういうわけかピクセルについて示していると思います。しかし、そこから私はちょっと迷っています。何か提案はありますか?

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

ios - サンプル バッファ (CMSampleBufferRef) のインスタンスを作成する方法は?

私は ios camera を書き込もうとしましたが、コードの一部をapple から取りました:

プログラムのどこからでも、この関数を呼び出す必要があります。しかし、それは のオブジェクト タイプを作成する必要があるためです(CMSampleBufferRef)。どうやってするの?

私は次のようなものを書き込もうとしました:

しかし、それは間違った方法です。

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

objective-c - AVCaptureSession ビデオ出力で Metal の使用を理解する

CMPixelBufferMetal を使用してVideo output( ) を操作する正しい方法を理解しようとしています。

私が理解している限りではありMTKViewます。CMPixelBufferビデオ出力からの各は、いくつかの に割り当てられていMetal Textureます。したがって、最終的なプレビューはMTKView?

画面に最終結果が表示されたら、それは次のとおりです。

また

かなり混乱しています。誰かが物事をその場に置くことができますか?

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

ios - ピクセル形式 YCC420f がサポートされていないため、レンダリングに失敗しました

次のスニペットを使用して、CVPixelBufferRef を UIImage に変換しようとしています。

私の問題は、デバイスでコードを実行すると正常に動作するが、シミュレーターで実行するとレンダリングに失敗することです。コンソールは次のように出力します。

ピクセル形式 YCC420f がサポートされていないため、レンダリングに失敗しました

何か案は?

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

objective-c - この ObjectiveC コードを Swift に変換できません

1.Swiftコードをプログラムに統合できるように、Objective Cのリバースオーディオ関数をSwiftに変換していますが、これらの数行のコードは理解できません

2.これは、次の目的の c コードです。

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

avfoundation - null を返す CMSampleBufferGetImageBuffer

その場で透かしをオーバーレイするように CVPixelBufferRef を変更するために、CMSampleBufferRef から CVPixelBufferRef を取得しようとしています。

私はCMSampleBufferGetImageBuffer(sampleBuffer)それを達成するために順番に使用しています。返された CVPixelBufferRef の結果を出力していますが、常に null です。

足りないものはありますか?

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

macos - CMSampleBuffer の CMBlockBuffer 所有権

ネイティブの Annex-B H.264 ストリームを解凍するコードを書いています。ストリームを解析し、S​​PS/PPS NALU から CMVideoFormatDescription を作成し、ストリームから抽出した他の NALU をラップするプロセスを実行しています。 CMSampleBuffers で。

デコーダーの CMBlockBuffer と CMSampleBuffer メモリを処理する方法について、精神的なブロックに苦しんでいます。私の問題は、何よりもCFがメモリを処理する方法を完全に理解していないことにあると思うので、私の質問はそれに関するものですが、コンテキストが役立つことを願っています.

次のように CMBlockBuffer を作成すると:

次のように CMSampleBuffer に追加します。

ブロックバッファをどのように処理すればよいですか? SampleBuffer はブロック バッファのメモリを保持していますか、それとも割り当てが解除されていないことを確認するために何かをする必要がありますか?

また、非同期デコード プロセスに関連して、デコーダが CMSampleBuffer をいつ処理するかを知る賢明な方法はありますか?

私の直感では、CMSampleBuffer は CMBlockBuffer を保持し、VTDecodeSession はデコードが完了するまで CMSampleBuffer を保持しますが、これは文書化されていない領域であり、私がさまよっているので、方向性を探しています。私が得ている結果は、私の直感が間違っている可能性があることを暗示しているので、正気を保つために問題としてメモリ管理を除外する必要があります...

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

xcode - キャプチャされた AVFoundation の画像が暗い

osx では、AVFoundation を使用して USB カメラから画像をキャプチャします。すべて正常に動作しますが、取得した画像はライブ ビデオに比べて暗くなります。

デバイス キャプチャの構成

ライブ プレビュー用のビューを追加

画像をキャプチャするコード

サンプルバッファデータから NSImage を作成します。問題はここにあると思います