IOCTL_AVCSTRM_CLASS - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// avcstrm.h

// CTL_CODE(0x0022, 0x093, METHOD_IN_DIRECT, FILE_ANY_ACCESS)
#define IOCTL_AVCSTRM_CLASS 0x0022024D
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ni-avcstrm-ioctl_avcstrm_class)

IOCTL_AVCSTRM_CLASS IOCTL

Description

An AV/C subunit driver uses the IRP_MJ_INTERNAL_DEVICE_CONTROL IRP, with the IoControlCode member set to IOCTL_AVCSTRM_CLASS, to communicate with avcstrm.sys. The driver has access to all operations provided by the AV/C Streaming filter driver (avcstrm.sys) through this request.

For more information about IRPs and IOCTLs, see Handling IRPs.

Parameters

Major code

Input buffer

On input, Irp->Parameters->Others.Arguments1 points to an AVC_STREAM_REQUEST_BLOCK structure. The Function member of the AVC_STREAM_REQUEST_BLOCK specifies the type of request. Do not set this member directly. Use the INIT_AVCSTRM_HEADER macro to initialize this member (as well as additional members of the AVC_STREAM_REQUEST_BLOCK structure). The CommandData member of the AVC_STREAM_REQUEST_BLOCK is a union that specifies the request-type-specific parameters of the request. The parameters and their meaning are documented with each request (function code). The AVCSTRM_FUNCTION enumeration provides a list of function codes supported by avcstrm.sys.

Input buffer length

Length of an AVC_STREAM_REQUEST_BLOCK structure.

Output buffer

On output, Irp->Parameters->Others.Arguments1 points to the AVC_STREAM_REQUEST_BLOCK structure passed as input. As part of completing the request, the bus driver fills in certain members of the CommandData union of the AVC_STREAM_REQUEST_BLOCK structure with information for the driver.

Output buffer length

Length of an AVC_STREAM_REQUEST_BLOCK structure.

Input/output buffer

Input/output buffer length

Status block

The information the AV/C Streaming driver returns in the I/O Status Block is documented with each request.

Remarks

Must be called at IRQL = PASSIVE_LEVEL.

See also

AVCSTRM_ABORT_STREAMING

AVCSTRM_CLOSE

AVCSTRM_GET_PROPERTY

AVCSTRM_GET_STATE

AVCSTRM_OPEN

AVCSTRM_READ

AVCSTRM_SET_PROPERTY

AVCSTRM_SET_STATE

AVCSTRM_WRITE