PFNUSBCAMD_SetIsoPipeState fonction de rappel (usbcamdi.h)
Le service USBCAMD_SetIsoPipeState permet au minidriver de caméra de contrôler l’état de diffusion en continu sur le canal isochrone.
Syntaxe
PFNUSBCAMD_SetIsoPipeState PfnusbcamdSetisopipestate;
NTSTATUS PfnusbcamdSetisopipestate(
[in] PVOID DeviceContext,
[in] ULONG PipeStateFlags
)
{...}
Paramètres
[in] DeviceContext
Pointeur vers un contexte spécifique à l’appareil.
[in] PipeStateFlags
Spécifie l’état du canal isochrone. Cet argument doit être défini sur l’une des valeurs suivantes :
Drapeau | Signification |
---|---|
USBCAMD_STOP_STREAM | Cet indicateur indique d’arrêter la diffusion en continu. |
USBCAMD_START_STREAM | Cet indicateur indique de démarrer la diffusion en continu. |
Valeur de retour
USBCAMD_SetIsoPipeState retourne STATUS_SUCCESS si l’appel a réussi. Voici d’autres codes d’erreur possibles :
Retourner le code | Description |
---|---|
STATUS_INVALID_PARAMETER | L’état du canal demandé est identique à l’état actuel du canal. |
STATUS_PENDING | La modification de l’état du canal est différée. |
STATUS_INSUFFICIENT_RESOURCES | Il existe des ressources insuffisantes pour allouer un élément de travail pour modifier l’état du canal. |
Remarques
Notez que l’état de diffusion en continu sur le canal isochronous fonctionne différemment de l’état de diffusion en continu dans la classe de flux et dans Microsoft DirectShow. Il est possible d’arrêter le canal isochronous de la diffusion en continu pendant une courte période, tandis que le graphique de capture vidéo global est toujours dans un état d’exécution.
Cette fonction est utilisée pour activer les caméras en mode double. Dans une caméra double mode, s’il existe une demande d’obtention de données pendant que la diffusion en continu est en cours, le flux doit être arrêté sur le canal isochrone. L’appel continu est ensuite géré, puis le flux isochronous doit être redémarré, tandis que le graphique global de flux/DirectShow est toujours dans un état Exécuter.
L’utilisation de cette fonction ne vous permet pas de modifier le paramètre de remplacement au sein de l’interface de diffusion vidéo USB ou de la bande passante du canal. Le flux isochrone doit être fermé avant la modification du paramètre de remplacement.
USBCAMD_SetIsoPipeState n’est pas disponible dans USBCAMD version 1.0.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Bureau |
d’en-tête | usbcamdi.h (include Usbcamdi.h) |