Comment appliquer des effets à une vidéo capturée (HTML)
[ Cet article est destiné aux développeurs Windows 8.x et Windows Phone 8.x qui créent des applications Windows Runtime. Si vous développez une application pour Windows 10, voir la Documentation ]
Utilisez la méthode MediaCapture.AddEffectAsync pour appliquer des effets à une vidéo capturée.
Il peut s’agir d’effets intégrés, comme l’effet VideoStabilization qui est pris en charge sur Windows ou SlowMotionEffectDefinition qui est pris en charge sur Windows Phone, ou d’effets personnalisés qui sont des MFT (Media Foundation Transforms). Pour plus d’informations sur la création et l’utilisation de MFT, voir Media Foundation Transforms et l’Exemple d’extension multimédia.
Objectif: Ce didacticiel décrit comment appliquer des effets à la vidéo capturée.
Prérequis
Cette rubrique part du principe que vous savez créer une application Windows Runtime de base en JavaScript. Pour obtenir de l’aide lors de la création de votre première application, voir Créer votre première application du Windows Store en JavaScript.
Instructions
Pour ajouter un effet à une vidéo capturée, appelez la méthode AddEffectAsync. Cette méthode prend les paramètres suivants :
- MediaStreamType - une des valeurs de l’énumération MediaStreamType qui spécifie si le flux est destiné à un enregistrement vidéo, un aperçu vidéo, un contenu audio ou une photo.
- effectActivationID - identificateur de classe de la classe d’exécution activable qui implémente l’effet. Ce paramètre est ajouté à la chaîne d’effets qui est ajoutée au flux source sortant de la source du périphérique. La classe d’exécution doit implémenter l’interface IMediaExtension.
- effectSettings - interface IPropertySet qui contient des paramètres de configuration supplémentaires pour l’effet. Si l’effet ne nécessite aucune configuration supplémentaire, ce paramètre doit être nul.
L’application peut appeler cette méthode plusieurs fois pour ajouter plusieurs effets.
Cet exemple appelle AddEffectAsync pour ajouter l’effet VideoStabilization à un objet MediaCapture.
// captureMgr is a MediaCapture object defined elsewhere
capturMgr.addEffectAsync(
Windows.Media.Capture.MediaStreamType.videoRecord,
"Windows.Media.VideoEffects.VideoStabilization",
null);
Remarque Cet exemple utilise l’effet VideoStabilizationEffect, qui n’est pas pris en charge par les applications du Windows Phone Store, mais AddEffectAsync peut être utilisé pour ajouter d’autres effets pris en charge.
Récapitulatif
Pour un autre exemple d’application d’un effet à une vidéo, voir Comment ajouter la stabilisation vidéo et l’Exemple de capture multimédia.