Cómo aplicar efectos a los vídeos capturados (HTML)

[ Este artículo está destinado a desarrolladores de Windows 8.x y Windows Phone 8.x que escriben aplicaciones de Windows Runtime. Si estás desarrollando para Windows 10, consulta la documentación más reciente ]

Usa el método MediaCapture.AddEffectAsync para aplicar efectos a los vídeos capturados.

Los efectos pueden ser efectos integrados (como el efecto VideoStabilization para Windows o el efecto SlowMotionEffectDefinition para Windows Phone), o bien efectos personalizados, que son transformaciones de Media Foundation (MFT). Para más información sobre cómo crear y usar MFT, consulta Transformaciones de Media Foundation y la muestra de extensión multimedia.

Objetivo: En este tutorial se describe cómo aplicar efectos a los vídeos capturados.

Requisitos previos

En este tema se da por hecho que sabes crear una aplicación de Windows en tiempo de ejecución básica con JavaScript. Si necesitas ayuda para crear tu primera aplicación, consulta Crear la primera aplicación de la Tienda Windows con JavaScript.

Instrucciones

Para agregar un efecto a los vídeos capturados, llama al método AddEffectAsync. Este método toma los siguientes parámetros:

  • MediaStreamType - Uno de los valores de la enumeración MediaStreamType que especifica si la secuencia es para grabación de vídeo, vista previa de vídeo, audio o foto.
  • effectActivationID - El identificador de la clase en tiempo de ejecución activable que implementa el efecto. Este parámetro se agrega a la cadena de efectos agregados a la secuencia de origen proveniente del origen de dispositivo. La clase en tiempo de ejecución debe implementar la interfaz IMediaExtension.
  • effectSettings - Un IPropertySet que contiene parámetros de configuración adicionales para el efecto. Si no se necesita realizar ninguna configuración adicional para el efecto, este parámetro debe ser nulo.

La aplicación puede llamar varias veces a este método para agregar muchos efectos.

En este ejemplo se llama a AddEffectAsync para agregar el efecto VideoStabilization a un objeto MediaCapture.

    // captureMgr is a MediaCapture object defined elsewhere
    capturMgr.addEffectAsync(
        Windows.Media.Capture.MediaStreamType.videoRecord,
        "Windows.Media.VideoEffects.VideoStabilization",
        null);

Nota  En este ejemplo se usa el efecto VideoStabilizationEffect, que no es compatible con las aplicaciones de la Tienda de Windows Phone, aunque puedes usar AddEffectAsync para agregar otros efectos compatibles.

Resumen

Para obtener otro ejemplo de cómo agregar un efecto a los vídeos, consulta el tema sobre cómo agregar estabilización de vídeo y la muestra de captura multimedia.

Temas relacionados

Muestra de captura de multimedia

Muestra de extensión multimedia