EVT_ACX_STREAM_ASSIGN_DRM_CONTENT_ID fungsi panggilan balik (acxstreams.h)

Peristiwa EVT_ACX_STREAM_ASSIGN_DRM_CONTENT_ID memberi tahu driver untuk menetapkan ID konten untuk tujuan streaming DRM.

Sintaks

EVT_ACX_STREAM_ASSIGN_DRM_CONTENT_ID EvtAcxStreamAssignDrmContentId;

NTSTATUS EvtAcxStreamAssignDrmContentId(
  ACXSTREAM Stream,
  ULONG ContentId,
  PACXDRMRIGHTS DrmRights
)
{...}

Parameter

Stream

Objek ACXSTREAM yang ada. Untuk informasi selengkapnya, lihat ACX - Ringkasan Objek ACX.

ContentId

Menentukan ID konten DRM nonzero yang ditetapkan ke aliran audio ACX oleh AcxDrmCreateContentMixed. Perhatikan bahwa ID konten nol mewakili aliran audio dengan hak konten DRM default, dan tidak dapat digunakan dengan fungsi ini.

DrmRights

Menentukan hak konten DRM yang ditetapkan ke aliran yang diidentifikasi oleh ContentId. Parameter ini adalah penunjuk ke struktur ACXDRMRIGHTS.

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 streaming callbacks.
    //
    ACX_STREAM_CALLBACKS_INIT(&streamCallbacks);
    ...
    streamCallbacks.EvtAcxStreamAssignDrmContentId = EvtStreamAssignDrmContentId;

    status = AcxStreamInitAssignAcxStreamCallbacks(StreamInit, &streamCallbacks);

...

_Use_decl_annotations_
PAGED_CODE_SEG
NTSTATUS
EvtStreamAssignDrmContentId(
    _In_ ACXSTREAM      Stream,
    _In_ ULONG          DrmContentId,
    _In_ PACXDRMRIGHTS  DrmRights
    )
{
    PSTREAM_CONTEXT ctx;

    PAGED_CODE();

    ctx = GetStreamContext(Stream);
    ASSERT(ctx);
    ASSERT(ctx->StreamEngine);

    return ctx->StreamEngine->AssignDrmContentId(DrmContentId, DrmRights);
}

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