EVT_ACX_STREAM_GET_CURRENT_PACKET fungsi panggilan balik (acxstreams.h)

EvtAcxStreamGetCurrentPacket memberi tahu driver untuk menunjukkan paket mana (berbasis 0) yang saat ini sedang dirender ke perangkat keras atau saat ini sedang diisi oleh perangkat keras pengambilan.

Sintaks

EVT_ACX_STREAM_GET_CURRENT_PACKET EvtAcxStreamGetCurrentPacket;

NTSTATUS EvtAcxStreamGetCurrentPacket(
  ACXSTREAM Stream,
  PULONG CurrentPacket
)
{...}

Parameter

Stream

Objek ACXSTREAM mewakili aliran audio yang dibuat oleh sirkuit. Aliran terdiri dari daftar elemen yang dibuat berdasarkan elemen sirkuit induk. Untuk informasi selengkapnya, lihat ACX - Ringkasan Objek ACX.

CurrentPacket

Indeks berbasis nol ke paket yang saat ini sedang dirender ke perangkat keras atau saat ini sedang diisi oleh perangkat keras penangkapan.

Menampilkan nilai

Mengembalikan STATUS_SUCCESS jika panggilan berhasil. Jika tidak, kode kesalahan akan menampilkan kode kesalahan yang sesuai. Untuk informasi selengkapnya, lihat Menggunakan Nilai NTSTATUS.

Keterangan

Contoh

Contoh penggunaan ditunjukkan di bawah ini.

    //
    // Init RT streaming callbacks.
    //
    ACX_RT_STREAM_CALLBACKS rtCallbacks;
    ACX_RT_STREAM_CALLBACKS_INIT(&rtCallbacks);

    rtCallbacks.EvtAcxStreamGetCurrentPacket = EvtStreamGetCurrentPacket;

    status = AcxStreamInitAssignAcxRtStreamCallbacks(StreamInit, &rtCallbacks);
PAGED_CODE_SEG
NTSTATUS
EvtStreamGetCurrentPacket(
    _In_ ACXSTREAM          Stream,
    _Out_ PULONG            CurrentPacket
)
{
    PSTREAM_CONTEXT ctx;

    PAGED_CODE();

    ctx = GetStreamContext(Stream);

    *CurrentPacket = ctx->CurrentPacket;

    return STATUS_SUCCESS;
}

Persyaratan ACX

Versi ACX minimum: 1.0

Untuk informasi selengkapnya tentang versi ACX, lihat Gambaran umum versi ACX.

Persyaratan

Persyaratan Nilai
Header acxstreams.h
IRQL PASSIVE_LEVEL

Lihat juga