Streaming media devices

Overview of the Streaming media devices technology.

To develop Streaming media devices, you need these headers:

For the programming guide, see Streaming media devices.

Functions

Title Description
BdaCheckChanges function The BdaCheckChanges function verifies a new set of BDA topology changes before they are committed.
BdaCommitChanges function The BdaCommitChanges function commits the changes to BDA topology that have occurred since the last call to the BdaStartChanges function.
BdaCreateFilterFactory function The BdaCreateFilterFactory function adds the specified filter descriptor as a filter factory to the specified device and associates the filter factory with the specified BDA template topology.
BdaCreateFilterFactoryEx function The BdaCreateFilterFactoryEx function adds the specified filter descriptor as a filter factory to the specified device and associates the filter factory with the specified BDA template topology.
BdaCreatePin function The BdaCreatePin function creates a new pin in the specified filter.
BdaCreateTopology function The BdaCreateTopology function creates the topology between two pins.
BdaDeletePin function The BdaDeletePin function deletes a pin from the specified filter.
BdaFilterFactoryUpdateCacheData function The BdaFilterFactoryUpdateCacheData function updates the pin data cache for an instance of a filter.
BdaGetChangeState function The BdaGetChangeState function returns the current change state of BDA topology.
BdaInitFilter function The BdaInitFilter function initializes the BDA filter context associated with a filter instance.
BdaMethodCreatePin function The BdaMethodCreatePin function creates a pin factory.
BdaMethodCreateTopology function The BdaMethodCreateTopology function creates a template topology between two pins of a filter.
BdaMethodDeletePin function The BdaMethodDeletePin function deletes a pin factory.
BdaPropertyGetControllingPinId function The BdaPropertyGetControllingPinId function retrieves the identifier of a pin on which to control the properties, methods, and events of a specific node.
BdaPropertyGetPinControl function The BdaPropertyGetPinControl function retrieves either the identifier or type of a pin.
BdaPropertyNodeDescriptors function The BdaPropertyNodeDescriptors function retrieves a list of nodes in a template topology.
BdaPropertyNodeEvents function The BdaPropertyNodeEvents function retrieves a list of events that a node supports.
BdaPropertyNodeMethods function The BdaPropertyNodeMethods function retrieves a list of methods that a node supports.
BdaPropertyNodeProperties function The BdaPropertyNodeProperties function retrieves a list of properties that a node supports.
BdaPropertyNodeTypes function The BdaPropertyNodeTypes function retrieves a list of node types in a template topology.
BdaPropertyPinTypes function The BdaPropertyPinTypes function retrieves a list of pin types in a template topology.
BdaPropertyTemplateConnections function The BdaPropertyTemplateConnections function retrieves a list of connections that describe how pin types and node types are connected in a template topology.
BdaStartChanges function The BdaStartChanges function initiates the setting of new BDA topology changes.
BdaUninitFilter function The BdaUninitFilter function removes the BDA filter context from the associated filter instance.
BdaValidateNodeProperty function The BdaValidateNodeProperty function validates that a node property request is associated with a specific pin.
KoCreateInstance function The KoCreateInstance function creates an object of the class with the specified CLSID.
KoDeviceInitialize function The KoDeviceInitialize function adds a kernel COM create-item entry to the specified device object.
KoDriverInitialize function The KoDriverInitialize function initializes a driver object to handle the kernel streaming interface.
KoRelease function The KoRelease function decrements the reference count for the calling interface on an object.
KsAcquireCachedMdl function This function is used to acquire the MDL cached by the KS port driver. The function is used by a kernel mode driver to acquire the MDL for a pipeline-supplied sample generated by an Avstream driver.
KsAcquireControl function The KsAcquireControl function acquires the filter control mutex for Object.
KsAcquireDevice function The KsAcquireDevice function gains synchronous access for Device by acquiring the device mutex.
KsAcquireDeviceSecurityLock function The KsAcquireDeviceSecurityLock function acquires the security lock associated with a device object.
KsAcquireResetValue function The KsAcquireResetValue function retrieves the current reset state from an IOCTL_KS_RESET_STATE IRP.
KsAddDevice function The KsAddDevice function is the default AddDevice handler installed by KsInitializeDriver.
KsAddEvent function The KsAddEvent function adds an event to Object's event list.
KsAddIrpToCancelableQueue function The KsAddIrpToCancelableQueue function adds an IRP to a queue of cancelable IRPs, thus allowing the IRP to be canceled. If the IRP had been previously set to a canceled state, the KsAddIrpToCancelableQueue function completes the canceling of that IRP.
KsAddItemToObjectBag function The KsAddItemToObjectBag function adds an object or block of memory to the given object bag.
KsAddObjectCreateItemToDeviceHeader function The KsAddObjectCreateItemToDeviceHeader function adds the specified create-item to an empty item in the previously allocated create item list for this device header.
KsAddObjectCreateItemToObjectHeader function The KsAddObjectCreateItemToObjectHeader function adds the specified create-item to an empty item in the previously allocated create item list for this object header.
KsAllocateDefaultClock function The KsAllocateDefaultClock function allocates and initializes the default clock structure.
KsAllocateDefaultClockEx function The KsAllocateDefaultClockEx function allocates and initializes the default clock structure.
KsAllocateDeviceHeader function The KsAllocateDeviceHeader function allocates and initializes the required device extension header.
KsAllocateExtraData function The KsAllocateExtraData function is used with streaming IRPs to allocate a buffer to contain additional header data. A pointer to the allocated buffer is returned, and the buffer must eventually be freed by the caller.
KsAllocateObjectBag function The KsAllocateObjectBag function creates an object bag and associates it with a KSDEVICE.
KsAllocateObjectCreateItem function The KsAllocateObjectCreateItem function allocates a slot for the specified create item, optionally allocating space for and copying the create item data as well.
KsAllocateObjectHeader function The KsAllocateObjectHeader function initializes the required file context header.
KsCacheMedium function The KsCacheMedium function improves graph building performance of pins that use Mediums to define connectivity.
KsCancelIo function The KsCancelIo function cancels all IRPs on the specified cancel list. If an IRP on the list does not have a cancel routine, only the cancel bit is set in the IRP. The function can be called at IRQ level DISPATCH_LEVEL or lower.
KsCompletePendingRequest function The KsCompletePendingRequest function is used to complete an I/O request in response to which an AVStream dispatch function previously returned STATUS_PENDING.
KsCopyObjectBagItems function The KsCopyObjectBagItems function copies all items from one object bag into another.
KsCreateAllocator function The KsCreateAllocator function creates a handle to an allocator for the given sink connection handle. This function does not complete the IRP or set the status in the IRP.
KsCreateAllocator2 function Creates a handle to an allocator for the given sink connection handle. This function does not complete the IRP or set the status in the IRP.
KsCreateBusEnumObject function The KsCreateBusEnumObject function creates a demand-load bus enumerator object and initializes it for use with the demand-load bus enumerator services.
KsCreateClock function The KsCreateClock function creates a handle to a clock instance.
KsCreateClock2 function Creates a handle to a clock instance. Call this function after the Component Object Model (COM) is initialized.
KsCreateDefaultAllocator function Given a validated IRP_MJ_CREATE request, the KsCreateDefaultAllocator function creates a default allocator that uses the specified memory pool and associates the IoGetCurrentIrpStackLocation(Irp)->FileObject with the allocator using an internal dispatch table (KSDISPATCH_TABLE).
KsCreateDefaultAllocatorEx function Creates a default allocator that uses the specified memory pool and associates the IoGetCurrentIrpStackLocation(pIrp)->FileObject with this allocator using an internal dispatch table (KSDISPATCH_TABLE).
KsCreateDefaultClock function Given an IRP_MJ_CREATE request, the KsCreateDefaultClock function creates a default clock that uses the system clock as a time base and associates the IoGetCurrentIrpStackLocation(Irp)->FileObject with the clock using an internal dispatch table (KSDISPATCH_TABLE). Does not complete the IRP or set the status in the IRP.The KsCreateDefaultClock function can only be called at PASSIVE_LEVEL.
KsCreateDefaultSecurity function The KsCreateDefaultSecurity function creates a security descriptor with default security, optionally inheriting parameters from a parent security descriptor.
KsCreateDevice function The KsCreateDevice function creates an AVStream device.
KsCreateFilterFactory function The KsCreateFilterFactory function adds a filter factory to a given device.
KsCreatePin function The KsCreatePin function passes a connection request to a device, creating a pin instance. This function can only be called at PASSIVE_LEVEL for kernel-mode clients.
KsCreatePin2 function Passes a connection request to a device, creating a pin instance.
KsCreateTopologyNode function The KsCreateTopologyNode function creates a handle to a topology node instance. The function can only be called at PASSIVE_LEVEL.
KsCreateTopologyNode2 function Creates a handle to a topology node instance.
KsDecrementCountedWorker function Decrements the current worker count of a worker previous created by KsRegisterCountedWorker. This should be called after each task within a worker has been completed.
KsDefaultAddEventHandler function The KsDefaultAddEventHandler function is a default routine to handle event 'add' requests.
KsDefaultDeviceIoCompletion function The KsDefaultDeviceIoCompletion function is used to return a default response and to complete any device I/O control.
KsDereferenceBusObject function Dereferences the bus Physical Device Object.
KsDereferenceSoftwareBusObject function The KsDereferenceSoftwareBusObject function decrements the reference count of the demand-load bus enumerator object's PDO.
KsDeviceGetBusData function The KsDeviceGetBusData function reads data from the bus where the given AVStream device resides.
KsDeviceGetFirstChildFilterFactory function The KsDeviceGetFirstChildFilterFactory function returns the first child filter factory belonging to a given AVStream device.
KsDeviceGetOuterUnknown function The KsDeviceGetOuterUnknown function returns the outer IUnknown of the AVStream device specified by Device.
KsDeviceRegisterAdapterObject function The KsDeviceRegisterAdapterObject function registers a DMA adapter object with AVStream for performing scatter/gather DMA on the specified device. All drivers compiled for Win64 should use IKsDeviceFunctions
KsDeviceRegisterAggregatedClientUnknown function This inline function is a wrapper for KsRegisterAggregatedClientUnknown.
KsDeviceRegisterThermalDispatch function This function is used by the Avstream miniport driver to register callbacks for thermal notifications with the KS port driver.
KsDeviceSetBusData function The KsDeviceSetBusData function writes data to the bus on which the specified AVStream device resides.
KsDisableEvent function The KsDisableEvent function disables events requested through IOCTL_KS_DISABLE_EVENT.
KsDiscardEvent function The KsDiscardEvent function discards the memory used by an event entry after the objects have been dereferenced.
KsDispatchFastIoDeviceControlFailure function The KsDispatchFastIoDeviceControlFailure function is used in a KSDISPATCH_TABLE.FastDeviceIoControl entry that are not handled. The function should always return FALSE.
KsDispatchFastReadFailure function The KsDispatchFastReadFailure function is used in a KSDISPATCH_TABLE.FastRead entry when fast I/O read is not handled. The function should always return FALSE.
KsDispatchInvalidDeviceRequest function The KsDispatchInvalidDeviceRequest function is used in KSDISPATCH_TABLE entries that are not handled and that need to return STATUS_INVALID_DEVICE_REQUEST.
KsDispatchIrp function KsDispatchIrp calls a dispatch routine corresponding to the function code of the specified IRP. KsDispatchIrp then returns the status code from this call.
KsDispatchQuerySecurity function The KsDispatchQuerySecurity function is used in the KSDISPATCH_TABLE.QuerySecurity entry to handle querying about the current security descriptor.
KsDispatchSetSecurity function The KsDispatchSetSecurity function is used in the KSDISPATCH_TABLE.SetSecurity entry to handle setting the current security descriptor.
KsDispatchSpecificMethod function The KsDispatchSpecificMethod function dispatches a method to a specific handler. The function assumes that the caller has previously dispatched the IRP to a handler through the KsMethodHandler function. The function can only be called at PASSIVE_LEVEL.
KsDispatchSpecificProperty function The KsDispatchSpecificProperty function dispatches the property to a specific handler.
KsEnableEvent function The KsEnableEvent function enables events requested through IOCTL_KS_ENABLE_EVENT. It responds to all event identifiers defined by the sets. This function can only be called at PASSIVE_LEVEL.
KsEnableEventWithAllocator function The KsEnableEventWithAllocator function enables events requested through IOCTL_KS_ENABLE_EVENT but also allows an optional allocator callback to be used to provide a buffer for the parameters.
KsFastMethodHandler function The KsFastMethodHandler function handles fast methods requested through IOCTL_KS_METHOD. It responds to all method identifiers defined by the sets that are also contained in the fast I/O list. This function can only be called at PASSIVE_LEVEL.
KsFastPropertyHandler function The KsFastPropertyHandler function handles fast property requests through IOCTL_KS_PROPERTY. It responds to all property identifiers defined by the sets that are also contained in the fast I/O list. This function can only be called at PASSIVE_LEVEL.
KsFilterAcquireControl function The KsFilterAcquireControl function acquires the filter control mutex for the AVStream filter specified by Filter.
KsFilterAcquireProcessingMutex function The KsFilterAcquireProcessingMutex function acquires the processing mutex for a specified AVStream filter.
KsFilterAddEvent function The KsFilterAddEvent function adds an event to Filter's event list.
KsFilterAddTopologyConnections function The KsFilterAddTopologyConnections function adds new topology connections to a filter.
KsFilterAttemptProcessing function The KsFilterAttemptProcessing function attempts to initiate processing on Filter.
KsFilterCreateNode function The KsFilterCreateNode function creates a new topology node on the specified filter.
KsFilterCreatePinFactory function The KsFilterCreatePinFactory function creates a new pin factory on the specified filter.
KsFilterFactoryAddCreateItem function The KsFilterFactoryAddCreateItem function adds a new create item for the specified filter factory.
KsFilterFactoryGetDevice function The KsFilterFactoryGetDevice function returns the AVStream device to which FilterFactory belongs.
KsFilterFactoryGetFirstChildFilter function The KsFilterFactoryGetFirstChildFilter function returns the first instantiated filter created by FilterFactory.
KsFilterFactoryGetNextSiblingFilterFactory function The KsFilterFactoryGetNextSiblingFilterFactory function returns the next filter factory belonging to the parent device of FilterFactory.
KsFilterFactoryGetOuterUnknown function The KsFilterFactoryGetOuterUnknown function returns the outer IUnknown of the specified filter factory.
KsFilterFactoryGetParentDevice function The KsFilterFactoryGetParentDevice function returns the parent device of the given filter factory.
KsFilterFactoryGetSymbolicLink function The KsFilterFactoryGetSymbolicLink function returns the symbolic link associated with a given filter factory.
KsFilterFactoryRegisterAggregatedClientUnknown function This inline function is a wrapper for KsRegisterAggregatedClientUnknown.
KsFilterFactorySetDeviceClassesState function The KsFilterFactorySetDeviceClassesState function enables or disables the device classes that have been registered by a given filter factory.
KsFilterFactoryUpdateCacheData function The KsFilterFactoryUpdateCacheData function updates the FilterData registry key and the Medium cache (a set of registry keys) for a given filter factory.
KsFilterGenerateEvents function The KsFilterGenerateEvents function generates events of an indicated type that are present in Filter's event list.
KsFilterGetAndGate function The KsFilterGetAndGate function returns Filter's AND gate.
KsFilterGetChildPinCount function The KsFilterGetChildPinCountfunctionreturns the number of pins of a given type that are currently instantiated on a given filter.
KsFilterGetDevice function The KsFilterGetDevice function returns the AVStream device to which Filter belongs.
KsFilterGetFirstChildPin function The KsFilterGetFirstChildPin function returns the first instantiated pin of type PinID on the filter specified by Filter.
KsFilterGetNextSiblingFilter function The KsFilterGetNextSiblingFilter function returns the next instantiated filter belonging to the parent filter factory of Filter.
KsFilterGetOuterUnknown function The KsFilterGetOuterUnknown function returns the outer IUnknown interface of the filter specified by Filter.
KsFilterGetParentFilterFactory function The KsFilterGetParentFilterFactory function returns the parent filter factory of the given filter.
KsFilterRegisterAggregatedClientUnknown function This inline function is a wrapper for KsRegisterAggregatedClientUnknown.
KsFilterRegisterPowerCallbacks function The KsFilterRegisterPowerCallbacks function registers power management callbacks for Filter.
KsFilterReleaseControl function The KsFilterReleaseControl function releases the control mutex for the AVStream filter specified by Filter.
KsFilterReleaseProcessingMutex function The KsFilterReleaseProcessingMutex function releases the processing mutex for the AVStream filter specified by Filter.
KsForwardAndCatchIrp function The KsForwardAndCatchIrp function forwards an IRP to the specified driver after initializing the next stack location, and regains control of the IRP on completion from that driver.
KsForwardIrp function The KsForwardIrp function forwards an IRP to the specified driver after initializing the next stack location and setting the file object.
KsFreeDefaultClock function The KsFreeDefaultClock function frees a default clock structure previously allocated with KsAllocateDefaultClock, taking into account any currently running timer DPCs.
KsFreeDeviceHeader function The KsFreeDeviceHeader function cleans up and frees a previously allocated device header.
KsFreeEventList function The KsFreeEventList function handles freeing all events from a specified list, with the assumption that these events are composed of KSEVENT_ENTRY structures. This function can only be called at PASSIVE_LEVEL.
KsFreeObjectBag function The KsFreeObjectBag function empties and frees an object bag.
KsFreeObjectCreateItem function Frees the slot for the specified create item.
KsFreeObjectCreateItemsByContext function Frees all create items with a specific context.
KsFreeObjectHeader function The KsFreeObjectHeader function cleans up and frees a previously allocated object header.
KsGateAddOffInputToAnd function The KsGateAddOffInputToAnd function adds a new input in the OFF state to a given AND gate.
KsGateAddOffInputToOr function The KsGateAddOffInputToOr function adds a new input in the OFF state to a given OR gate.
KsGateAddOnInputToAnd function The KsGateAddOnInputToAnd function adds a new input in the ON state to a given AND gate.
KsGateAddOnInputToOr function The KsGateAddOnInputToOr function adds a new input in the ON state to a given OR gate.
KsGateCaptureThreshold function The KsGateCaptureThreshold function is used to capture an ON input of an AND gate specified by Gate.
KsGateGetStateUnsafe function The KsGateGetStateUnsafe function returns the state of the given gate (open or closed) in an unsafe manner, that is without regard to synchronization.
KsGateInitialize function The KsGateInitialize function initializes a gate for use.
KsGateInitializeAnd function The KsGateInitializeAnd function initializes a KSGATE structure as an AND gate and attaches it to the OR gate specified by NextOrGate.
KsGateInitializeOr function The KsGateInitializeOr function initializes a KSGATE structure as an OR gate and attaches it to the AND gate specified by NextAndGate.
KsGateRemoveOffInputFromAnd function The KsGateRemoveOffInputFromAnd function removes an existing input that is in the OFF state from an AND gate.
KsGateRemoveOffInputFromOr function The KsGateRemoveOffInputFromOr function removes an existing input that is in the OFF state from an OR gate.
KsGateRemoveOnInputFromAnd function The KsGateRemoveOnInputFromAnd function removes an existing input that is in the ON state from an AND gate.
KsGateRemoveOnInputFromOr function The KsGateRemoveOnInputFromOr function removes an existing input that is in the ON state from an OR gate.
KsGateTerminateAnd function The KsGateTerminateAnd function deletes an existing AND gate and removes an input from any attached OR gate.
KsGateTerminateOr function The KsGateTerminateOr function deletes an existing OR gate and removes an input from any attached AND gate.
KsGateTurnInputOff function The KsGateTurnInputOff function turns off an existing input to Gate.
KsGateTurnInputOn function The KsGateTurnInputOn function turns on an existing input to Gate.
KsGenerateDataEvent function The KsGenerateDataEvent function generates one of the standard event notifications when given an event entry structure and callback data.
KsGenerateEvent function The KsGenerateEvent function generates a standard event notification given an event entry structure.
KsGenerateEventList function The KsGenerateEventList function enumerates the event list and searches for the specified event to generate.
KsGenerateEvents function The KsGenerateEvents function generates events of an indicated type that are present in Object's event list.
KsGenerateThermalEvent function This function is used by clients (miniport drivers) that do not want to subscribe to the thermal manager, but want to do their own thermal management.
KsGetBusEnumIdentifier function The KsGetBusEnumIdentifier function retrieves the software bus enumerator identifier for the bus device associated with the given IRP.
KsGetBusEnumParentFDOFromChildPDO function The KsGetBusEnumParentFDOFromChildPDO function retrieves the FDO of the parent of the given child PDO.
KsGetBusEnumPnpDeviceObject function The KsGetBusEnumPnpDeviceObject function retrieves the Plug and Play device object attached to the given device object.
KsGetDefaultClockState function The KsGetDefaultClockState function gets the current state of the clock.The function can be called at DISPATCH_LEVEL.
KsGetDefaultClockTime function The KsGetDefaultClockTime function gets the current time of the clock.The function can be called at DISPATCH_LEVEL.
KsGetDevice function The KsGetDevice function returns the AVStream device structure to which Object belongs.
KsGetDeviceForDeviceObject function The KsGetDeviceForDeviceObject function returns the AVStream device structure for a given functional device object.
KsGetFilterFromFileObject function The KsGetFilterFromFileObject function returns the AVStream filter object associated with FileObject.
KsGetFilterFromIrp function The KsGetFilterFromIrp function returns the AVStream filter object associated with a given IRP.
KsGetFirstChild function The KsGetFirstChild function returns the first AVStream child object of Object.
KsGetImageNameAndResourceId function The KsGetImageNameAndResourceId function returns the image name and resource identifier that corresponds to the RegKey handle.
KsGetMediaType function The KsGetMediaType function retrieves information about a media type on a pin factory identifier.
KsGetMediaTypeCount function The KsGetMediaTypeCount function returns the number of available media types on a pin factory identifier.
KsGetMultiplePinFactoryItems function The KsGetMultiplePinFactoryItems function retrieves pin property items in a variable length data buffer.
KsGetNextSibling function The KsGetNextSibling function returns the next sibling of a given object.
KsGetNodeIdFromIrp function The KsGetNodeIdFromIrp function returns the node ID of the node to which Irp was submitted.
KsGetObjectFromFileObject function The KsGetObjectFromFileObject function returns the AVStream object cast to PVOID from FileObject.
KsGetObjectTypeFromFileObject function The KsGetObjectTypeFromFileObject function returns the AVStream object type that is associated with a given file object.
KsGetObjectTypeFromIrp function The KsGetObjectTypeFromIrp function returns the AVStream object type that is associated with a given IRP.
KsGetOuterUnknown function The KsGetOuterUnknown function returns the outer IUnknown of a given AVStream object.
KsGetParent function The KsGetParent function acquires the parent of the given object.
KsGetPinFromFileObject function The KsGetPinFromFileObject function returns the AVStream pin object associated with FileObject.
KsGetPinFromIrp function The KsGetPinFromIrp function returns the AVStream pin object associated with the given IRP.
KsHandleSizedListQuery function The KsHandleSizedListQuery function, depending on the length of the system buffer, returns either the size of the buffer needed, number of entries in the specified data list, or copies the entries themselves.
KsIncrementCountedWorker function Increments the current worker count, and optionally queues the counted work item with the worker previously created by KsRegisterCountedWorker.
KsInitializeDevice function The KsInitializeDevice function is called by AVStream to initialize the AVStream device class from within KsCreateDevice.
KsInitializeDeviceProfile function The KsInitializeDeviceProfile API must be called by all miniport drivers to initialize the profile store and publish the device profiles.
KsInitializeDriver function The KsInitializeDriver function initializes the driver object of an AVStream minidriver.
KsInstallBusEnumInterface function The KsInstallBusEnumInterface function installs an interface to the demand-load bus enumerator object.
KsIsBusEnumChildDevice function The KsIsBusEnumChildDevice function determines if the given device object is a child device of the demand-load bus enumerator object.
KsLoadResource function Copies (loads) a resource from the given image.
KsMapModuleName function The KsMapModuleName function returns the image name and resource identifier that corresponds to the PhysicalDeviceObject and ModuleName parameters.
KsMergeAutomationTables function The KsMergeAutomationTables function merges two automation tables.
KsMethodHandler function The KsMethodHandler function handles methods requested through IOCTL_KS_METHOD. It works with all method identifiers defined by the sets. The function can only be called at PASSIVE_LEVEL.
KsMethodHandlerWithAllocator function The KsMethodHandlerWithAllocator functions performs the same handling as KsMethodHandler, with the same restrictions, but allows an optional allocator callback to be used to provide a buffer for the parameters.
KsMoveIrpsOnCancelableQueue function The KsMoveIrpsOnCancelableQueue function moves the specified IRPs from the SourceList parameter to the DestinationList parameter depending on the value returned from the minidriver-defined KStrIrpListCallback function.
KsNullDriverUnload function The KsNullDriverUnload function is a default function a driver can use when it has no other tasks to do in its unload function, but must still allow the device to be unloaded by its presence.
KsOpenDefaultDevice function The KsOpenDefaultDevice function opens a handle to the first device that is listed in the specified Plug and Play (PnP) category.
KsPersistDeviceProfile function The KsPersistDeviceProfile API commits the profile information to the persistent store.
KsPinAcquireControl function The KsPinAcquireControl function acquires the control mutex for the AVStream pin specified by Pin.
KsPinAcquireProcessingMutex function The KsPinAcquireProcessingMutex function acquires the processing mutex for the AVStream pin specified by Pin.
KsPinAddEvent function The KsPinAddEvent function adds a specified event to Pin's event list.
KsPinAttachAndGate function The KsPinAttachAndGate function connects Pin as an input to a previously initialized AND gate, and connects AndGate as an input to the relevant filter's AND gate.
KsPinAttachOrGate function The KsPinAttachOrGate function connects Pin as an input to a previously initialized OR gate, and connects OrGate as an input to the relevant filter's AND gate.
KsPinAttemptProcessing function The KsPinAttemptProcessing function is used to resume processing on a specific pin on a pin-centric filter. It attempts to initiate processing on Pin by sending a processing dispatch call to Pin's processing object.
KsPinDataIntersection function The KsPinDataIntersection function handles the KSPROPERTY_PIN_DATAINTERSECTION property through a callback function and performs much of the initial validation of the parameters that are passed.
KsPinDataIntersectionEx function The KsPinDataIntersectionEx function handles the KSPROPERTY_PIN_DATAINTERSECTION through a callback function.
KsPinGenerateEvents function The KsPinGenerateEvents function generates events of an indicated type that are present in Pin's event list.
KsPinGetAndGate function The KsPinGetAndGate function returns the processing control gate for Pin.
KsPinGetAvailableByteCount function The KsPinGetAvailableByteCount routine outputs the number of bytes of input data ahead of the leading edge and the number of bytes of output buffer ahead of the leading edge, both for the queue of a caller-specified pin.
KsPinGetConnectedFilterInterface function The KsPinGetConnectedFilterInterface function queries the filter to which Pin is connected in order to obtain a pointer to a COM interface.
KsPinGetConnectedPinDeviceObject function The KsPinGetConnectedPinDeviceObject function returns the device object at the top of the device stack corresponding to the sink pin attached to the source pin Pin.
KsPinGetConnectedPinFileObject function The KsPinGetConnectedPinFileObject function returns the file object for the pin to which Pin is connected. Works only for source pins.
KsPinGetConnectedPinInterface function The KsPinGetConnectedPinInterface function queries the pin to which Pin is connected for a COM style interface.
KsPinGetCopyRelationships function The KsPinGetCopyRelationships function returns copy relationship information for a pin that is contained within a pin-centric filter.
KsPinGetDevice function The KsPinGetDevice function returns the AVStream device to which Pin belongs.
KsPinGetFirstCloneStreamPointer function The KsPinGetFirstCloneStreamPointer function returns the first cloned stream pointer on Pin.
KsPinGetLeadingEdgeStreamPointer function The KsPinGetLeadingEdgeStreamPointer function acquires the leading edge stream pointer for the queue associated with the given pin.
KsPinGetNextSiblingPin function The KsPinGetNextSiblingPin function returns the next instantiated pin of the same type and on the same filter as Pin.
KsPinGetOuterUnknown function The KsPinGetOuterUnknown function returns the outer IUnknown of the pin specified by Pin.
KsPinGetParentFilter function The KsPinGetParentFilter function returns the parent filter of Pin.
KsPinGetReferenceClockInterface function The KsPinGetReferenceClockInterface function returns a COM style interface to the reference clock associated with Pin. This interface pointer will be an IKsReferenceClock interface.
KsPinGetTrailingEdgeStreamPointer function The KsPinGetTrailingEdgeStreamPointer function acquires the trailing edge stream pointer for the queue associated with the specified pin.
KsPinHandshake function The KsPinHandshake function attempts a protocol handshake with a connected pin.
KsPinPropertyHandler function The KsPinPropertyHandler function performs standard handling of the static members of the KSPROPSETID_Pin property set. This handling does not include KSPROPERTY_PIN_CINSTANCES or KSPROPERTY_PIN_DATAINTERSECTION.
KsPinRegisterAggregatedClientUnknown function This inline function is a wrapper for KsRegisterAggregatedClientUnknown.
KsPinRegisterFrameReturnCallback function The KsPinRegisterFrameReturnCallback function registers a frame return callback with AVStream for a given pin.
KsPinRegisterHandshakeCallback function The KsPinRegisterHandshakeCallback function registers a minidriver-provided callback routine for a given pin.
KsPinRegisterIrpCompletionCallback function The KsPinRegisterIrpCompletionCallback function registers a minidriver-defined callback routine for a specified pin.
KsPinRegisterPowerCallbacks function The KsPinRegisterPowerCallbacks function registers power management callbacks for Pin.
KsPinReleaseControl function The KsPinReleaseControl function releases the control mutex for the AVStream pin specified by Pin.
KsPinReleaseProcessingMutex function The KsPinReleaseProcessingMutex function releases the processing mutex for the AVStream pin specified by Pin.
KsPinSetPinClockTime function The KsPinSetPinClockTime function sets the current time on the clock exposed by Pin.
KsPinSubmitFrame function If a pin has been placed into injection mode by a call to KsPinRegisterFrameReturnCallback, the KsPinSubmitFrame function submits a frame directly into the transport circuit.
KsPinSubmitFrameMdl function If a pin has been placed into injection mode by a call to KsPinRegisterFrameReturnCallback, the KsPinSubmitFrameMdl function submits a frame directly into the transport circuit.
KsProbeStreamIrp function The KsProbeStreamIrp function makes the specified modifications to the input and output buffers of the given IRP based on the flags passed, and it then validates the stream header.
KsProcessPinUpdate function The KsProcessPinUpdate function is called from within a filter-centric filter's AVStrMiniFilterProcess dispatch to update a process pin.
KsPropertyHandler function Drivers call KsPropertyHandler function for IRP handling.
KsPropertyHandlerWithAllocator function The KsPropertyHandlerWithAllocator performs the same handling as KsPropertyHandler, with the same restrictions, but allows an optional allocator callback to be used to provide a buffer for the parameters.
KsPublishDeviceProfile function The KsPublishDeviceProfile API is called to publish device profile information.
KsQueryDevicePnpObject function The KsQueryDevicePnpObject function returns the PnP device object that can be stored in the device header. This is the next device object on the PnP stack and is the device object that PnP requests are forwarded to if KsDefaultDispatchPnp is used.
KsQueryInformationFile function The KsQueryInformationFile function performs an information query against the specified file object. The function attempts to use FastIoDispatch if possible, or it generates an information request against the device object.
KsQueryObjectAccessMask function The KsQueryObjectAccessMask function returns the access originally granted to the first client that created a handle on the associated object. Access cannot be changed by duplicating handles.
KsQueryObjectCreateItem function The KsQueryObjectCreateItem function returns the create item assigned to the object when created.
KsQuerySoftwareBusInterface function The KsQuerySoftwareBusInterface function creates a buffer from the paged pool and copies the reference string associated with the demand-load bus enumerator object's PDO into the buffer.
KsQueueWorkItem function The KsQueueWorkItem function queues the specified work item with a worker previous created by the KsRegisterWorker function.
KsReadFile function The KsReadFile function performs a read against the specified file object.
KsRecalculateStackDepth function The KsRecalculateStackDepth function recalculates the maximum stack depth required by the underlying device object based on all of the objects that have set a target device (they have added themselves to the object list on the underlying device object using the KsSetTargetDeviceObject function). If the PnP device object has been set on the underlying device header using KsSetDevicePnpAndBaseObject, that device is also taken into account when calculating the maximum stack depth.
KsReferenceBusObject function References the bus Physical device object.
KsReferenceSoftwareBusObject function The KsReferenceSoftwareBusObject function increments the reference count of the demand-load bus enumerator object's PDO.
KsRegisterAggregatedClientUnknown function In a manner very similar to COM, the KsRegisterAggregatedClientUnknown function aggregates two objects
KsRegisterCountedWorker function Handles clients registering for use of a thread.
KsRegisterFilterWithNoKSPins function The KsRegisterFilterWithNoKSPins function registers with DirectShow filters that have no kernel streaming pins and, therefore, do not stream in kernel mode.
KsRegisterWorker function The KsRegisterWorker function handles clients registering for use of a thread.
KsReleaseCachedMdl function The KsReleaseCachedMdl function is used to release the MDL acquired by the KsAcquireCachedMdl call.
KsReleaseControl function The KsReleaseControl function releases the control mutex for Object.
KsReleaseDevice function The KsReleaseDevice function releases the device mutex and exits the critical region.
KsReleaseDeviceSecurityLock function The KsReleaseDeviceSecurityLock function releases a previously acquired security lock on the device object header.
KsReleaseIrpOnCancelableQueue function The KsReleaseIrpOnCancelableQueue function releases an acquired IRP that is already on a queue that can be canceled.
KsRemoveBusEnumInterface function The KsRemoveBusEnumInterface function removes an interface to the demand-load bus enumerator object.
KsRemoveIrpFromCancelableQueue function The KsRemoveIrpFromCancelableQueue function pops the next noncanceled IRP from the specified queue that can be canceled and removes its cancel status.
KsRemoveItemFromObjectBag function The KsRemoveItemFromObjectBag function removes an item from an object bag.
KsRemoveSpecificIrpFromCancelableQueue function The KsRemoveSpecificIrpFromCancelableQueue function removes the specified IRP from the specified queue. This is performed on an IRP that was previously acquired using KsRemoveIrpFromCancelableQueue, but that was not actually removed from the queue.
KsResolveRequiredAttributes function The KsResolveRequiredAttributes function searches the attributes list that is attached to a data range for specified attributes and ensures that all specified attributes were found.
KsServiceBusEnumCreateRequest function The KsServiceBusEnumCreateRequest function services IRP_MJ_CREATE requests for the software bus device interface.
KsServiceBusEnumPnpRequest function The KsServiceBusEnumPnpRequest function services IRP_MJ_PNP requests on behalf of the demand-load bus enumerator object that was created with KsCreateBusEnumObject.
KsSetDefaultClockState function The KsSetDefaultClockState function sets the current state of the clock that is used to reflect the current state of the underlying filter pin.
KsSetDefaultClockTime function The KsSetDefaultClockTime function sets the current time of the clock.
KsSetDevicePnpAndBaseObject function The KsSetDevicePnpAndBaseObject function sets the PnP device object in the device header, which is the next device object on the PnP stack and is the device object that PnP requests are forwarded to if KsDefaultDispatchPnp is used.
KsSetInformationFile function The KsSetInformationFile function performs an information set against the specified file object. The function attempts to use FastIoDispatch if possible, or it generates an information set against the device object.
KsSetMajorFunctionHandler function The KsSetMajorFunctionHandler function sets the handler for a specified major function to use the internal dispatching.
KsSetPowerDispatch function Sets the power dispatch function to be called when the driver object receives an IRP_MJ_POWER IRP.
KsSetTargetDeviceObject function The KsSetTargetDeviceObject function sets the target device object of an object. The function adds the object header to a list of object headers that have target devices.
KsSetTargetState function Sets the enabled state of a target device associated with the specified object header.
KsStreamIo function The KsStreamIo function performs a stream read or write against the specified file object. The function attempts to use FastIoDispatch if possible, or it generates a read or write request against the device object.
KsStreamPointerAdvance function The KsStreamPointerAdvance function advances a stream pointer to the next data frame.
KsStreamPointerAdvanceOffsets function The KsStreamPointerAdvanceOffsets function advances the offsets of StreamPointer.
KsStreamPointerAdvanceOffsetsAndUnlock function The KsStreamPointerAdvanceOffsetsAndUnlock function advances StreamPointer the specified number of bytes into the stream (adjusting the OffsetIn and OffsetOut fields of StreamPointer as requested) and unlocks it.
KsStreamPointerCancelTimeout function The KsStreamPointerCancelTimeout function cancels a previously scheduled time-out callback on the specified stream pointer.
KsStreamPointerClone function The KsStreamPointerClone function creates a clone of a given stream pointer.
KsStreamPointerDelete function The KsStreamPointerDelete function deletes a clone stream pointer, releasing a reference on the frame to which this stream pointer referred.
KsStreamPointerGetIrp function The KsStreamPointerGetIrp function returns the IRP associated with the frame that is referenced by the given stream pointer.
KsStreamPointerGetMdl function The KsStreamPointerGetMdl function returns the MDL associated with the frame referenced by StreamPointer.
KsStreamPointerGetNextClone function The KsStreamPointerGetNextClone function returns the clone stream pointer that was cloned immediately after the specified clone.
KsStreamPointerLock function The KsStreamPointerLock function attempts to lock the specified stream pointer.
KsStreamPointerScheduleTimeout function The KsStreamPointerScheduleTimeout function registers a timeout callback with AVStream for the given stream pointer.
KsStreamPointerSetStatusCode function The KsStreamPointerSetStatusCode function allows specification of a successful or unsuccessful error code with which to complete the given IRP.
KsStreamPointerUnlock function The KsStreamPointerUnlock function unlocks a stream pointer that has previously been locked by an acquisition function (KsGetXxxEdgeStreamPointer) or by KsStreamPointerLock.
KsSynchronousDeviceControl function The KsSynchronousDeviceControl function issues a synchronous device I/O control operation to the KS object that is specified by a file handle.
KsSynchronousIoControlDevice function The KsSynchronousIoControlDevice function performs a synchronous device I/O control on the target device object. It waits in a nonalertable state until the I/O completes. This function can only be called at PASSIVE_LEVEL.
KsTerminateDevice function The KsTerminateDevice function removes an AVStream device.
KsTopologyPropertyHandler function The KsTopologyPropertyHandler function performs standard handling of the static members of the KSPROPSETID_Topology Property Set. The function uses the KSTOPOLOGY structure, which describes the set of information that is returned by this property set.
KsUnregisterWorker function The KsUnregisterWorker function allows clients to unregister a worker.
KsUnserializeObjectPropertiesFromRegistry function The KsUnserializeObjectPropertiesFromRegistry function, when given a destination object and a registry path, enumerates the named values and applies them as serialized data to the specified property sets listed in the serialized data.
KsValidateAllocatorCreateRequest function The KsValidateAllocatorCreateRequest function validates an IRP_MJ_CREATE request as an allocator request and returns the create structure associated with the request on success.
KsValidateAllocatorFramingEx function For system use only.
KsValidateClockCreateRequest function The KsValidateClockCreateRequest function validates the clock creation request and returns the create structure associated with the request.This can only be called at PASSIVE_LEVEL.
KsValidateConnectRequest function The KsValidateConnectRequest function validates a connection request and returns a pointer to the connection structure associated with the request.This function can only be called at PASSIVE_LEVEL.
KsValidateTopologyNodeCreateRequest function The KsValidateTopologyNodeCreateRequest function validates a topology node creation request and returns the create structure associated with the request. The function can only be called at PASSIVE_LEVEL.
KsWriteFile function The KsWriteFile function performs a write against the specified file object.
StreamClassAbortOutstandingRequests function The StreamClassAbortOutstandingRequests routine aborts all outstanding requests, either to a particular stream, or to the entire driver.
StreamClassCallAtNewPriority function The StreamClassCallAtNewPriority routine schedules a routine to be called at a different priority.
StreamClassCompleteRequestAndMarkQueueReady function The StreamClassCompleteRequestAndMarkQueueReady routine completes a request, and signals the class driver that the minidriver is ready to receive a new request of the same type.
StreamClassDebugAssert function A minidriver can use the StreamClassDebugAssert routine in a checked build environment to fail an assert, causing the stream class driver to output a debug message and break into the kernel debugger.
StreamClassDebugPrint function In a checked build environment, the minidriver can use the StreamClassDebugPrint routine to print debug messages to the application window and to the Debugger Command window.
StreamClassDeviceNotification function Minidrivers use the StreamClassDeviceNotification routine to notify the class driver that it has completed a stream request, or that an event has occurred.
StreamClassFilterReenumerateStreams function Obsolete. Do not use.
StreamClassGetDmaBuffer function The StreamClassGetDmaBuffer routine returns a pointer to the DMA buffer that the class driver allocates for the minidriver.
StreamClassGetNextEvent function Minidrivers can use the StreamClassGetNextEvent routine to search the event queue of a device or of a particular stream.
StreamClassGetPhysicalAddress function The StreamClassGetPhysicalAddress routine translates a virtual memory address to a physical memory address and locks the corresponding physical memory for a DMA operation.
StreamClassQueryMasterClock function When the minidriver calls the StreamClassQueryMasterClock routine, the class driver queries the appropriate time value of the master clock asynchronously, and passes the result to the routine passed in the ClockCallbackRoutine parameter.
StreamClassQueryMasterClockSync function The minidriver may call the StreamClassQueryMasterClockSync routine to synchronously query a stream's master clock.
StreamClassReadWriteConfig function The StreamClassReadWriteConfig routine reads or writes configuration data for the minidriver's parent bus driver.
StreamClassReenumerateStreams function Obsolete. Do not use.
StreamClassRegisterAdapter function The StreamClassRegisterAdapter routine registers a stream class minidriver.
StreamClassRegisterFilterWithNoKSPins function The StreamClassRegisterFilterWithNoKSPins routine is used to register filter drivers with Microsoft DirectShow that have no kernel streaming pins and, therefore, do not stream in kernel mode.
StreamClassScheduleTimer function The minidriver calls the StreamClassScheduleTimer routine to schedule a timer, and to specify a routine that is called when the timer expires.
StreamClassStreamNotification function Streams use the StreamClassStreamNotification routine to notify the class driver that it has completed a stream request, or that an event has occurred.
USBCAMD_AdapterReceivePacket function The USBCAMD_AdapterReceivePacket function allows USBCAMD to process an adapter-based stream request block (SRB).
USBCAMD_ControlVendorCommand function The USBCAMD_ControlVendorCommand function sends vendor-specific commands to the control pipe.
USBCAMD_Debug_LogEntry function The USBCAMD_Debug_LogEntry function is called by the camera minidriver to log debugging information to a file.
USBCAMD_DriverEntry function The USBCAMD_DriverEntry function registers the minidriver with USBCAMD, effectively binding USBCAMD and the minidriver together.
USBCAMD_GetRegistryKeyValue function The USBCAMD_GetRegistryKeyValue function retrieves the device-instance-specific registry key value.
USBCAMD_InitializeNewInterface function The USBCAMD_InitializeNewInterface function provides USBCAMD with all the necessary information to configure the camera minidriver to work correctly with the stream class driver and the USB bus driver.
USBCAMD_SelectAlternateInterface function The USBCAMD_SelectAlternateInterface function selects an alternate setting within the USB video streaming interface.
_KsEdit function The _KsEdit function guarantees that a given item is dynamically allocated and associated with an AVStream object through the object bag.

Callback functions

Title Description
PADAPTER_RECEIVE_PACKET_ROUTINE callback function A camera minidriver's AdapterReceivePacket callback function processes adapter-based stream request blocks (SRBs) passed to it by the stream class driver.
PCAM_ALLOCATE_BW_ROUTINE callback function A camera minidriver's CamAllocateBandwidth callback function selects the appropriate alternate setting within the USB video streaming interface and prepares the device to stream.
PCAM_ALLOCATE_BW_ROUTINE_EX callback function A camera minidriver's CamAllocateBandwidthEx callback function selects the appropriate alternate setting within the USB video streaming interface and prepares the device to stream.
PCAM_CONFIGURE_ROUTINE callback function A camera minidriver's CamConfigure callback function configures the isochronous streaming interface.
PCAM_CONFIGURE_ROUTINE_EX callback function A camera minidriver's CamConfigureEx callback function configures the isochronous streaming interface.
PCAM_FREE_BW_ROUTINE callback function A camera minidriver's CamFreeBandwidth callback function selects an alternate setting within the USB video streaming interface that uses no bandwidth.
PCAM_FREE_BW_ROUTINE_EX callback function A camera minidriver's CamFreeBandwidthEx callback function selects an alternate setting within the USB video streaming interface that uses no bandwidth.
PCAM_INITIALIZE_ROUTINE callback function A camera minidriver's callback function initializes the device or performs any minidriver-specific clean-up that is required.
PCAM_NEW_FRAME_ROUTINE callback function A camera minidriver's CamNewVideoFrame callback function initializes a new video frame context structure.
PCAM_NEW_FRAME_ROUTINE_EX callback function A camera minidriver's CamNewVideoFrameEx callback function initializes a new video frame context structure.
PCAM_PROCESS_PACKET_ROUTINE callback function A camera minidriver's CamProcessUSBPacket callback function processes a USB packet.
PCAM_PROCESS_PACKET_ROUTINE_EX callback function A camera minidriver's CamProcessUSBPacketEx callback function processes a USB packet.
PCAM_PROCESS_RAW_FRAME_ROUTINE callback function A camera minidriver's CamProcessRawVideoFrame callback function decodes a raw video frame.
PCAM_PROCESS_RAW_FRAME_ROUTINE_EX callback function A camera minidriver's CamProcessRawVideoFrameEx callback function decodes a raw video frame.
PCAM_START_CAPTURE_ROUTINE callback function A camera minidriver's CamStartCapture callback function selects the appropriate alternate setting within the USB video streaming interface and prepares the device to stream.
PCAM_START_CAPTURE_ROUTINE_EX callback function A camera minidriver's CamStartCaptureEx callback function selects the appropriate alternate setting within the USB video streaming interface and prepares the device to stream.
PCAM_STATE_ROUTINE callback function A camera minidriver's state callback function restores a previously saved device context state or saves the current device context state.
PCAM_STOP_CAPTURE_ROUTINE callback function A camera minidriver's CamStopCapture callback function performs any processing after the stream is stopped.
PCAM_STOP_CAPTURE_ROUTINE_EX callback function A camera minidriver's CamStopCaptureEx callback function performs any processing after the stream is stopped.
PCOMMAND_COMPLETE_FUNCTION callback function A camera minidriver's CommandCompleteFunction callback function allows the camera minidriver to perform any additional tasks necessary to complete certain USBCAMD services
PFNALLOCATOR_ALLOCATEFRAME callback function The KStrAllocateFrame routine describes a vendor-supplied frame allocation function.
PFNALLOCATOR_FREEFRAME callback function The KStrFreeFrame routine describes a vendor-supplied frame deallocation function.
PFNAVCINTERSECTHANDLER callback function The AV/C intersect handler determines if the data ranges are compatible.
PFNDEREFERENCEDEVICEOBJECT callback function The driver can use this routine to decrement the reference count of the PDO.
PFNKSADDEVENT callback function An AVStream minidriver's AVStrMiniAddEvent routine is called when a client registers to be notified of an event. This routine is optional.
PFNKSALLOCATOR callback function Minidrivers can optionally supply a callback function of type PFNKSALLOCATOR as a parameter in calls to KsEnableEventWithAllocator, KsPropertyHandlerWithAllocator, and KsMethodHandlerWithAllocator.
PFNKSCANCELTIMER callback function A streaming minidriver's KStrCancelTimer routine is called to cancel a custom timer object that was previously specified in the SetTimer parameter in a call to KsAllocateDefaultClockEx.
PFNKSCLOCK_CORRELATEDTIME callback function KStrClockGetCorrelatedTime is a system-supplied routine that retrieves both the current system time and the corresponding clock tick count since boot.
PFNKSCLOCK_GETTIME callback function KStrClockGetTime is a system-supplied routine that retrieves the current system time.
PFNKSCONTEXT_DISPATCH callback function A streaming minidriver's KStrContextDispatch routine is called to process IRP_MJ_POWER IRPs.
PFNKSCORRELATEDTIME callback function A streaming minidriver's KStrCorrelatedTime routine is called to retrieve both the presentation time and physical time in a correlated manner. This allows the clock owner to completely determine the current time.
PFNKSDEFAULTALLOCATE callback function An AVStream minidriver's AVStrMiniAllocate routine allocates a frame using the allocator specified in the Context parameter.
PFNKSDEFAULTFREE callback function An AVStream minidriver's AVStrMiniAllocatorFreeFrame routine frees the specified frame.
PFNKSDELETEALLOCATOR callback function An AVStream minidriver's AVStrMiniDeleteAllocator routine deletes the allocator that is associated with a pin.
PFNKSDEVICE callback function An AVStream minidriver's AVStrMiniDevicePostStart routine is called when AVStream performs post-PnP-start processing. Use it to load drivers at start time, for example. Such events then will occur in the context of a worker thread after PnP start.
PFNKSDEVICECREATE callback function An AVStream minidriver's AVStrMiniDeviceAdd routine notifies the minidriver that AVStream's PnP AddDevice routine has completed.
PFNKSDEVICEIRP callback function An AVStream minidriver's IRP handler routine is called when these IRPs is dispatched by the device.IRP_MN_QUERY_REMOVE_DEVICEIRP_MN_QUERY_STOP_DEVICEIRP_MN_QUERY_INTERFACE
PFNKSDEVICEIRPVOID callback function An AVStream minidriver's IRP handling routine is called when these IRPs are dispatched by the device.IRP_MN_CANCEL_STOP_DEVICEIRP_MN_CANCEL_REMOVE_DEVICEIRP_MN_REMOVE_DEVICEIRP_MN_STOP_DEVICEIRP_MN_SURPRISE_REMOVAL
PFNKSDEVICEPNPSTART callback function An AVStream minidriver's AVStrMiniDeviceStart routine is called when an IRP_MN_START_DEVICE request is sent for a specified device.
PFNKSDEVICEQUERYCAPABILITIES callback function An AVStream minidriver's AVStrMiniDeviceQueryCapabilities routine is called when an IRP_MN_QUERY_CAPABILITIES is dispatched by the device.
PFNKSDEVICEQUERYPOWER callback function AVStream calls a minidriver's AVStrMiniDeviceQueryPower routine when it receives an IRP_MN_QUERY_POWER request.
PFNKSDEVICESETPOWER callback function AVStream calls a minidriver's AVStrMiniDeviceSetPower routine when it receives an IRP_MN_SET_POWER.
PFNKSFASTHANDLER callback function KStrFastHandler is a driver-supplied routine that handles a property or method request without the creation of an IRP.
PFNKSFILTERIRP callback function An AVStream minidriver's AVStrMiniFilterCreate routine is called when a filter receives an IRP.
PFNKSFILTERPROCESS callback function An AVStream minidriver's AVStrMiniFilterProcess routine is called when the filter is meant to process frames. It is used to perform Filter-Centric Processing.
PFNKSFILTERVOID callback function An AVStream minidriver's AVStrMiniFilterReset routine is called when AVStream receives an IOCTL_KS_RESET_STATE to return the filter to the state it was in at Acquire-time.
PFNKSHANDLER callback function The minidriver-provided KStrMethodHandler routine is called when Kernel Streaming receives an IOCTL_KS_METHOD. Provide a pointer to this handler in the relevant KSMETHOD_ITEM structure.
PFNKSINTERSECTHANDLER callback function A streaming minidriver's KStrIntersectHandler routine is called to compare a data range to determine if there is an intersection, and if so, the data format of the intersection.
PFNKSINTERSECTHANDLEREX callback function AVStream calls a minidriver's AVStrMiniIntersectHandlerEx routine to determine the highest quality intersection of two data ranges.
PFNKSIRPLISTCALLBACK callback function A streaming minidriver's KStrIrpListCallback routine is called to determine whether the passed in IRP should be moved from the source list to the destination list, or if IRP enumeration should be terminated.
PFNKSITEMFREECALLBACK callback function A streaming minidriver's KStrItemFreeCallback routine is called to free a previously allocated create item. KStrItemFreeCallback allows the minidriver to perform any cleanup, including flushing security descriptor changes, if necessary.
PFNKSPIN callback function An AVStream minidriver's callback routine is called when
PFNKSPINFRAMERETURN callback function An AVStream minidriver's AVStrMiniFrameReturn routine is called when an injected frame has completed its trip around the circuit and is ready to be recycled or freed.
PFNKSPINHANDSHAKE callback function An AVStream minidriver's AVStrMiniPinHandshake routine is called when AVStream receives a protocol handshake request that it does not handle.
PFNKSPININITIALIZEALLOCATOR callback function An AVStream minidriver's AVStrMiniInitializeAllocator routine initializes an allocator that will be associated with a pin.
PFNKSPINIRP callback function An AVStream minidriver's routine is called when an activity on the pin is performed and it receives these IRPs
PFNKSPINIRPCOMPLETION callback function An AVStream minidriver's AVStrMiniPinIrpCompletion routine is called when an IRP completes a pass around the circuit and the frame that is associated with the IRP is about to be recycled or retired.
PFNKSPINPOWER callback function An AVStream minidriver's AVStrMiniPinPower routine is called for pin-centric pins when the device is waking or entering a sleep state.
PFNKSPINSETDATAFORMAT callback function An AVStream minidriver's AVStrMiniPinSetDataFormat routine is called at pin creation time to verify that the previously agreed upon data format is acceptable for this KSPIN structure and a match for this KSDATARANGE structure.
PFNKSPINSETDEVICESTATE callback function An AVStream minidriver's AVStrMiniPinSetDeviceState routine is called when the state of a KSPIN structure is changed due to the arrival of a connection state property 'set' IOCTL.
PFNKSPINVOID callback function An AVStream minidriver's callback routine is called when
PFNKSREMOVEEVENT callback function An AVStream minidriver's AVStrMiniRemoveEvent routine is called when a client requests to be removed from the notification queue for an event. This routine is optional.
PFNKSSETTIMER callback function A streaming minidriver's KStrSetTimer routine is called to generate DPC timer callbacks based on presentation time.
PFNKSSTREAMPOINTER callback function AVStream calls a minidriver's AVStrMiniCancelCallback routine when the IRP that is associated with a cloned stream pointer is canceled. This routine is optional.
PFNQUERYREFERENCESTRING callback function This routine creates a buffer from the paged pool and copies the reference string associated with the PDO into this buffer. It is the caller's responsibility to free the buffer using ExFreePool.
PFNREFERENCEDEVICEOBJECT callback function The driver can use this routine to increment the reference count of the PDO.
PFNUSBCAMD_BulkReadWrite callback function The USBCAMD_BulkReadWrite service performs a read or write operation on the specified bulk pipe.
PFNUSBCAMD_CancelBulkReadWrite callback function The USBCAMD_CancelBulkReadWrite service cancels a pending bulk read or write request.
PFNUSBCAMD_SetIsoPipeState callback function The USBCAMD_SetIsoPipeState service permits the camera minidriver to control the streaming state on the isochronous pipe.
PFNUSBCAMD_SetVideoFormat callback function The USBCAMD_SetVideoFormat service is used to notify USBCAMD that the video format has changed.
PFNUSBCAMD_WaitOnDeviceEvent callback function The USBCAMD_WaitOnDeviceEvent service is used to perform a read from the interrupt pipe if the camera has an interrupt pipe for external event notifications.
PHW_CANCEL_SRB callback function The class driver calls the minidriver's StrMiniCancelPacket routine to signal that a stream request has been canceled.
PHW_EVENT_ROUTINE callback function The class driver calls the stream minidriver's StrMiniEvent routine to signal to a minidriver an event should be enabled or disabled.
PHW_INTERRUPT callback function StrMiniInterrupt is the minidriver's interrupt service routine.
PHW_PRIORITY_ROUTINE callback function StrMiniPriorityRoutine is a minidriver-supplied callback routine to be executed at a specified priority level.
PHW_QUERY_CLOCK_ROUTINE callback function Each stream may have a clock associated to it. The class driver queries the clock by calling the stream minidriver-supplied StrMiniClock function, provided in each stream's HW_STREAM_OBJECT.
PHW_RECEIVE_DEVICE_SRB callback function The stream class driver calls the minidriver's StrMiniReceiveStreamControlPacket routine to handle I/O requests for a specific stream.
PHW_REQUEST_TIMEOUT_HANDLER callback function The stream class driver calls the minidriver's StrMiniRequestTimeout routine to signal to the minidriver that a request has timed out.

Structures

Title Description
BUS_INTERFACE_MEDIUMS structure .
BUS_INTERFACE_REFERENCE structure A software device enumerator exports this interface to allow drivers to reference count physical device objects (PDOs) such that the device remains active while in use and is unloaded when not in use.
KSALLOCATOR_FRAMING structure The KSALLOCATOR_FRAMING structure is used to query framing requirements and submit allocator creation requests.
KSALLOCATOR_FRAMING_EX structure The KSALLOCATOR_FRAMING_EX structure is the AVStream replacement for KSALLOCATOR_FRAMING. KSALLOCATOR_FRAMING_EX defines allocator requirements on a pin in a kernel level filter.
KSATTRIBUTE structure The KSATTRIBUTE structure defines an additional attribute of a data format or data range that is not covered by the KSDATAFORMAT and KSDATARANGE structures or the extended information based on the format and range specifiers.
KSATTRIBUTE_LIST structure The KSATTRIBUTE_LIST structure contains an attribute defined in a KSATTRIBUTE structure.
KSAUTOMATION_TABLE_ structure The KSAUTOMATION_TABLE structure defines a structure that combines tables for properties, methods, and events.
KSBUFFER_ITEM structure The KSBUFFER_ITEM structure is used to store a list of data buffers copied from the event source, which can be retrieved by the event sink through KSEVENT_TYPE_QUERYBUFFER.
KSCAMERA_PERFRAMESETTING_CAP_HEADER structure This structure contains the header information for the per frame settings capabilities.
KSCAMERA_PERFRAMESETTING_CAP_ITEM_HEADER structure This structure contains the header information for a per-frame settings item.
KSCAMERA_PERFRAMESETTING_CUSTOM_ITEM structure This structure contains a custom item.
KSCAMERA_PERFRAMESETTING_FRAME_HEADER structure This structure contains the header information for a frame in a per-frame settings payload.
KSCAMERA_PERFRAMESETTING_HEADER structure This structure contains header information for the per-frame settings payload.
KSCAMERA_PERFRAMESETTING_ITEM_HEADER structure This structure contains the header information for a per-frame settings item.
KSCLOCKINSTANCE structure .
KSCLOCK_CREATE structure The KSCLOCK_CREATE structure is used in clock create parameters for the KsCreateClock function.
KSCLOCK_FUNCTIONTABLE structure The KSCLOCK_FUNCTIONTABLE structure describes a function table for the master clock.
KSCOMPONENTID structure The KSCOMPONENTID structure contains unique identifiers that describe an individual kernel streaming object.
KSCORRELATED_TIME structure The KSCORRELATED_TIME structure contains a clock time as well as the corresponding number of clock ticks since system boot.
KSDATAFORMAT structure The KSDATAFORMAT structure is a variable-length structure that describes a data format.
KSDISPATCH_TABLE structure The KSDISPATCH_TABLE structure contains pointers to minidriver implemented IRP dispatch routines.
KSDPC_ITEM structure The KSDPC_ITEM structure is used to store information related to any internal DPCs that might be used to generate event notification from a raised IRQL.
KSERROR structure The KSERROR structure is used to report streaming errors in both kernel and user mode to their respective quality managers.
KSEVENTDATA structure Kernel streaming clients send the KSEVENTDATA structure to the class driver to specify a notification method.
KSEVENT_ITEM structure The KSEVENT_ITEM structure describe a minidriver's support for a specific event within an event set.
KSEVENT_SET structure The KSEVENT_SET structure describes the events that comprise a kernel streaming event set.
KSEVENT_TIME_INTERVAL structure The KSEVENT_TIME_INTERVAL structure is used in various events within the KSEVENTSETID_Clock event set.
KSEVENT_TIME_MARK structure The KSEVENT_TIME_MARK structure is used in various events within the KSEVENTSETID_Clock event set.
KSEVENT_TUNER_INITIATE_SCAN_S structure The KSEVENT_TUNER_INITIATE_SCAN_S structure is used in the KSEVENT_TUNER_INITIATE_SCAN event within the EVENTSETID_TUNER event set.
KSE_NODE structure The KSE_NODE structure specifies an event request on a specific node.
KSE_PIN structure .
KSFASTMETHOD_ITEM structure Drivers provide a structure of type KSFASTMETHOD_ITEM to support fast I/O dispatching.
KSFASTPROPERTY_ITEM structure The KSFASTPROPERTY_ITEM structure is used with items for fast I/O dispatching.
KSFRAMETIME structure The KSFRAMETIME structure is supported by rendering pins, and is used to return the duration of the next "frame" of data, and flags associated with that frame.
KSGRAPHMANAGER_FUNCTIONTABLE structure .
KSHANDSHAKE structure The KSHANDSHAKE structure is used to pass information back and forth while pins are handshaking in an attempt to negotiate a private interface.
KSIDEFAULTCLOCK structure .
KSIDENTIFIER structure The KSIDENTIFIER structure specifies a GUID that uniquely identifies a related set of GUIDs, and an index value to refer to a specific member within that set.
KSINTERVAL structure The KSINTERVAL structure specifies a base time and time interval for recurring events.
KSMETHOD_ITEM structure The KSMETHOD_ITEM structure describes a single method within a method set.
KSMETHOD_SET structure The KSMETHOD_SET structure describes the methods that comprise a kernel streaming method set.
KSMULTIPLE_ITEM structure The KSMULTIPLE_ITEM structure is a generic header for property data that can contain multiple entries.
KSM_NODE structure Just as KSP_NODE is used for properties on a node, the KSM_NODE structure is used for methods on a node.
KSNODE_CREATE structure The KSNODE_CREATE structure describes the set of information used to create the node handle.
KSOBJECT_CREATE structure The KSOBJECT_CREATE structure contains an array of create handlers for base object classes supported by this device object.
KSOBJECT_CREATE_ITEM structure The KSOBJECT_CREATE_ITEM structure is used to look up the string passed to a create request.
KSPIN_CINSTANCES structure .
KSPIN_CONNECT structure Clients use the KSPIN_CONNECT structure to describe the connection they request from a driver in a KsCreatePin call.
KSPIN_DESCRIPTOR structure The KSPIN_DESCRIPTOR structure describes the basic KSPROPSETID_Pin properties of a pin type.
KSPIN_MDL_CACHING_NOTIFICATION structure This structure is used internally by the operating system.
KSPIN_MDL_CACHING_NOTIFICATION32 structure This structure is used internally by the operating system.
KSPIN_PHYSICALCONNECTION structure A structure of type KSPIN_PHYSICALCONNECTION is returned in response to a KSPROPERTY_PIN_PHYSICALCONNECTION request.
KSPRIORITY structure The KSPRIORITY structure is used to specify priority and is used with the KSPROPERTY_CONNECTION_PRIORITY property.
KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS_S structure The KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_CAPS_S structure specifies if interleaved capture is supported.
KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE_S structure The KSPROPERTY_ALLOCATOR_CONTROL_CAPTURE_INTERLEAVE_S structure specifies if interleaved capture is possible.
KSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE_S structure The KSPROPERTY_ALLOCATOR_CONTROL_SURFACE_SIZE_S structure specifies the width and height of an overlay surface.
KSPROPERTY_BOUNDS_LONG structure The KSPROPERTY_BOUNDS_LONG structure defines the bounds for a 32-bit property.
KSPROPERTY_BOUNDS_LONGLONG structure The KSPROPERTY_BOUNDS_LONGLONG structure defines the bounds for a 64-bit property.
KSPROPERTY_CAMERACONTROL_FLASH_S structure Describes flash control properties in the PROPSETID_VIDCAP_CAMERACONTROL_FLASH camera control property set. This structure specifies property values that are used by applications to configure the camera's flash.
KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH_S structure The KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH_S structure returns filter-specific data requested using the KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH property.
KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY_S structure Describes image pin control properties in the PROPSETID_VIDCAP_CAMERACONTROL_IMAGE_PIN_CAPABILITY camera control property set.
KSPROPERTY_CAMERACONTROL_NODE_FOCAL_LENGTH_S structure The KSPROPERTY_CAMERACONTROL_NODE_FOCAL_LENGTH_S structure returns node-specific data requested using the KSPROPERTY_CAMERACONTROL_FOCAL_LENGTH property.
KSPROPERTY_CAMERACONTROL_NODE_S structure The KSPROPERTY_CAMERACONTROL_NODE_S structure describes node-based properties in the PROPSETID_VIDCAP_CAMERACONTROL property set. This structure specifies property values in requests to the USB Video Class driver.
KSPROPERTY_CAMERACONTROL_NODE_S2 structure The KSPROPERTY_CAMERACONTROL_NODE_S2 structure describes node-based properties in the PROPSETID_VIDCAP_CAMERACONTROL property set that use two values at the same time. This structure specifies property values in requests to the USB video class driver.
KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_S structure Describes region of interest (ROI) control properties in the PROPSETID_VIDCAP_CAMERACONTROL_REGION_OF_INTEREST camera control property set.
KSPROPERTY_CAMERACONTROL_S structure The KSPROPERTY_CAMERACONTROL_S structure describes filter-based properties in the PROPSETID_VIDCAP_CAMERACONTROL property set.
KSPROPERTY_CAMERACONTROL_S2 structure The KSPROPERTY_CAMERACONTROL_S2 structure describes filter-based properties in the PROPSETID_VIDCAP_CAMERACONTROL property set that use two values at the same time.
KSPROPERTY_CAMERACONTROL_S_EX structure Specifies a camera control operation, including setting the flash, the image pin control properties, the region of interest in the image, or video stabilization.
KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_S structure Describes video stabilization control properties in the PROPSETID_VIDCAP_CAMERACONTROL_VIDEO_STABILIZATION camera control property set. This structure specifies property values that are used in requests to the camera driver.
KSPROPERTY_CROSSBAR_CAPS_S structure The KSPROPERTY_CROSSBAR_CAPS_S structure describes the crossbar capabilities for a device.
KSPROPERTY_CROSSBAR_PININFO_S structure The KSPROPERTY_CROSSBAR_PININFO_S structure describes the crossbar pin information for a device.
KSPROPERTY_CROSSBAR_ROUTE_S structure The KSPROPERTY_CROSSBAR_ROUTE_S structure describes whether a particular routing is possible and specifies the current routing for a pin.
KSPROPERTY_DESCRIPTION structure The KSPROPERTY_DESCRIPTION structure specifies the size and type of values contained in a specific property.
KSPROPERTY_DROPPEDFRAMES_CURRENT_S structure The KSPROPERTY_DROPPEDFRAMES_CURRENT_S structure describes the dropped frame information from the minidriver.
KSPROPERTY_EXTDEVICE_S structure The KSPROPERTY_EXTDEVICE_S structure describes an external device and its capabilities.
KSPROPERTY_EXTXPORT_NODE_S structure The KSPROPERTY_EXTXPORT_NODE_S structure describes an external transport and its capabilities.
KSPROPERTY_EXTXPORT_S structure The KSPROPERTY_EXTXPORT_S structure describes an external transport and its capabilities.
KSPROPERTY_ITEM structure Drivers use the KSPROPERTY_ITEM structure to describe how they support a property in a property set.
KSPROPERTY_MEDIAAVAILABLE structure The KSPROPERTY_MEDIAAVAILABLE structure specifies the media time span (the time span that a client can seek within) that is currently available on a filter.
KSPROPERTY_MEMBERSHEADER structure A driver provides a structure of type KSPROPERTY_MEMBERSHEADER to describe the size and type of each element in an array containing property values or ranges.
KSPROPERTY_MEMBERSLIST structure The KSPROPERTY_MEMBERSLIST structure contains a list of legal values or ranges for a property.
KSPROPERTY_POSITIONS structure The KSPROPERTY_POSITIONS structure specifies the current position and stop position, relative to the total duration of the stream.
KSPROPERTY_SELECTOR_NODE_S structure The KSPROPERTY_SELECTOR_NODE_S structure describes node-based property settings in the PROPSETID_VIDCAP_SELECTOR property set.
KSPROPERTY_SELECTOR_S structure The KSPROPERTY_SELECTOR_S structure describes filter-based property settings in the PROPSETID_VIDCAP_SELECTOR property set.
KSPROPERTY_SERIAL structure The KSPROPERTY_SERIAL structure is a header that is included for each property that follows a KSPROPERTY_SERIALHDR structure.
KSPROPERTY_SERIALHDR structure The format of the serialization buffer is a KSPROPERTY_SERIALHDR structure, followed by serialized properties.
KSPROPERTY_SET structure A kernel streaming driver or pin may use the KSPROPERTY_SET structure to describe how it supports a property set.
KSPROPERTY_STEPPING_LONG structure The KSPROPERTY_STEPPING_LONG structure defines the valid range of values for a 32-bit property.
KSPROPERTY_STEPPING_LONGLONG structure The KSPROPERTY_STEPPING_LONGLONG structure defines the valid range of values for a 64-bit property.
KSPROPERTY_TIMECODE_NODE_S structure The KSPROPERTY_TIMECODE_NODE_S structure describes a timecode.
KSPROPERTY_TIMECODE_S structure The KSPROPERTY_TIMECODE_S structure describes a timecode.
KSPROPERTY_TUNER_CAPS_S structure The KSPROPERTY_TUNER_CAPS_S structure describes the hardware capabilities of TV and radio tuning devices.
KSPROPERTY_TUNER_FREQUENCY_S structure The KSPROPERTY_TUNER_FREQUENCY_S structure describes the frequency of a TV or radio tuner device.
KSPROPERTY_TUNER_IF_MEDIUM_S structure The KSPROPERTY_TUNER_IF_MEDIUM_S structure returns the Medium GUID for the pin that is capable of supporting tuning to an intermediate frequency.
KSPROPERTY_TUNER_INPUT_S structure The KSPROPERTY_TUNER_INPUT_S structure describes the input connection index of a tuner device for devices that support multiple inputs.
KSPROPERTY_TUNER_MODE_CAPS_S structure The KS_PROPERTY_TUNER_MODE_CAPS_S structure describes the capabilities of TV and radio tuner devices.
KSPROPERTY_TUNER_MODE_S structure The KSPROPERTY_TUNER_MODE_S structure describes the mode of a TV or radio tuner device.
KSPROPERTY_TUNER_NETWORKTYPE_SCAN_CAPS_S structure The KSPROPERTY_TUNER_NETWORKTYPE_SCAN_CAPS_S structure describes the scanning capabilities of a broadcast network type that a tuning device supports.
KSPROPERTY_TUNER_SCAN_CAPS_S structure The KSPROPERTY_TUNER_SCAN_CAPS_S structure describes the hardware scanning capabilities of a tuning device.
KSPROPERTY_TUNER_SCAN_STATUS_S structure The KSPROPERTY_TUNER_SCAN_STATUS_S structure describes status for a scanning operation.
KSPROPERTY_TUNER_STANDARD_MODE_S structure The KSPROPERTY_TUNER_STANDARD_MODE_S structure describes whether the tuning device can identify the tuner standard from the signal itself.
KSPROPERTY_TUNER_STANDARD_S structure The KSPROPERTY_TUNER_STANDARD_S structure describe the standard of a TV tuner device, such as PAL, NTSC or SECAM.
KSPROPERTY_TUNER_STATUS_S structure The KSPROPERTY_TUNER_STATUS_S structure describes the progress of a tuning operation for TV and radio tuner devices, including present tuning frequency.
KSPROPERTY_TVAUDIO_CAPS_S structure The KSPROPERTY_TVAUDIO_CAPS_S structure describes the capability of a TV audio device, such as stereo versus mono audio support and language capabilities.
KSPROPERTY_TVAUDIO_S structure The KSPROPERTY_TVAUDIO_S structure describes the current TV audio mode, such as stereo or mono audio and language settings.
KSPROPERTY_VALUES structure The KSPROPERTY_VALUES structure describes the type and acceptable default values of a property.
KSPROPERTY_VIDEOCOMPRESSION_GETINFO_S structure The KSPROPERTY_VIDEOCOMPRESSION_GETINFO_S structure describes information about the video compression capabilities supported by a device.
KSPROPERTY_VIDEOCOMPRESSION_S structure The KSPROPERTY_VIDEOCOMPRESSION_S structure describes a single KSPROPERTY_VIDEOCOMPRESSION_Xxx property of a specified stream.
KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE_S structure The KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE_S structure describes actual frame rate information in response to KSPROPERTY_VIDEOCONTROL_ACTUAL_FRAME_RATE property requests.
KSPROPERTY_VIDEOCONTROL_CAPS_S structure The KSPROPERTY_VIDEOCONTROL_CAPS_S structure describes the video-control capabilities of a minidriver, such as image flipping or event triggering abilities.
KSPROPERTY_VIDEOCONTROL_FRAME_RATES_S structure The KSPROPERTY_VIDEOCONTROL_FRAME_RATES structure describes available frame rates in 100-nanosecond units.
KSPROPERTY_VIDEOCONTROL_MODE_S structure The KSPROPERTY_VIDEOCONTROL_MODE_S structure describes video-control modes for a stream, such as image flipping or event triggering abilities.
KSPROPERTY_VIDEODECODER_CAPS_S structure The KSPROPERTY_VIDEODECODER_CAPS_S structure describes the hardware capabilities of the video decoder device.
KSPROPERTY_VIDEODECODER_S structure The KSPROPERTY_VIDEODECODER_S structure describes property settings in the PROPSETID_VIDCAP_VIDEODECODER property set.
KSPROPERTY_VIDEODECODER_STATUS_S structure The KSPROPERTY_VIDEODECODER_STATUS_S structure describes the present status of a video decoding device, such as number of lines in the incoming analog signal and whether the signal is locked in.
KSPROPERTY_VIDEOPROCAMP_NODE_S structure The KSPROPERTY_VIDEOPROCAMP_NODE_S structure describes node-based property settings in the PROPSETID_VIDCAP_VIDEOPROCAMP property set.
KSPROPERTY_VIDEOPROCAMP_NODE_S2 structure The KSPROPERTY_VIDEOPROCAMP_NODE_S2 structure describes node-based property settings in the PROPSETID_VIDCAP_VIDEOPROCAMP property set that use two values at the same time.
KSPROPERTY_VIDEOPROCAMP_S structure The KSPROPERTY_VIDEOPROCAMP_S structure describes filter-based property settings in the PROPSETID_VIDCAP_VIDEOPROCAMP property set.
KSP_NODE structure Kernel streaming clients use the KSP_NODE structure to specify the property and node type within a KSPROPERTY_TOPOLOGY_NAME property request.
KSP_NODE_ESPID structure The KSP_NODE_ESPID structure describes property and node type for an Entitlement Control Message (ECM) map node along with the packet identifier (PID) for an elementary stream that the ECM map node processes.
KSP_PIN structure Kernel streaming clients use the KSP_PIN structure to specify the property and pin type within a KSPROPSETID_Pin property request.
KSP_TIMEFORMAT structure The KSP_TIMEFORMAT structure corresponds to KSPROPERTY_MEDIASEEKING_CONVERTTIMEFORMAT.
KSQUALITY structure The KSQUALITY structure is used to report QM problems in both kernel and user mode to their respective quality managers.
KSQUALITY_MANAGER structure The KSQUALITY_MANAGER structure is used with the KSPROPERTY_STREAM_QUALITY property and contains the handle of the quality manager sink and a context to pass in the quality complaints.
KSQUERYBUFFER structure The KSQUERYBUFFER structure is used when querying for outstanding buffers available on an event with KSEVENT_TYPE_QUERYBUFFER.
KSRATE structure The query is passed a KSRATE structure appended to the property containing the rate request (known as a KSRATE_CAPABILITY structure), and is returned a KSRATE structure filled in with the capability given the rate request.
KSRATE_CAPABILITY structure The client uses the KSRATE_CAPABILITY structure in a KSPROPERTY_STREAM_RATECAPABILITY property request.
KSRELATIVEEVENT structure The KSPROPERTY_CONNECTION_STARTAT property is passed a KSRELATIVEEVENT structure.
KSRESOLUTION structure The KSRESOLUTION structure specifies granularity and error of a kernel streaming clock.
KSSCATTER_GATHER structure .
KSSTREAMALLOCATOR_FUNCTIONTABLE structure Clients can request the function table of a given allocator by sending a KSSTREAMALLOCATOR_FUNCTIONTABLE structure in a KSPROPERTY_STREAMALLOCATOR_FUNCTIONTABLE property request.
KSSTREAMALLOCATOR_STATUS structure The KSSTREAMALLOCATOR_STATUS structure describes framing requirements and current number of allocated frames for a specific allocator.
KSSTREAMALLOCATOR_STATUS_EX structure Client use KSSTREAMALLOCATOR_STATUS_EX to query the status for allocators supporting the extended allocator framing.
KSSTREAM_HEADER structure The KSSTREAM_HEADER structure is a variable-length structure that describes a packet of data to be read from or written to a streaming driver pin.
KSSTREAM_METADATA_INFO structure This structure contains the metadata information that is passed down to the driver.
KSSTREAM_UVC_METADATA structure The KSSTREAM_UVC_METADATA structure contains start and end of frame timestamp information.
KSSTREAM_UVC_METADATATYPE_TIMESTAMP structure The KSSTREAM_UVC_METADATATYPE_TIMESTAMP structure contains USB video class (UVC) clock and timestamp information.
KSTIME structure The KSTIME structure specifies a time stamp that can be used to indicate stream position.
KSTOPOLOGY structure The KSTOPOLOGY structure describes the topology of pins and nodes.
KSTOPOLOGY_CONNECTION structure The KSTOPOLOGY_CONNECTION structure describes a single data-path connection inside a kernel streaming filter.
KSVPMAXPIXELRATE structure The KSVPMAXPIXELRATE structure is used to describe the maximum pixel rate of a video port.
KSVPSURFACEPARAMS structure The KSVPSURFACEPARAMS structure is used to describe the surface parameters of a video port surface.
KSWAVE_BUFFER structure The KSWAVE_BUFFER structure is used to describe a sample buffer.
KSWAVE_COMPATCAPS structure The KSWAVE_COMPATCAPS structure is used to describe the compatible capabilities of a device.
KSWAVE_INPUT_CAPABILITIES structure The KSWAVE_INPUT_CAPABILITIES structure is used to describe the input capabilities of a device.
KSWAVE_OUTPUT_CAPABILITIES structure The KSWAVE_OUTPUT_CAPABILITIES structure is used to describe the output capabilities of a device.
KSWAVE_VOLUME structure The KSWAVE_VOLUME structure is used to describe sample volume.
KS_AM_ExactRateChange structure The KS_AM_ExactRateChange structure is not yet implemented.
KS_AM_SimpleRateChange structure The KS_AM_SimpleRateChange structure is used to describe a simple rate change (fast-forward or rewind) for an MPEG2 stream.
KS_COMPRESSION structure The KS_COMPRESSION structure defines the compression of frames on an output pin.
KS_FRAMING_ITEM structure The KS_FRAMING_ITEM structure is used to declare allocator requirements on a kernel-mode pin.
KS_FRAMING_RANGE structure The KS_FRAMING_RANGE structure specifies a range for frame sizes for a given framing item.
KS_FRAMING_RANGE_WEIGHTED structure Drivers can use the KS_FRAMING_RANGE_WEIGHTED structure to specify a range of weighted frame sizes.
LAMP_CAPABILITIES_COLOR structure This structure is the I/O parameter type of IOCTL_LAMP_{GET
LAMP_CAPABILITIES_WHITE structure This structure is the I/O parameter type of IOCTL_LAMP_{GET
LAMP_INTENSITY_COLOR structure This structure is the I/O parameter type of IOCTL_LAMP_GET_INTENSITY_COLOR and IOCTL_LAMP_SET_INTENSITY_COLOR.
LAMP_INTENSITY_WHITE structure This structure is the I/O parameter type of IOCTL_LAMP_GET_INTENSITY_WHITE and IOCTL_LAMP_SET_INTENSITY_WHITE.
MEDIUM_INFO structure The MEDIUM_INFO structure describes the media loaded into an external device.
OPTIMAL_WEIGHT_TOTALS structure .
PID_MAP structure The PID_MAP structure describes a group of packets in the output stream of a packet identifier (PID) filter. This group consists of packets that are identified with an identical PID and contain particular media content.
TRANSPORT_STATE structure The TRANSPORT_STATE structure
TUNER_ANALOG_CAPS_S structure The TUNER_ANALOG_CAPS_S structure describes the hardware scanning capabilities of a tuning device that supports an analog broadcast network.
USBCAMD_INTERFACE structure The USBCAMD_INTERFACE structure defines a set of services related to the USB bus interfaces.
VRAM_SURFACE_INFO structure The VRAM_SURFACE_INFO structure describes a region of system or display memory into which an AVStream minidriver captures audio or video data.
VRAM_SURFACE_INFO_PROPERTY_S structure The VRAM_SURFACE_INFO_PROPERTY_S structure describes property items in the KSPROPSETID_VramCapture property set.
_ALLOCATOR_PROPERTIES_EX structure The ALLOCATOR_PROPERTIES_EX structure is for proxy use and not recommended for application use. ALLOCATOR_PROPERTIES_EX contains information that describes properties of an allocator.
_AVCCONNECTINFO structure The AVCCONNECTINFO structure is used to initialize a subunit driver and establish pin connections.
_AVCPRECONNECTINFO structure The AVCPRECONNECTINFO structure is used to initialize a subunit driver and establish pin connections.
_AVCSTRM_BUFFER_STRUCT structure The AVCSTRM_BUFFER_STRUCT structure describes a buffer to be submitted to avcstrm.sys for read or write operations.
_AVCSTRM_FORMAT_INFO structure The AVCSTRM_FORMAT_INFO structure is used to describe a data stream.
_AVCSTRM_OPEN_STRUCT structure The AVCSTRM_OPEN_STRUCT structure describes a data stream to be opened.
_AVC_COMMAND_IRB structure The AVC_COMMAND_IRB structure defines a structure that contains an AV/C command and response pair.
_AVC_EXT_PLUG_COUNTS structure The AVC_EXT_PLUG_COUNTS structure describes the number of external plugs on the subunit.
_AVC_IRB structure The AVC_IRB structure is an I/O Request Block (IRB) header structure where a function number is stored.
_AVC_MULTIFUNC_IRB structure The AVC_MULTIFUNC_IRB structure contains other AV/C related structures in a union.
_AVC_PEER_DO_LIST structure The AVC_PEER_DO_LIST describes all nonvirtual (peer) instances of avc.sys.
_AVC_PEER_DO_LOCATOR structure The AVC_PEER_DO_LOCATOR describes nonvirtual (peer) instances of avc.sys.
_AVC_PIN_COUNT structure The AVC_PIN_COUNT structure specifies the number of pins on an AV/C subunit device.
_AVC_PIN_DESCRIPTOR structure The AVC_PIN_DESCRIPTOR structure describes a pin on an AV/C subunit device.
_AVC_PIN_ID structure The AVC_PIN_ID structure describes a pin on a subunit.
_AVC_PRECONNECT_INFO structure The AVC_PRECONNECT_INFO structure specifies the preconnection information for the specified pin ID (zero-based offset) on an AV/C subunit device.
_AVC_SETCONNECT_INFO structure The AVC_SETCONNECT_INFO structure is used to initialize a subunit driver and establish pin connections.
_AVC_STREAM_REQUEST_BLOCK structure The AVC_STREAM_REQUEST_BLOCK structure describes an AV/C streaming request to be processed by avcstrm.sys.
_AVC_SUBUNIT_ADDR_SPEC structure The AVC_SUBUNIT_ADDR_SPEC structure is used with virtual instances of avc.sys to describe virtual subunit addresses.
_AVC_SUBUNIT_INFO_BLOCK structure The AVC_SUBUNIT_INFO_BLOCK structure describes subunit information.
_AVC_UNIQUE_ID structure The AVC_UNIQUE_ID describe the unique ID of the AV/C unit.
_BDANODE_DESCRIPTOR structure The BDANODE_DESCRIPTOR structure describes a BDA node.
_BDA_BUFFER structure .
_BDA_CAS_CHECK_ENTITLEMENTTOKEN structure .
_BDA_CAS_CLOSEMMIDATA structure .
_BDA_CAS_CLOSE_MMIDIALOG structure .
_BDA_CAS_OPENMMIDATA structure .
_BDA_CAS_REQUESTTUNERDATA structure .
_BDA_CA_MODULE_UI structure The BDA_CA_MODULE_UI structure describes the user interface (UI) that conditional access (CA) plugins can display.
_BDA_DISEQC_RESPONSE structure .
_BDA_DISEQC_SEND structure .
_BDA_DRM_DRMSTATUS structure .
_BDA_DVBT2_L1_SIGNALLING_DATA structure .
_BDA_ETHERNET_ADDRESS structure .
_BDA_ETHERNET_ADDRESS_LIST structure .
_BDA_FILTER_TEMPLATE structure The BDA_FILTER_TEMPLATE structure describes the template topology for a BDA filter.
_BDA_GDDS_DATA structure .
_BDA_GDDS_DATATYPE structure .
_BDA_IPv4_ADDRESS structure .
_BDA_IPv4_ADDRESS_LIST structure .
_BDA_IPv6_ADDRESS structure .
_BDA_IPv6_ADDRESS_LIST structure .
_BDA_ISDBCAS_REQUESTHEADER structure .
_BDA_ISDBCAS_RESPONSEDATA structure .
_BDA_PID_MAP structure The BDA_PID_MAP structure describes a type of data to filter out of the input stream of a packet identifier (PID) filter and then pass to a downstream filter.
_BDA_PID_UNMAP structure The BDA_PID_UNMAP structure describes packet types to stop filtering from the input stream of a packet identifier (PID) filter. These packet types are identified with PIDs.
_BDA_PIN_PAIRING structure The BDA_PIN_PAIRING structure describes the topology between a pair of input and output pins.
_BDA_PROGRAM_PID_LIST structure The BDA_PROGRAM_PID_LIST structure describes data of a specific program to view. This data consists of packets that are identified with packet identifiers (PID).
_BDA_RATING_PINRESET structure .
_BDA_SCAN_CAPABILTIES structure .
_BDA_SCAN_START structure .
_BDA_SCAN_STATE structure .
_BDA_SIGNAL_TIMEOUTS structure .
_BDA_STRING structure .
_BDA_TABLE_SECTION structure The BDA_TABLE_SECTION structure describes a table section.
_BDA_TEMPLATE_CONNECTION structure The BDA_TEMPLATE_CONNECTION structure describes the template for a BDA connection in terms of where it begins and ends.
_BDA_TEMPLATE_PIN_JOINT structure The BDA_TEMPLATE_PIN_JOINT structure describes a joint in a template topology.
_BDA_TS_SELECTORINFO structure .
_BDA_TS_SELECTORINFO_ISDBS_EXT structure .
_BDA_TUNER_DIAGNOSTICS structure .
_BDA_TUNER_TUNERSTATE structure .
_BDA_USERACTIVITY_INTERVAL structure .
_BDA_WMDRMTUNER_PIDPROTECTION structure .
_BDA_WMDRMTUNER_PURCHASEENTITLEMENT structure .
_BDA_WMDRM_KEYINFOLIST structure .
_BDA_WMDRM_RENEWLICENSE structure .
_BDA_WMDRM_STATUS structure .
_BUS_INTERFACE_SWENUM structure The BUS_INTERFACE_SWENUM structure describes the demand-load bus enumerator object's interface.
_CIP_HDR1 structure The CIP_HDR1 structure describes the generic data structure of the two quadlet CIP headers (first quadlet of the pair).
_CIP_HDR2_FDF structure The CIP_HDR2_FDF structure describes the second quadlet of a CIP header pair.
_CIP_HDR2_MPEGTS structure The CIP_HDR2_MPEGTS structure describes the second quadlet of a CIP header pair for an MPEGTS format stream.
_CIP_HDR2_SYT structure The CIP_HDR2_SYT structure describes the second quadlet of a CIP header pair for a DV format stream.
_DVINFO structure The DVINFO structure describes a DV stream format including its default streaming source information and stream control information.
_HW_CLOCK_OBJECT structure The HW_CLOCK_OBJECT structure describes the clock associated with a stream.
_HW_EVENT_DESCRIPTOR structure When the class driver calls one of the minidriver's StrMiniEvent routines, it passes a pointer to an HW_EVENT_DESCRIPTOR structure to describe the event as enabled or disabled.
_HW_STREAM_DESCRIPTOR structure The minidriver uses the HW_STREAM_DESCRIPTOR structure to return stream information to the stream class driver.
_HW_STREAM_HEADER structure The HW_STREAM_HEADER structure describes the kernel streaming semantics supported by the minidriver as a whole, as part of a HW_STREAM_DESCRIPTOR structure.
_HW_STREAM_INFORMATION structure The HW_STREAM_INFORMATION structure describes the kernel streaming semantics supported by individual streams, as part of an HW_STREAM_DESCRIPTOR structure.
_HW_STREAM_OBJECT structure HW_STREAM_OBJECT describes an instance of a minidriver stream.
_HW_STREAM_REQUEST_BLOCK structure The stream class driver uses the HW_STREAM_REQUEST_BLOCK structure to pass information to and from the minidriver, using minidriver provided callbacks.
_HW_TIME_CONTEXT structure The class driver passes an HW_TIME_CONTEXT structure as a parameter to be filled in by a stream's StrMiniClock routine, or returns a completed HW_TIME_CONTEXT structure when it responds to a StreamClassQueryMasterClock or StreamClassQueryMasterClockSync request.
_KSALLOCATOR_DISPATCH structure The KSALLOCATOR_DISPATCH structure contains the callbacks required for a pin to implement its own kernel-level allocator.
_KSCAMERA_EXTENDEDPROP_PROFILE structure The payload of the KSPROPERTY_CAMERACONTROL_EXTENDED_PROFILE control contains KSCAMERA_EXTENDEDPROP_HEADER + KSCAMERA_EXTENDEDPROP_PROFILE.
_KSCAMERA_PROFILE_CONCURRENCYINFO structure An array of KSCAMERA_PROFILE_CONCURRENCYINFO structures form the Camera.Concurrency parameter of the KSDEVICE_PROFILE_INFO structure (whose array size is specified by Camera.CountOfConcurrency parameter) indicating which profiles the profile identified in the KSCAMERA_PROFILE_INFO structure may run simultaneously on different cameras.
_KSCAMERA_PROFILE_INFO structure The KSCAMERA_PROFILE_INFO structure is used to uniquely identify a given profile.
_KSCAMERA_PROFILE_MEDIAINFO structure This structure contains the relevant media type information presented for each camera profile.
_KSCAMERA_PROFILE_PININFO structure This structure specifies the available list of media types for each of the camera driver pins.
_KSCLOCK_DISPATCH structure The KSCLOCK_DISPATCH structure contains the callbacks required for a pin to implement a clock object.
_KSDEVICE structure The KSDEVICE structure describes a WDM functional device that is managed by AVStream.
_KSDEVICE_DESCRIPTOR structure The KSDEVICE_DESCRIPTOR structure describes the characteristics of a particular device.
_KSDEVICE_DISPATCH structure The KSDEVICE_DISPATCH structure describes the callbacks that a client can provide to receive notification of device creation and PnP events.
_KSDEVICE_PROFILE_INFO structure The KSDEVICE_PROFILE_INFO is a generic structure designed to handle profile information for various device types.
_KSDEVICE_THERMAL_DISPATCH structure The KSDEVICE_THERMAL_DISPATCH structure is used by the miniport driver in the API call to register thermal notification callbacks. This structure contains the callback function pointers for active and passive cooling interfaces.
_KSEVENT_ENTRY structure The kernel streaming subsystem uses the KSEVENT_ENTRY structure to describe how an event should be triggered.
_KSFILTER structure The KSFILTER structure describes an instantiated filter.
_KSFILTERFACTORY structure The KSFILTERFACTORY structure represents a filter factory.
_KSFILTER_DESCRIPTOR structure The KSFILTER_DESCRIPTOR structure describes the characteristics of a filter created by a given filter factory.
_KSFILTER_DISPATCH structure The KSFILTER_DISPATCH structure describes the client callbacks that are made to notify the client of certain events on a given filter type.
_KSGATE structure The KSGATE structure describes an AVStream gate object.
_KSMAPPING structure The KSMAPPING structure is used to describe a single contiguous chunk of physical memory for use in scatter/gather DMA operations.
_KSMPEGVID_RECT structure KSMPEGVID_RECT structure
_KSM_BDA_PIN structure The KSM_BDA_PIN structure describes a method request to create or delete a pin factory for a filter.
_KSM_BDA_PIN_PAIR structure The KSM_BDA_PIN_PAIR structure describes a method request to retrieve the pin pairing structure (BDA_PIN_PAIRING) between a pair of input and output pins.
_KSM_PIN structure The KSM_PIN structure describes a method request to create or delete a pin factory for a filter.
_KSM_PIN_PAIR structure The KSM_PIN_PAIR structure describes a method request to retrieve the pin pairing structure (BDA_PIN_PAIRING) between a pair of input and output pins.
_KSNODE_DESCRIPTOR structure The KSNODE_DESCRIPTOR structure describes a topology node within a filter.
_KSPIN structure The KSPIN structure describes an instantiated pin.
_KSPIN_DESCRIPTOR_EX structure The KSPIN_DESCRIPTOR_EX structure describes the characteristics of a pin type on a given filter type.
_KSPIN_DISPATCH structure The KSPIN_DISPATCH structure describes the callbacks for which clients can register in order to receive notification of pin events.
_KSPROCESSPIN structure The KSPROCESSPIN structure describes the process state of a specific pin.
_KSPROCESSPIN_INDEXENTRY structure The KSPROCESSPIN_INDEXENTRY structure is used in Filter-Centric Processing to bring together all of the input and output pins in one context.
_KSPROPERTY_GRAPHMANAGER_INTERFACE structure .
_KSPROPERTY_SPHLI structure The KSPROPERTY_SPHLI structure is used to describe a rectangle of subpicture or screen whose color or contrast is to be changed.
_KSPROPERTY_SPPAL structure The KSPROPERTY_SPPAL structure is used to describe the palette of a subpicture display.
_KSP_BDA_NODE_PIN structure The KSP_BDA_NODE_PIN structure describes a property request to retrieve the controlling pin for a node.
_KSSTREAM_POINTER structure The KSSTREAM_POINTER structure is the basic AVStream pointer into a stream.
_KSSTREAM_POINTER_OFFSET structure The KSSTREAM_POINTER_OFFSET structure indexes bytes or mappings within a frame.
_KSSTREAM_SEGMENT structure The KSSTREAM_SEGMENT structure contains information that describes an I/O operation occurring on a stream.
_KS_COLCON structure The KS_COLCON structure is used to describe color and contrast settings.
_KS_COPY_MACROVISION structure The KS_COPY_MACROVISION structure specifies the Macrovision level of the data stream.
_KS_DVDCOPY_BUSKEY structure The KS_DVDCOPY_BUSKEY structure is used to describe the bus key information for the DVD copyright protection authentication process.
_KS_DVDCOPY_CHLGKEY structure The KS_DVDCOPY_CHLGKEY structure is used to describe the challenge key information for the DVD copyright protection authentication process.
_KS_DVDCOPY_DISCKEY structure The KS_DVDCOPY_DISCKEY structure is used to describe the disc key information for the DVD copyright protection authentication process.
_KS_DVDCOPY_REGION structure The KS_DVDCOPY_REGION structure is used to describe the copy control region according to language restrictions.
_KS_DVDCOPY_SET_COPY_STATE structure The KS_DVDCOPY_SET_COPY_STATE structure is used to specify the copyright protection state of the DVD decoder stream.
_KS_DVDCOPY_TITLEKEY structure The KS_DVDCOPY_TITLEKEY structure is used to describe the title key information for the DVD copyright protection authentication process.
_KS_DVD_YCrCb structure The KS_DVD_YCrCb structure is used to describe a color in the YCrCb colorspace.
_KS_DVD_YUV structure The KS_DVD_YUV structure is used to describe a color in the YUV colorspace.
_KS_VIDEO_STREAM_CONFIG_CAPS structure The KS_VIDEO_STREAM_CONFIG_CAPS structure describes the configuration and capabilities of a video stream, including analog video standard (for example, NTSC, PAL or SECAM), scaling, and cropping capabilities; minimum and maximum frame rates; and minimum and maximum data rates.
_MF_MDL_SHARED_PAYLOAD_KEY structure This union is used internally by the operating system.
_MPEG2_TRANSPORT_STRIDE structure The MPEG2_TRANSPORT_STRIDE structure describes the format block of the MPEG2 transport stride.
_PIPE_DIMENSIONS structure The PIPE_DIMENSIONS structure is for proxy use and not recommended for application use. PIPE_DIMENSIONS contains information that describes the compression/expansion ratio of frames on various pins related to a pipe.
_PIPE_TERMINATION structure The PIPE_TERMINATION structure is for proxy use and not recommended for application use. PIPE_TERMINATION contains information that describes the pin terminator of a pipe.
_STREAM_DATA_INTERSECT_INFO structure STREAM_DATA_INTERSECT_INFO describes the parameters of a data intersection operation.
_STREAM_METHOD_DESCRIPTOR structure .
_STREAM_PROPERTY_DESCRIPTOR structure STREAM_PROPERTY_DESCRIPTOR specifies the parameters of property get/set requests that the class driver passes to the minidriver.
_STREAM_TIME_REFERENCE structure .
_SWENUM_INSTALL_INTERFACE structure The SWENUM_INSTALL_INTERFACE structure describes a specific demand-load bus enumerator object interface to install.
_USBCAMD_DEVICE_DATA structure This structure is obsolete and is provided to maintain backward compatibility with the original USBCAMD.
_USBCAMD_DEVICE_DATA2 structure The USBCAMD_DEVICE_DATA2 structure specifies the entry points for a camera minidriver's functions that USBCAMD calls.
_pipe_config_descriptor structure The USBCAMD_Pipe_Config_Descriptor structure describes the association between pipes and streams.
_timecode structure The TIMECODE union describes a timecode from an external device. This structure is no longer used.
tagBDA_TRANSPORT_INFO structure The BDA_TRANSPORT_INFO structure describes formatting for a stream connection.
tagDEVCAPS structure The DEVCAPS structure describes the capabilities of an external device.
tagKSCAMERA_EXTENDEDPROP_CAMERAOFFSET structure The KSCAMERA_EXTENDEDPROP_CAMERAOFFSET structure contains the parameters for the Camera Angle Offset Control property.
tagKSCAMERA_EXTENDEDPROP_EVCOMPENSATION structure The EV Compensation Control provides for exposure control that is adjusted by increments of EV compensation steps.
tagKSCAMERA_EXTENDEDPROP_FIELDOFVIEW structure The Field of View Control property describes the current Field of View (FOV) of the camera along with the pitch angle of the camera position.
tagKSCAMERA_EXTENDEDPROP_HEADER structure The KSCAMERA_EXTENDEDPROP_HEADER structure is the payload header for an extend control property.
tagKSCAMERA_EXTENDEDPROP_METADATAINFO structure This structure represents the metadata information for the extended property control.
tagKSCAMERA_EXTENDEDPROP_PHOTOMODE structure The KSCAMERA_EXTENDEDPROP_PHOTOMODE structure contains the property data for the history frame counts in photo mode.
tagKSCAMERA_EXTENDEDPROP_ROI_CONFIGCAPS structure This structure contains the capabilities for an ROI control.
tagKSCAMERA_EXTENDEDPROP_ROI_CONFIGCAPSHEADER structure This structure contains the header information for ROI capabilities.
tagKSCAMERA_EXTENDEDPROP_ROI_EXPOSURE structure This structure contains the ROI info structure for exposure.
tagKSCAMERA_EXTENDEDPROP_ROI_FOCUS structure This structure contains the ROI info structure for focus.
tagKSCAMERA_EXTENDEDPROP_ROI_INFO structure This structure contains information about an ROI.
tagKSCAMERA_EXTENDEDPROP_ROI_ISPCONTROL structure This structure contains information for an ROI ISP control.
tagKSCAMERA_EXTENDEDPROP_ROI_ISPCONTROLHEADER structure This structure contains the header information for ROI ISP controls.
tagKSCAMERA_EXTENDEDPROP_ROI_WHITEBALANCE structure This structure contains the ROI info structure for white balance.
tagKSCAMERA_EXTENDEDPROP_VALUE structure The KSCAMERA_EXTENDEDPROP_VALUE structure is a data type union used to express an extended property value.
tagKSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING structure The KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING is a property payload structure for video processing settings related to white balance, exposure mode, and focus mode.
tagKSCAMERA_MAXVIDEOFPS_FORPHOTORES structure The KSCAMERA_MAXVIDEOFPS_FORPHOTORES structure contains the property data for maximum frame rate at a particular resolution for a camera supporting preview and capture.
tagKSCAMERA_METADATA_ITEMHEADER structure This structure contains the metadata header information that is filled by the camera driver.
tagKSCAMERA_METADATA_PHOTOCONFIRMATION structure This structure contains the photo confirmation metadata information that is filled by the camera driver.
tagKS_AMVPDATAINFO structure The KS_AMVPDATAINFO structure is used to describe the properties of a video port.
tagKS_AMVPDIMINFO structure The KS_AMVPDIMINFO structure is used to describe the dimensions of a video port.
tagKS_AMVPSIZE structure The KS_AMVPSIZE structure is used to describe the dimension of a video port (width by height).
tagKS_AnalogVideoInfo structure The KS_ANALOGVIDEOINFO structure describes an analog video stream.
tagKS_BDA_FRAME_INFO structure The KS_BDA_FRAME_INFO structure describes BDA extensions to the KSSTREAM_HEADER structure, which describes a packet of data to be read from or written to a streaming driver pin.
tagKS_BITMAPINFOHEADER structure The KS_BITMAPINFOHEADER structure describes details about the video stream, such as image dimensions and pixel depth.
tagKS_DATAFORMAT_DV_AVC structure The KS_DATAFORMAT_DV_AVC structure stores the data format for an AV/C digital video connection.
tagKS_DATAFORMAT_H264VIDEOINFO structure The KS_DATAFORMAT_H264VIDEOINFO structure describes the data formats range available for a stream.
tagKS_DATAFORMAT_IMAGEINFO structure Specifies an image data format that is used for an independent image pin (or stream).
tagKS_DATAFORMAT_MPEG2TS_AVC structure The KS_DATAFORMAT_MPEG2TS_AVC structure stores the data format for an AV/C MPEG2 connection.
tagKS_DATAFORMAT_VBIINFOHEADER structure The KS_DATAFORMAT_VBIINFOHEADER structure describes a vertical blanking interval (VBI) stream.
tagKS_DATAFORMAT_VIDEOINFOHEADER structure The KS_DATAFORMAT_VIDEOINFOHEADER structure describes a video stream that does not include bob or weave settings.
tagKS_DATAFORMAT_VIDEOINFOHEADER2 structure The KS_DATAFORMAT_VIDEOINFOHEADER2 structure describes a video stream that includes settings for bob or weave.
tagKS_DATAFORMAT_VIDEOINFO_PALETTE structure The KS_DATAFORMAT_VIDEOINFO_PALETTE structure describes color palette information.
tagKS_DATARANGE_ANALOGVIDEO structure The KS_DATARANGE_ANALOGVIDEO structure describes an analog video stream.
tagKS_DATARANGE_BDA_ANTENNA structure The KS_DATARANGE_BDA_ANTENNA structure describes a range of data formats for a BDA antenna stream.
tagKS_DATARANGE_BDA_TRANSPORT structure The KS_DATARANGE_BDA_TRANSPORT structure describes a range of data formats for a BDA transport stream.
tagKS_DATARANGE_DVVIDEO structure The KS_DATARANGE_DV_AVC structure stores a range of digital video formats.
tagKS_DATARANGE_DV_AVC structure The KS_DATARANGE_DV_AVC structure stores a range of AV/C digital video formats.
tagKS_DATARANGE_H264_VIDEO structure The KS_DATARANGE_H264_VIDEO structure describes the range of MPEG-2 video formats available for a stream.
tagKS_DATARANGE_IMAGE structure Specifies an image data range that is used in the KSPIN_DESCRIPTOR structure that describes a pin (or stream).
tagKS_DATARANGE_MPEG1_VIDEO structure The KS_DATARANGE_MPEG1_VIDEO structure describes the range of MPEG-1 video formats available for a stream.
tagKS_DATARANGE_MPEG2TS_AVC structure The KS_DATARANGE_MPEG2TS_AVC structure stores a range of AV/C MPEG2 formats.
tagKS_DATARANGE_MPEG2_VIDEO structure The KS_DATARANGE_MPEG2_VIDEO structure describes the range of MPEG-2 video formats available for a stream.
tagKS_DATARANGE_VIDEO structure The KS_DATARANGE_VIDEO structure describes a range of video streams without bob or weave settings.
tagKS_DATARANGE_VIDEO2 structure The KS_DATARANGE_VIDEO2 structure describes a video stream including bob or weave settings.
tagKS_DATARANGE_VIDEO_PALETTE structure The KS_DATARANGE_VIDEO_PALETTE structure describes a stream and its color capabilities.
tagKS_DATARANGE_VIDEO_VBI structure The KS_DATARANGE_VIDEO_VBI structure describes a range of data formats containing vertical blanking interval (VBI) data.
tagKS_FRAME_INFO structure The KS_FRAME_INFO structure extends the KSSTREAM_HEADER structure for video streams.
tagKS_H264VIDEOINFO structure The KS_H264VIDEOINFO describes the device capabilities that apply to the current media type.
tagKS_MPEAUDIOINFO structure The KS_MPEGAUDIOINFO structure describes an MPEG audio stream.
tagKS_MPEG1VIDEOINFO structure The KS_MPEG1VIDEOINFO structure describes an MPEG-1 video stream.
tagKS_MPEGVIDEOINFO2 structure The KS_MPEGVIDEOINFO2 structure describes an MPEG-2 video stream, including bob or weave settings.
tagKS_RGBQUAD structure The KS_RGBQUAD structure describes a color consisting of relative intensities of red, green, and blue, ranging from 0 to 255 (0x0 to 0xff).
tagKS_TVTUNER_CHANGE_INFO structure The KS_TVTUNER_CHANGE_INFO structure provides vertical blanking interval (VBI) codecs with information about the currently tuned channel.
tagKS_VBIINFOHEADER structure The KS_VBIINFOHEADER structure describes raw vertical blanking interval (VBI) streams.
tagKS_VBI_FRAME_INFO structure The KS_VBI_FRAME_INFO structure extends the KSSTREAM_HEADER structure for vertical blanking interval (VBI) streams.
tagKS_VIDEOINFO structure The KS_VIDEOINFO structure describes the bitmap and color information for a video stream.
tagKS_VIDEOINFOHEADER structure The KS_VIDEOINFOHEADER structure describes the bitmap and color information for a video stream.
tagKS_VIDEOINFOHEADER2 structure The KS_VIDEOINFOHEADER2 structure describes the details of a video stream, including bob or weave settings, copy protection, and pixel aspect ratio.
tagTIMECODE_SAMPLE structure The TIMECODE_SAMPLE structure describes a complete timecode.
tagTRANSPORTAUDIOPARMS structure The TRANSPORTAUDIOPARMS structure is defined but not used.
tagTRANSPORTBASICPARMS structure The TRANSPORTBASICPARMS structure is defined but not used.
tagTRANSPORTSTATUS structure The TRANSPORTSTATUS structure describes the current transport status.
tagTRANSPORTVIDEOPARMS structure The TRANSPORTVIDEOPARMS structure is defined but not presently used. It may be used in the future.
tag_KS_TRUECOLORINFO structure The KS_TRUECOLORINFO structure describes color palette and bitmask information for video images that also contain a palette.
tag_video_configure_parms structure .
tag_video_geterrortext_parms structure .
tag_video_open_parms structure .
tag_video_stream_init_parms structure .

Enumerations

Title Description
*PCAPTURE_MEMORY_ALLOCATION_FLAGS Enumeration The CAPTURE_MEMORY_ALLOCATION_FLAGS enumeration defines types of memory surfaces to which AVStream minidrivers can capture audio and video data.
*PKSPIN_COMMUNICATION Enumeration .
*PKSPIN_DATAFLOW Enumeration An instance of the KSPIN_DATAFLOW enumeration is returned by KSPROPERTY_PIN_DATAFLOW.
*PKSSTATE Enumeration The KSSTATE enumeration lists possible states of a kernel streaming object.
FRAMING_CACHE_OPS Enumeration .
FRAMING_PROP Enumeration .
KSALLOCATORMODE Enumeration .
KSCAMERA_EXTENDEDPROP_FOCUSSTATE Enumeration This enumeration contains the focus states.
KSCAMERA_EXTENDEDPROP_MetadataAlignment Enumeration This enumeration contains identifiers for the metadata alignment.
KSCAMERA_EXTENDEDPROP_ROITYPE Enumeration This enumeration contains the ROI types.
KSCAMERA_MetadataId Enumeration This enumeration contains identifiers for a metadata item.
KSCAMERA_PERFRAMESETTING_ITEM_TYPE Enumeration This enumeration contains the different item types for the per-frame settings DDI.
KSCOMPLETION_INVOCATION Enumeration .
KSDEGRADE_STANDARD Enumeration The KSDEGRADE_STANDARD enumeration lists different types of degradation.
KSDEVICE_THERMAL_STATE Enumeration A KS-defined enumeration for thermal state changes.
KSEVENTS_LOCKTYPE Enumeration The KSEVENTS_LOCKTYPE enumeration identifies the type of exclusion lock. The types are used with EventFlags in several event-set helper functions.
KSEVENT_CAMERACONTROL Enumeration Specifies camera control event notifications that the driver generates to indicate that an operation has been completed or canceled.
KSEVENT_CAMERAEVENT Enumeration KSEVENT_CAMERAEVENT enumerates a kernel streaming event set that can be used by the pipeline to enable or disable camera event notifications from the driver.
KSEVENT_CLOCK_POSITION Enumeration .
KSEVENT_CONNECTION Enumeration .
KSEVENT_DEVICE Enumeration Specifies event notifications that the driver generates to indicate that a device has been lost or preempted.
KSEVENT_PINCAPS_CHANGENOTIFICATIONS Enumeration .
KSEVENT_STREAMALLOCATOR Enumeration .
KSEVENT_VOLUMELIMIT Enumeration .
KSINTERFACE_FILEIO Enumeration .
KSINTERFACE_STANDARD Enumeration .
KSIOOPERATION Enumeration .
KSIRP_REMOVAL_OPERATION Enumeration .
KSLIST_ENTRY_LOCATION Enumeration .
KSMETHOD_STREAMALLOCATOR Enumeration .
KSMETHOD_STREAMIO Enumeration .
KSOBJECTTYPE Enumeration The KSOBJECTTYPE enumeration lists different types of kernel streaming objects.
KSPEEKOPERATION Enumeration .
KSPIN_MDL_CACHING_EVENT Enumeration This enumeration is used internally by the operating system.
KSPPROPERTY_ALLOCATOR_MDLCACHING Enumeration This enumeration is used internally by the operating system.
KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY Enumeration This enumeration contains extended camera controls.
KSPROPERTY_CAMERACONTROL_FLASH Enumeration Used to specify camera flash control.
KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY Enumeration Used to identify whether the camera's image pin and record pin are mutually exclusive. If they are mutually exclusive, then when the record pin is active, the image pin cannot be active, and vice-versa.
KSPROPERTY_CAMERACONTROL_PERFRAMESETTING_PROPERTY Enumeration This enumeration contains the property IDs defined for the per-frame property set.
KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST Enumeration Used to specify a camera region of interest.
KSPROPERTY_CAMERACONTROL_VIDEO_STABILIZATION_MODE Enumeration Used to specify camera video stabilization.
KSPROPERTY_CLOCK Enumeration .
KSPROPERTY_CONNECTION Enumeration .
KSPROPERTY_GENERAL Enumeration .
KSPROPERTY_GM Enumeration .
KSPROPERTY_MEDIASEEKING Enumeration .
KSPROPERTY_PIN Enumeration .
KSPROPERTY_QUALITY Enumeration .
KSPROPERTY_SERVICE Enumeration .
KSPROPERTY_STREAM Enumeration .
KSPROPERTY_STREAMALLOCATOR Enumeration .
KSPROPERTY_STREAMINTERFACE Enumeration .
KSPROPERTY_TOPOLOGY Enumeration .
KSRESET Enumeration .
KSSTACK_USE Enumeration .
KSSTREAM_POINTER_STATE Enumeration .
KSTARGET_STATE Enumeration .
KS_AMPixAspectRatio Enumeration The KS_AMPixAspectRatio enumeration defines the pixel aspect ratio that corresponds to a 720 480 NTSC video signal or a 720 × 576 PAL video signal.
KS_AMVP_MODE Enumeration The KS_AMVP_MODE enumeration defines video port display modes.
KS_AMVP_SELECTFORMATBY Enumeration The KS_AMVP_SELECTFORMATBY enumeration specifies the criteria that the Overlay Mixer Filter should use to select the video format.
KS_AnalogVideoStandard Enumeration The KS_AnalogVideoStandard enumeration defines various analog video standards that are used worldwide.
KS_CameraControlAsyncOperation Enumeration Defines notifications that the driver uses to start and stop an asynchronous camera operation, including setting the flash, the image pin control properties, the region of interest in the image, or video stabilization.
KS_CompressionCaps Enumeration The KS_CompressionCaps enumeration defines compression capabilities of a device.
KS_DVDCOPYSTATE Enumeration The KS_DVDCOPYSTATE enumeration describes the progress of the DVD copyright protection initialization, authentication and key negotiation sequence.
KS_LogicalMemoryType Enumeration .
KS_MPEG2Level Enumeration The KS_MPEG2Level enumeration describes MPEG-2 levels.
KS_MPEG2Profile Enumeration The KS_MPEG2Profile enumeration describes MPEG-2 profiles.
KS_SEEKING_CAPABILITIES Enumeration .
KS_SEEKING_FLAGS Enumeration The KS_SEEKING_FLAGS enumeration lists positioning options that can be used in conjunction with the KSPROPERTY_POSITIONS structure.
KS_TUNER_STRATEGY Enumeration The KS_TUNER_STRATEGY enumeration defines tuning method strategies.
KS_TUNER_TUNING_FLAGS Enumeration The KS_TUNER_TUNING_FLAGS enumeration defines tuning flags that describe the granularity of a tuning operation.
KS_VIDEODECODER_FLAGS Enumeration The KS_VIDEODECODER_FLAGS enumeration defines video decoder capabilities.
KS_VideoControlFlags Enumeration The KS_VideoControlFlags enumeration defines video control capabilities for a specific stream.
KS_VideoStreamingHints Enumeration The KS_VideoStreamingHints enumeration defines video compression hints.
LAMP_MODE Enumeration This enumeration contains the operating modes of a lamp device.
PIPE_ALLOCATOR_PLACE Enumeration .
PIPE_STATE Enumeration .
STREAM_BUFFER_TYPE Enumeration This enumeration defines the buffer types for StreamClassGetPhysicalAddress.
STREAM_DEBUG_LEVEL Enumeration The STREAM_DEBUG_LEVEL enumeration lists incrementally increasing levels of debugger output.
TIME_FUNCTION Enumeration .
VARENUM Enumeration .
VIDEOENCODER_BITRATE_MODE Enumeration The VIDEOENCODER_BITRATE_MODE enumeration describes the bit rate encoding modes supported by the device.
_AVCSTRM_FORMAT Enumeration The AVCSTRM_FUNCTION enumeration defines the AV/C subunit stream formats supported by avcstrm.sys.
_AVCSTRM_FUNCTION Enumeration The AVCSTRM_FUNCTION enumeration defines the functionality exposed by the avcstrm.sys driver.
_BdaLockType Enumeration The BDA_LockType enumerated type contains values that specify lock types for a signal.
_KSPIN_FLAG_AVC Enumeration The KSPIN_FLAG_AVC enumeration type is used for connection management and in the AVC_FUNCTION_GET_CONNECTINFO function code.
_SRB_COMMAND Enumeration .
_STREAM_MINIDRIVER_DEVICE_NOTIFICATION_TYPE Enumeration .
_STREAM_MINIDRIVER_STREAM_NOTIFICATION_TYPE Enumeration .
_STREAM_PRIORITY Enumeration TD.
_tagAVC_FUNCTION Enumeration The AVC_FUNCTION enumeration type is used to specify AV/C subunit functions.
_tagAvcCommandType Enumeration The AvcCommandType enumeration type is used to indicate the type of command issued by a subunit driver to its AV/C subunit through AVC_FUNCTION_COMMAND or AVC_FUNCTION_GET_REQUEST function codes.
_tagAvcResponseCode Enumeration The AvcResponseCode enumeration type is used to indicate the type of response received by a subunit driver from its AV/C subunit through AVC_FUNCTION_COMMAND or AVC_FUNCTION_SEND_RESPONSE function codes.
_tagAvcSubunitType Enumeration The AvcSubunitType enumeration type is used to indicate the type of AV/C subunit.

I/O control codes

Title Description
IOCTL_AVCSTRM_CLASS IOCTL 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.
IOCTL_AVC_BUS_RESET IOCTL The IOCTL_AVC_BUS_RESET I/O control code allows the caller to complete any previous IOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFO and IOCTL_AVC_REMOVE_VIRTUAL_SUBUNIT_INFO control requests that did not use the AVC_SUBUNIT_ADDR_TRIGGERBUSRESET flag.
IOCTL_AVC_CLASS IOCTL The IOCTL_AVC_CLASS I/O control code is supported only from kernel mode, using the IRP_MJ_INTERNAL_DEVICE_CONTROL dispatch.Avc.sys supports two device interfaces, depending upon the type of instance (peer or virtual).
IOCTL_AVC_REMOVE_VIRTUAL_SUBUNIT_INFO IOCTL The IOCTL_AVC_REMOVE_VIRTUAL_SUBUNIT_INFO I/O control code controls the enumeration of virtual subunits.
IOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFO IOCTL The IOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFO I/O control code controls the enumeration of virtual subunits.
IOCTL_KS_DISABLE_EVENT IOCTL An application can use IOCTL_KS_DISABLE_EVENT to rescind a previous request notification. The application specifies IOCTL_KS_DISABLE_EVENT in the IoControl parameter of a call to KsSynchronousDeviceControl.
IOCTL_KS_ENABLE_EVENT IOCTL An application can use IOCTL_KS_ENABLE_EVENT to request notification of a KS event type, or to determine the events supported by a KS object.
IOCTL_KS_HANDSHAKE IOCTL A kernel-mode client can use IOCTL_KS_HANDSHAKE to negotiate an interface between unconnected AVStream pins.
IOCTL_KS_METHOD IOCTL An application can use IOCTL_KS_METHOD to execute a method on a KS object. The application passes IOCTL_KS_METHOD with the parameters described below to the KsSynchronousDeviceControl function.
IOCTL_KS_PROPERTY IOCTL An application can use IOCTL_KS_PROPERTY to get or set properties, or to determine the properties supported by a KS object. The application passes IOCTL_KS_PROPERTY with the parameters described below to the KsSynchronousDeviceControl function.
IOCTL_KS_READ_STREAM IOCTL An application can use IOCTL_KS_READ_STREAM to read data from a pin. The application passes IOCTL_KS_READ_STREAM with the parameters described below to the KsSynchronousDeviceControl function.
IOCTL_KS_RESET_STATE IOCTL An application can use IOCTL_KS_RESET_STATE to return a pin to the state it was in at Acquire-time. The application passes IOCTL_KS_RESET_STATE with the parameters described below to the KsSynchronousDeviceControl function.
IOCTL_KS_WRITE_STREAM IOCTL An application can use IOCTL_KS_WRITE_STREAM to write data to a pin. The application passes IOCTL_KS_WRITE_STREAM with the parameters described below to the KsSynchronousDeviceControl function.
IOCTL_LAMP_GET_CAPABILITIES_COLOR IOCTL The IOCTL_LAMP_GET_CAPABILITIES_COLOR control code queries the capabilities of the lamp when the device is configured to emit color light.
IOCTL_LAMP_GET_CAPABILITIES_WHITE IOCTL The IOCTL_LAMP_GET_CAPABILITIES_WHITE control code queries the capabilities of the lamp when the device is configured to emit white light.
IOCTL_LAMP_GET_EMITTING_LIGHT IOCTL The IOCTL_LAMP_GET_EMITTING_LIGHT control code queries if the lamp is turned on.
IOCTL_LAMP_GET_INTENSITY_COLOR IOCTL The IOCTL_LAMP_GET_INTENSITY_COLOR control code queries the light intensity when the lamp is configured to emit color light.
IOCTL_LAMP_GET_INTENSITY_WHITE IOCTL The IOCTL_LAMP_GET_INTENSITY_WHITE control code queries the light intensity when the lamp is configured to emit white light.
IOCTL_LAMP_GET_MODE IOCTL The IOCTL_LAMP_GET_MODE control code queries the mode with which the lamp is currently configured.
IOCTL_LAMP_SET_EMITTING_LIGHT IOCTL The IOCTL_LAMP_SET_EMITTING_LIGHT control code turns the lamp on or off.
IOCTL_LAMP_SET_INTENSITY_COLOR IOCTL The IOCTL_LAMP_SET_INTENSITY_COLOR control code sets the lamp to the specified light intensity.
IOCTL_LAMP_SET_INTENSITY_WHITE IOCTL The IOCTL_LAMP_SET_INTENSITY_WHITE control code sets the lamp to the specified light intensity.
IOCTL_LAMP_SET_MODE IOCTL The IOCTL_LAMP_SET_MODE control code sets the mode in which the lamp operates.
IOCTL_SWENUM_GET_BUS_ID IOCTL TBD
IOCTL_SWENUM_INSTALL_INTERFACE IOCTL TBD
IOCTL_SWENUM_REMOVE_INTERFACE IOCTL TBD

Interfaces

Title Description
IKsAggregateControl interface The IKsAggregateControl interface provides methods that add and remove COM servers as aggregate providers on KS objects that support the interface.
IKsAllocator interface TheIKsAllocator interface provides methods that control and query an allocator. IKsAllocator is for proxy use and not recommended for application use.
IKsAllocatorEx interface The IKsAllocatorEx interface is for proxy use and not recommended for application use. IKsAllocatorEx inherits all the methods of the IKsAllocator interface and extends IKsAllocator to provide methods that further control and query an allocator.
IKsClockPropertySet interface The IKsClockPropertySet interface provides methods that let the proxy accurately reflect time.
IKsControl interface The IKsControl interface is a COM-style interface implemented on AVStream filters and pins.
IKsControl interface The IKsControl interface provides user-mode methods that control a KS filter or KS pin. See the IKsControl AVStream COM interface for information about the user-mode equivalent of this interface.
IKsDataTypeCompletion interface The IKsDataTypeCompletion interface provides a method to complete partially specified media types that are passed to the IAMStreamConfig
IKsDataTypeHandler interface The IKsDataTypeHandler interface provides methods that perform optional preprocessing and postprocessing of media samples.
IKsDeviceFunctions interface The IKsDeviceFunctions interface is a COM-style interface implemented on AVStream devices. This interface is available in Windows Server 2003 SP1 and later versions of Windows.
IKsInterfaceHandler interface The IKsInterfaceHandler interface provides methods that marshal samples into the kernel based on the KSPIN_INTERFACE structure specified for the established connection. The IID for this interface is IID_IKsInterfaceHandler.
IKsNotifyEvent interface The IKsNotifyEvent interface provides a method to cause the KS object that owns a DirectShow event to issue the event with the given parameters.
IKsObject interface The IKsObject interface provides a method to retrieve the file handle of a KS object.
IKsPin interface The IKsPin interface provides methods that control and retrieve information about a pin.
IKsPinEx interface The IKsPinEx interface inherits all the methods of the IKsPin interface and extends IKsPin to provide a method that notifies the filter graph of an error to give the filter graph an opportunity to halt.
IKsPinFactory interface The IKsPinFactory interface provides a method that retrieves the identifier of a pin factory.
IKsPinPipe interface The IKsPinPipe interface is for proxy use and not recommended for application use. IKsPinPipe provides methods that control a pin pipe.
IKsPropertySet interface The IKsPropertySet interface provides methods that access properties of KS objects that are implemented in a KS minidriver.
IKsQualityForwarder interface The IKsQualityForwarder interface inherits the method of the IKsObject interface and extends IKsObject to provide a method that flushes information from a pin.
IKsReferenceClock interface The IKsReferenceClock interface is a COM-style interface that is provided by AVStream on all pins. The pin passes the request onto the master clock.
IKsTopology interface The IKsTopology interface provides a method that opens topology node objects contained within a filter.

Macros

Title Description
INIT_AVCSTRM_HEADER function The INIT_AVCSTRM_HEADER macro initializes the SizeOfThisBlock, Version and Function members of the AVC_STREAM_REQUEST_BLOCK structure.
KSEVENT_ENTRY_IRP_STORAGE function This macro retrieves a pointer to the KSEVENT_ENTRY structure stored in Irp.
KSEVENT_ITEM_IRP_STORAGE function This macro retrieves a pointer to the KSEVENT_ITEM structure stored in Irp.
KSEVENT_SET_IRP_STORAGE function This macro retrieves a pointer to the KSEVENT_SET structure stored in Irp. This information is initialized only for basic support requests; it is not initialized for enable requests.
KSMETHOD_ITEM_IRP_STORAGE function This macro accesses a pointer to the relevant KSMETHOD_ITEM. Note that this pointer is only set when using KsMethodHandlerWithAllocator.
KSMETHOD_SET_IRP_STORAGE function This macro returns a pointer to the KSMETHOD_SET in which the method is located.
KSMETHOD_TYPE_IRP_STORAGE function This macro accesses the type of method as described in the KSMETHOD_ITEM. If the method will be processed asynchronously using KsDispatchSpecificMethod, this storage must be maintained intact.
KsDeleteFilterFactory function KsDeleteFilterFactory deletes a given filter factory.
KsDiscard function The KsDiscard macro removes a given item from an object bag.

Methods

Title Description
CreateNodeInstance method The CreateNodeInstance method requests a KS filter object to open a topology node object.
GetCorrelatedPhysicalTime method The IKsReferenceClock
GetCorrelatedTime method The IKsReferenceClock
GetPhysicalTime method The IKsReferenceClock
GetResolution method The IKsReferenceClock
GetState method The IKsReferenceClock
GetTime method The IKsReferenceClock
KsAddAggregate method The KsAddAggregate method adds a COM server as an aggregate provider to the list of interface providers for the KS object that exposes the IKsAggregateControl interface.
KsCompleteIo method The KsCompleteIo method cleans up extended headers and releases media samples after input and output (I/O) complete.
KsCompleteIoOperation method The KsCompleteIoOperation method cleans up the extended header and completes the input and output (I/O) operation.
KsCompleteMediaType method The KsCompleteMediaType method completes a partially-specified media type that was first presented to the IAMStreamConfig
KsCreateSinkPinHandle method The KsCreateSinkPinHandle method creates a pin handle and stores it in the KS pin object.
KsDecrementPendingIoCount method The KsDecrementPendingIoCount method decrements the number of input/output (I/O) operations that are in progress on a pin.
KsDeliver method The KsDeliver method delivers a media sample from an output pin to an input pin, continues an I/O operation by retrieving the next buffer from an allocator, and submits the buffer to the associated device.
KsEvent method The IKsControl
KsEvent method The KsEvent method enables or disables an event, along with any other defined support operations available on an event set.
KsFlushClient method The KsFlushClient method flushes information from a pin.
KsGetAllocatorHandle method Retrieves a file handle to an allocator.
KsGetAllocatorMode method Returns the mode in which an allocator allocates memory.
KsGetAllocatorStatus method Retrieves the status of an allocator.
KsGetConnectedPin method Not recommended for application use.
KsGetCorrelatedPhysicalTime method The KsGetCorrelatedPhysicalTime method retrieves the physical time and the correlated system time from the underlying clock.
KsGetCorrelatedTime method The KsGetCorrelatedTime method retrieves the current time and the correlated system time from the underlying clock.
KsGetCurrentCommunication method The KsGetCurrentCommunication method retrieves the current communication direction, interface, and medium of a pin.
KsGetFilterName method Returns the name of a filter.
KsGetObjectHandle method The KsGetObjectHandle method retrieves a file handle to a KS object.
KsGetPhysicalTime method The KsGetPhysicalTime method retrieves the physical time from the underlying clock.
KsGetPinBusCache method Not recommended for application use.
KsGetPinFramingCache method Not recommended for application use.
KsGetPinName method Returns the name of a pin.
KsGetPipe method Not recommended for application use.
KsGetPipeAllocatorFlag method Not recommended for application use.
KsGetProperties method Returns the properties for an allocator.
KsGetResolution method The KsGetResolution method retrieves the clock resolution from the underlying clock.
KsGetState method The KsGetState method retrieves the streaming state of a pin from the underlying clock.
KsGetTime method The KsGetTime method retrieves the time of the underlying clock.
KsIncrementPendingIoCount method The KsIncrementPendingIoCount method increments the number of input/output (I/O) operations that are in progress on a pin.
KsIsMediaTypeInRanges method The KsIsMediaTypeInRanges method validates that a media type is within the provided data ranges.
KsMediaSamplesCompleted method The KsMediaSamplesCompleted method informs a pin that a stream segment completed.
KsMethod method The IKsControl
KsMethod method The KsMethod method sends a method to a KS object, along with any other defined support operations available on a method set.
KsNotifyError method The KsNotifyError method notifies the filter graph of an error to give the filter graph an opportunity to halt.
KsNotifyEvent method The KsNotifyEvent method requests that the KS object that owns the given DirectShow event notify the calling application with the given parameters whenever action related to the event occurs.
KsPeekAllocator method The KsPeekAllocator method returns a pointer to an IMemAllocator interface for a pin's assigned allocator.
KsPinFactory method The KsPinFactory method retrieves the identifier of a pin factory.
KsPrepareIoOperation method The KsPrepareIoOperation method initializes the extended header and prepares the media sample for an I/O operation.
KsProcessMediaSamples method The KsProcessMediaSamples method processes media samples.
KsPropagateAcquire method The KsPropagateAcquire method directs all the pins on the filter to attain the Acquire state.
KsProperty method The IKsControl
KsProperty method The KsProperty method sets a property or retrieves property information, along with any other defined support operations available on a property set.
KsQueryExtendedSize method The KsQueryExtendedSize method retrieves extended header information required for input and output (I/O) operations.
KsQueryInterfaces method The KsQueryInterfaces method retrieves interfaces that a pin supports.
KsQueryMediums method The KsQueryMediums method retrieves mediums that a pin supports.
KsRemoveAggregate method The KsRemoveAggregate method removes a previously added COM server aggregate provider from the list of interface providers for the KS object that exposes the IKsAggregateControl interface.
KsSetAllocatorHandle method Sets the handle for an allocator.
KsSetAllocatorMode method Sets the mode in which an allocator allocates memory.
KsSetCorrelatedPhysicalTime method The KsSetCorrelatedPhysicalTime method sets the physical time with the correlated system time on the underlying clock.
KsSetCorrelatedTime method The KsSetCorrelatedTime method sets the current time with the correlated system time on the underlying clock.
KsSetMediaType method The KsSetMediaType method sets the media type for a data type handler.
KsSetPhysicalTime method The KsSetPhysicalTime method sets the physical time on the underlying clock.
KsSetPin method The KsSetPin method informs the streaming interface handler about the pin with which to communicate when passing data.
KsSetPinBusCache method Not recommended for application use.
KsSetPinFramingCache method Not recommended for application use.
KsSetPipe method Not recommended for application use.
KsSetPipeAllocatorFlag method Not recommended for application use.
KsSetProperties method Sets the properties for an allocator.
KsSetTime method The KsSetTime method sets the current time on the underlying clock.
RegisterAdapterObjectEx method The IKsDeviceFunctions
Set method The Set method sets a property identified by a property-set GUID and a property identifier.