EVT_ACX_STREAM_ASSIGN_DRM_CONTENT_ID回调函数 (acxstreams.h)

EVT_ACX_STREAM_ASSIGN_DRM_CONTENT_ID 事件告知驱动程序为 DRM 流式处理分配内容 ID。

语法

EVT_ACX_STREAM_ASSIGN_DRM_CONTENT_ID EvtAcxStreamAssignDrmContentId;

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

参数

Stream

现有的 ACXSTREAM 对象。 有关详细信息,请参阅 ACX - ACX 对象的摘要

ContentId

指定由 AcxDrmCreateContentMixed 分配给 ACX 音频流的非零 DRM 内容 ID。 请注意,内容 ID 为零表示具有默认 DRM 内容权限的音频流,不能用于此函数。

DrmRights

指定分配给 ContentId 标识的流的 DRM 内容权限。 此参数是指向 ACXDRMRIGHTS 结构的指针。

返回值

STATUS_SUCCESS如果调用成功,则返回 。 否则,它将返回相应的错误代码。 有关详细信息,请参阅 使用 NTSTATUS 值

备注

示例

示例用法如下所示。

    //
    // 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);
}

ACX 要求

最低 ACX 版本: 1.0

有关 ACX 版本的详细信息,请参阅 ACX 版本概述

要求

要求
Header acxstreams.h
IRQL PASSIVE_LEVEL

另请参阅