Win32 API 日本語リファレンス
ホームMedia.DirectShow › InterleavingMode

InterleavingMode

列挙型
基底型i4

メンバー 4

名前10進16進説明
INTERLEAVE_NONE00x0インターリーブを行いません。フレームは到着した順に書き込まれます。後で再生するには、ファイルをインターリーブする必要があります。このモードでは、AVI Mux フィルターはスループットを高めるために、バッファリングを行わないオーバーラップ書き込み操作の使用を試みます。
INTERLEAVE_CAPTURE10x1INTERLEAVE_FULL よりもオーバーヘッドが少ない、おおよそのインターリーブです。このモードはビデオキャプチャに適しています。AVI Mux は、バッファリングを行わないオーバーラップ書き込み操作の使用を試みます。ただし、インターリーブのパラメーターが適切に構成されていない場合、あるストリームが別のストリームからのデータを待ってブロックすると、フレームがドロップされることがあります。特に、オーディオバッファーは 0.5 秒未満にしてください。そうしないと、ビデオストリームが過度に長い時間ブロックされます。
INTERLEAVE_FULL20x2オーディオサンプルとビデオフレームを完全かつ正確にインターリーブします。ストリームは、インターリーブする前に同量のデータがそろうまで無期限にブロックします。このモードはオーサリングおよび再生に適しています。
INTERLEAVE_NONE_BUFFERED30x3インターリーブを行いません。このモードは INTERLEAVE_NONE と同等ですが、使用するファイル領域とシステムのオーバーヘッドが少なくて済みます。

公式ドキュメント

[このページに関連する機能である DirectShow はレガシー機能です。この機能は MediaPlayerIMFMediaEngine、および Audio/Video Capture in Media Foundation に置き換えられました。これらの機能は Windows 10 および Windows 11 向けに最適化されています。Microsoft は、新しいコードでは可能な限り DirectShow ではなく MediaPlayerIMFMediaEngineAudio/Video Capture in Media Foundation を使用することを強く推奨します。また、レガシー API を使用している既存のコードについても、可能であれば新しい API を使用するように書き換えることを推奨します。]

ビデオフレームとオーディオサンプルをディスクにどのように書き込むかを指定します。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum InterleavingMode : int {
    INTERLEAVE_NONE = 0,
    INTERLEAVE_CAPTURE = 1,
    INTERLEAVE_FULL = 2,
    INTERLEAVE_NONE_BUFFERED = 3
} InterleavingMode;
public enum InterleavingMode : int
{
    INTERLEAVE_NONE = 0,
    INTERLEAVE_CAPTURE = 1,
    INTERLEAVE_FULL = 2,
    INTERLEAVE_NONE_BUFFERED = 3,
}
Public Enum InterleavingMode As Integer
    INTERLEAVE_NONE = 0
    INTERLEAVE_CAPTURE = 1
    INTERLEAVE_FULL = 2
    INTERLEAVE_NONE_BUFFERED = 3
End Enum
import enum

class InterleavingMode(enum.IntEnum):
    INTERLEAVE_NONE = 0
    INTERLEAVE_CAPTURE = 1
    INTERLEAVE_FULL = 2
    INTERLEAVE_NONE_BUFFERED = 3
// InterleavingMode
pub const INTERLEAVE_NONE: i32 = 0;
pub const INTERLEAVE_CAPTURE: i32 = 1;
pub const INTERLEAVE_FULL: i32 = 2;
pub const INTERLEAVE_NONE_BUFFERED: i32 = 3;
// InterleavingMode
const (
	INTERLEAVE_NONE int32 = 0
	INTERLEAVE_CAPTURE int32 = 1
	INTERLEAVE_FULL int32 = 2
	INTERLEAVE_NONE_BUFFERED int32 = 3
)
const
  INTERLEAVE_NONE = 0;
  INTERLEAVE_CAPTURE = 1;
  INTERLEAVE_FULL = 2;
  INTERLEAVE_NONE_BUFFERED = 3;
// InterleavingMode
pub const INTERLEAVE_NONE: i32 = 0;
pub const INTERLEAVE_CAPTURE: i32 = 1;
pub const INTERLEAVE_FULL: i32 = 2;
pub const INTERLEAVE_NONE_BUFFERED: i32 = 3;
const
  INTERLEAVE_NONE* = 0
  INTERLEAVE_CAPTURE* = 1
  INTERLEAVE_FULL* = 2
  INTERLEAVE_NONE_BUFFERED* = 3
enum InterleavingMode : int {
    INTERLEAVE_NONE = 0,
    INTERLEAVE_CAPTURE = 1,
    INTERLEAVE_FULL = 2,
    INTERLEAVE_NONE_BUFFERED = 3,
}
#define global INTERLEAVE_NONE          0x0
#define global INTERLEAVE_CAPTURE       0x1
#define global INTERLEAVE_FULL          0x2
#define global INTERLEAVE_NONE_BUFFERED 0x3