Vídeo interactivo

El visor de vídeo interactivo es un reproductor de vídeo que reproduce flujo continuo y vídeo progresivo codificado en formato H.264.

El visor también muestra muestras de productos interactivas junto al contenido del vídeo. Se admiten los conjuntos de vídeos únicos y los conjuntos de vídeos adaptables. Está diseñado para funcionar tanto en navegadores web móviles como de escritorio que admiten vídeo HTML5. El visor admite subtítulos opcionales que se muestran sobre el contenido de vídeo, la navegación por capítulos de vídeo y las herramientas de uso compartido en redes sociales. El propósito de este visor es ayudarle a implementar una experiencia de "vídeo de ventas". Es decir, los usuarios pueden seleccionar una muestra asociada a una región horaria de vídeo en particular y ser redirigidos a una Vista rápida o a una página de detalles del producto en el sitio web del cliente.

El tipo de visor es 510.

Direcciones URL de demostración

https://marketing.adobe.com/resources/help/en_US/dm/shoppable-video/glacier/InteractiveVideoViewerDemo.html

y

https://marketing.adobe.com/resources/help/en_US/dm/shoppable-video/AXIS/index.html

Requisitos del sistema

Consulte Requisitos del sistema.

Uso del visor de vídeo interactivo

El visor de vídeo interactivo representa un archivo JavaScript principal y un conjunto de archivos auxiliares (un solo JavaScript incluye todos los componentes del SDK de visor utilizados por este visor, recursos y CSS concretos) descargados por el visor en tiempo de ejecución.

El visor de vídeo interactivo se puede utilizar en modo emergente mediante la página HTML preparada para la producción que se proporciona con los visores de servicio de imágenes. También se puede utilizar en modo incrustado, donde se integra en la página web de destino mediante la API documentada.

La configuración y la aplicación de aspectos son similares a las de los demás visores descritos en esta guía. Todas las apariencias se logran mediante hojas de estilo en cascada (CSS) personalizadas.

Consulte Referencia de comandos común a todos los visores: Atributos de configuración y Referencia de comandos común a todos los visores: URL

Interactuar con el visor de vídeo interactivo

El visor de vídeo interactivo proporciona un conjunto de controles de interfaz de usuario estándar para la reproducción de vídeo, como un botón de reproducción/pausa, una barra de desplazamiento de vídeo, una burbuja de tiempo de vídeo, un indicador de tiempo de reproducción/tiempo total, un control de volumen, un botón de pantalla completa y un botón de subtítulos opcionales. Todos estos controles se agrupan en una barra de control directamente debajo de la vista principal.

Tenga en cuenta que en dispositivos táctiles el control de volumen está oculto en la interfaz de usuario, ya que sólo es posible controlar el volumen mediante los botones de hardware del dispositivo.

Cuando el visor funciona en modo emergente, no hay un botón de pantalla completa disponible en la interfaz de usuario.

El visor muestra un panel con muestras interactivas a la derecha del área de visualización de vídeo. La lista de las muestras avanza automáticamente a medida que se reproduce el vídeo, de modo que se muestren las muestras correspondientes a la región del vídeo actual. Al tocar o hacer clic en una muestra, se déclencheur una acción asociada con dicha muestra durante el tiempo de creación. Según cómo lo configure, el déclencheur puede redirigir a una página diferente del sitio web o devolver la información del producto a la lógica de la página web, lo que a su vez puede déclencheur la apertura de una Vista rápida que muestre el contenido del producto relacionado.

Es posible navegar rápidamente por el contenido del vídeo cuando se activa la sección de vídeo. Los capítulos de vídeo se muestran como marcadores en la pista de desplazamiento de vídeo y muestran el título y la descripción del capítulo al pasar el cursor (o al tocar un solo toque en sistemas táctiles). El cliente puede "buscar" un capítulo determinado haciendo clic en un marcador de capítulo o tocando una burbuja de descripción de capítulo.

El visor también admite una serie de herramientas de uso compartido en medios sociales. Están disponibles como un solo botón en la interfaz de usuario que se expande a una barra de herramientas de uso compartido cuando el usuario hace clic o toca en ella. La barra de herramientas de uso compartido contiene un icono para cada tipo de canal de uso compartido admitido, como Facebook, Twitter, uso compartido de correo electrónico, código incrustado y uso compartido de vínculos. Cuando se activan las herramientas de uso compartido de correo electrónico, uso compartido incrustado o uso compartido de vínculos, el visor muestra un cuadro de diálogo modal con el correspondiente formulario de entrada de datos. Cuando se llama a Facebook o Twitter, el visor redirige al usuario a un cuadro de diálogo de uso compartido estándar desde un servicio de medios sociales. Además, cuando se activa una herramienta de uso compartido, la reproducción de vídeo se pausa automáticamente. Las herramientas de uso compartido no están disponibles en modo de pantalla completa debido a las restricciones de seguridad del explorador web.

El visor es totalmente accesible mediante el teclado. Consulte Navegación y accesibilidad del teclado.

Incrustación del visor de vídeo interactivo

El visor de vídeo interactivo está diseñado para incrustarse en la página de alojamiento. Una página web de este tipo puede tener un diseño estático o puede ser "interactiva" y mostrarse de forma diferente en distintos dispositivos o en diferentes tamaños de ventana del navegador.

Para satisfacer estas necesidades, el visor admite dos modos de operación principales: incrustación de tamaño fijo e incrustación adaptable.

Acerca del modo de incrustación de tamaño fijo y el modo de incrustación de diseño interactivo

En el modo incrustado, el visor se agrega a la página web existente, que puede tener ya contenido de cliente no relacionado con el visor. Normalmente, el visor ocupa solo una parte del espacio de una página web.

Los casos de uso principales son páginas web orientadas a equipos de escritorio o tabletas, y también páginas diseñadas con capacidad de respuesta que ajustan el diseño automáticamente en función del tipo de dispositivo.

La incrustación de tamaño fijo se utiliza cuando el visor no cambia su tamaño después de la carga inicial. Esta es la mejor opción para las páginas web con un diseño estático.

La incrustación de diseño adaptable supone que el visor puede necesitar cambiar el tamaño en tiempo de ejecución en respuesta al cambio de tamaño de su contenedor DIV. El caso de uso más común es agregar un visor a una página web que utilice un diseño de página flexible.

En el modo de incrustación de diseño interactivo, el visor se comporta de forma diferente en función del tamaño de la página web de su contenedor DIV. Si la página web establece únicamente la anchura del contenedor DIV, dejando su altura sin restricciones, el visor elige automáticamente su altura según la proporción de aspecto del recurso que se utilice. Esta funcionalidad garantiza que el recurso encaje perfectamente en la vista sin ningún relleno en los lados. Este caso de uso es el más común para las páginas Web que utilizan marcos de diseño de Web interactivos como Bootstrap, Foundation, etc.

De lo contrario, si la página web establece tanto la anchura como la altura del contenedor del visor DIV, el visor rellena esa área y sigue el tamaño que proporciona el diseño de la página web. Un buen ejemplo es la incrustación del visor en una superposición modal, donde el tamaño de la superposición depende del tamaño de la ventana del navegador web.

Incrustación de tamaño fijo

Para agregar el visor a una página web, haga lo siguiente:

  1. Añadir el archivo JavaScript del visor en la página web.

  2. Definición del contenedor DIV.

  3. Configuración del tamaño del visor.

  4. Creación e inicialización del visor.

  5. Añadir el archivo JavaScript del visor en la página web.

    La creación de un visor requiere que agregue una etiqueta de script en el encabezado HTML. Antes de usar la API de visor, asegúrese de incluir InterativeVideoViewer.js. El archivo InteractiveVideoViewer.js se encuentra en la subcarpeta html5/js/ de la implementación estándar de IS-Viewers:

<s7viewers_root>/etc/dam/viewers/s7viewers/html5/js/InteractiveVideoViewer.js

Puede utilizar una ruta relativa si el visor está implementado en uno de los servidores de Adobe Dynamic Media Classic y se suministra desde el mismo dominio. En caso contrario, especifique una ruta completa a uno de los servidores Adobe Dynamic Media Classic que tenga instalados los visores IS.

La ruta relativa tiene el siguiente aspecto:

<script language="javascript" type="text/javascript" src="/etc/dam/viewers/s7viewers/html5/js/InteractiveVideoViewer.js"></script>
NOTA

Solo debe hacer referencia al archivo JavaScript include del visor principal de la página. No debe hacer referencia a ningún archivo JavaScript adicional del código de la página web que pueda descargarse mediante la lógica del visor en tiempo de ejecución. En particular, no haga referencia directa a la biblioteca Utils.js del SDK de HTML5 cargada por el visor desde la ruta de contexto /s7viewers (denominada SDK consolidado include). El motivo es que la ubicación de Utils.js o bibliotecas de visores de tiempo de ejecución similares se administra completamente mediante la lógica del visor y la ubicación cambia entre las versiones del visor. Adobe no mantiene versiones anteriores del visor secundario includes en el servidor.

Como resultado, la colocación de una referencia directa a cualquier JavaScript include secundario utilizado por el visor en la página interrumpe la funcionalidad del visor en el futuro cuando se implemente una nueva versión del producto.

  1. Definición del contenedor DIV.

    Añada un elemento vacío DIV en la página donde desee que aparezca el visor. El elemento DIV debe tener su ID definido porque este ID se pasa más tarde a la API del visor. El DIV tiene su tamaño especificado mediante CSS.

    El marcador de posición DIV es un elemento posicionado, lo que significa que la propiedad CSS position se establece en relative o absolute.

    Para que la función de pantalla completa funcione correctamente en Internet Explorer, asegúrese de que no haya otros elementos en el DOM que tengan un orden de apilamiento superior al del marcador de posición DIV.

    A continuación se muestra un ejemplo de un elemento de marcador de posición definido DIV:

    <div id="s7viewer" style="position:relative"></div>
    
  2. Configuración del tamaño del visor

    Puede establecer el tamaño estático del visor declarándolo para la clase CSS de nivel superior .s7interactivevideoviewer en unidades absolutas o utilizando el modificador stagesize.

    Puede colocar el tamaño en CSS directamente en la página HTML o en un archivo CSS de visor personalizado, que posteriormente se asignará a un registro de ajuste preestablecido de visor en AEM Assets (On-demand) o se pasará explícitamente mediante el comando style.

    Consulte Personalización del visor de vídeo interactivo para obtener más información sobre cómo aplicar estilo al visor con CSS.

    A continuación se muestra un ejemplo de definición de un tamaño de visor estático en la página HTML:

    #s7viewer.s7interactivevideoviewer { 
     width: 640px; 
     height: 640px; 
    }
    

    Puede establecer el modificador stagesize en el registro de ajustes preestablecidos de visor en AEM Assets, bajo demanda. O bien, puede pasarlo explícitamente con el código de inicialización del visor con la colección params o como una llamada de API como se describe en la sección Referencia de comandos, como se muestra a continuación:

    interactivevideoviewer.setParam("stagesize", "640,640");
    

    En este ejemplo se recomienda un enfoque basado en CSS.

  3. Creación e inicialización del visor.

    Cuando haya completado los pasos anteriores, cree una instancia de la clase s7viewers.InteractiveVideoViewer, pase toda la información de configuración a su constructor y llame al método init() en una instancia de visor. La información de configuración se pasa al constructor como un objeto JSON. Como mínimo, este objeto debe tener un campo containerId que contenga el nombre del ID de contenedor del visor y el objeto JSON anidado params con parámetros de configuración admitidos por el visor.

    En este caso, el objeto params debe tener al menos la dirección URL del servicio de imágenes pasada como propiedad serverUrl y el recurso inicial como parámetro asset. La API de inicialización basada en JSON permite crear y inicio del visor con una sola línea de código, una URL del servidor de vídeo pasada como propiedad videoserverurl, un recurso inicial como parámetro asset y datos interactivos como propiedad interactivedata. La API de inicialización basada en JSON permite crear y inicio del visor con una sola línea de código.

    Es importante que el contenedor del visor se añada al DOM para que el código del visor pueda encontrar el elemento de contenedor por su ID. Algunos exploradores retrasan la creación de DOM hasta el final de la página web. Para obtener la máxima compatibilidad, llame al método init() justo antes de la etiqueta BODY de cierre o en el evento body onload().

    Al mismo tiempo, el elemento contenedor no debe formar parte necesariamente del diseño de la página web. Por ejemplo, puede ocultarse con el estilo display:none asignado. En este caso, el visor retrasa el proceso de inicialización hasta el momento en que la página web devuelve el elemento de contenedor a la presentación. Lo que sucede es que la carga del visor se reanuda automáticamente.

    A continuación se muestra un ejemplo de creación de una instancia de visor, pasando las opciones de configuración mínimas necesarias al constructor y llamando al método init(). El ejemplo asume lo siguiente:

    • La instancia del visor es interactiveVideoViewer.
    • El nombre del marcador de posición DIV es s7viewer.
    • La dirección URL del servicio de imágenes es https://aodmarketingna.assetsadobe.com/is/image/.
    • La dirección URL del servidor de vídeo es https://gateway-na.assetsadobe.com/DMGateway/public/aodmarketingna.
    • La dirección URL de contenido es https://aodmarketingna.assetsadobe.com/.
    • El recurso es /content/dam/mac/aodmarketingna/dm-viewers-content/video/Glacier.mp4.
    • Los datos interactivos son is/content/content/dam/mac/aodmarketingna/_VTT/dm-viewers-content/video/Glacier.mp4.svideo.vtt.
    <script type="text/javascript"> 
    var interactiveVideoViewer = new s7viewers.InteractiveVideoViewer({ 
     "containerId":"s7viewer", 
    "params":{ 
     "asset":"/content/dam/mac/aodmarketingna/dm-viewers-content/video/Glacier.mp4", 
    "config":"/etc/dam/presets/viewer/Shoppable_Video_Dark", 
     "serverurl":"https://aodmarketingna.assetsadobe.com/is/image/", 
     "videoserverurl":"https://gateway-na.assetsadobe.com/DMGateway/public/aodmarketingna", 
     "contenturl":"https://aodmarketingna.assetsadobe.com/", 
    "interactivedata":"is/content/content/dam/mac/aodmarketingna/_VTT/dm-viewers-content/video/Glacier.mp4.svideo.vtt" 
    } 
    }).init(); 
    </script>
    

    El siguiente código es un ejemplo completo de una página web trivial que incorpora el visor de vídeo interactivo con un tamaño fijo:

    <!DOCTYPE html> 
    <html> 
    <head> 
    <script type="text/javascript" src="https://aodmarketingna.assetsadobe.com/etc/dam/viewers/s7viewers/html5/js/InteractiveVideoViewer.js"></script> 
    <style type="text/css"> 
    #s7viewer.s7interactivevideoviewer { 
     width: 640px; 
     height: 480px; 
    } 
    </style> 
    </head> 
    <body> 
    <div id="s7viewer" style="position:relative;"></div> 
    <script type="text/javascript"> 
    var interactiveVideoViewer = new s7viewers.InteractiveVideoViewer({ 
     "containerId":"s7viewer", 
    "params":{ 
     "asset":"/content/dam/mac/aodmarketingna/dm-viewers-content/video/Glacier.mp4", 
    "config":"/etc/dam/presets/viewer/Shoppable_Video_Dark", 
     "serverurl":"https://aodmarketingna.assetsadobe.com/is/image/", 
     "videoserverurl":"https://gateway-na.assetsadobe.com/DMGateway/public/aodmarketingna", 
     "contenturl":"https://aodmarketingna.assetsadobe.com/", 
    "interactivedata":"is/content/content/dam/mac/aodmarketingna/_VTT/dm-viewers-content/video/Glacier.mp4.svideo.vtt" 
    } 
    }).init(); 
    </script> 
    </body> 
    </html>
    

Incrustación de diseño adaptable con altura ilimitada

Con la incrustación de diseño interactivo, la página web normalmente tiene algún tipo de diseño flexible que determina el tamaño de tiempo de ejecución del contenedor DIV del visor. En el siguiente ejemplo, supongamos que la página web permite que el contenedor del visor DIV ocupe el 40 % del tamaño de la ventana del explorador web, dejando su altura sin restricciones. El código HTML de la página web tendría el siguiente aspecto:

<!DOCTYPE html> 
<html> 
<head> 
<style type="text/css"> 
.holder { 
 width: 40%; 
} 
</style> 
</head> 
<body> 
<div class="holder"></div> 
</body> 
</html>

Añadir el visor a una página de este tipo es similar a los pasos para la incrustación de tamaño fijo. La única diferencia es que no es necesario definir explícitamente el tamaño del visor.

  1. Añadir el archivo JavaScript del visor en la página web.
  2. Definición de la DIV de contenedor.
  3. Creación e inicialización del visor.

Todos los pasos anteriores son los mismos que con la incrustación de tamaño fijo. Añada la DIV de contenedor a la DIV existente "holder". El siguiente código es un ejemplo completo. Observe cómo cambia el tamaño del visor cuando se cambia el tamaño del navegador y cómo coincide la proporción de aspecto del visor con el recurso.

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript" src="https://aodmarketingna.assetsadobe.com/etc/dam/viewers/s7viewers/html5/js/InteractiveVideoViewer.js"></script> 
<style type="text/css"> 
.holder { 
 width: 40%; 
} 
</style> 
</head> 
<body> 
<div class="holder"> 
<div id="s7viewer" style="position:relative"></div> 
</div> 
<script type="text/javascript"> 
var interactiveVideoViewer = new s7viewers.InteractiveVideoViewer({ 
 "containerId":"s7viewer", 
"params":{ 
 "asset":"/content/dam/mac/aodmarketingna/dm-viewers-content/video/Glacier.mp4", 
"config":"/etc/dam/presets/viewer/Shoppable_Video_Dark", 
 "serverurl":"https://aodmarketingna.assetsadobe.com/is/image/", 
 "videoserverurl":"https://gateway-na.assetsadobe.com/DMGateway/public/aodmarketingna", 
 "contenturl":"https://aodmarketingna.assetsadobe.com/", 
"interactivedata":"is/content/content/dam/mac/aodmarketingna/_VTT/dm-viewers-content/video/Glacier.mp4.svideo.vtt" 
} 
}).init(); 
</script> 
</body> 
</html>

La siguiente página de ejemplos ilustra los usos más reales del diseño interactivo que se incrusta con altura ilimitada:

Demostraciones en directo

Incrustación adaptable con anchura y altura definidas

En caso de incrustación interactiva con anchura y altura definidas, el estilo de la página web es diferente. Proporciona ambos tamaños a la DIV "holder" y la centra en la ventana del explorador. Además, la página web establece el tamaño del elemento HTML y BODY en 100 por ciento.

<!DOCTYPE html> 
<html> 
<head> 
<style type="text/css"> 
html, body { 
 width: 100%; 
 height: 100%; 
} 
.holder { 
 position: absolute; 
 left: 20%; 
 top: 20%; 
 width: 60%; 
height: 60%; 
} 
</style> 
</head> 
<body> 
<div class="holder"></div> 
</body> 
</html>

El resto de los pasos de incrustación son idénticos a los pasos utilizados para la incrustación interactiva con altura no restringida. El ejemplo resultante es el siguiente:

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript" src="https://aodmarketingna.assetsadobe.com/etc/dam/viewers/s7viewers/html5/js/InteractiveVideoViewer.js"></script> 
<style type="text/css"> 
html, body { 
 width: 100%; 
 height: 100%; 
} 
.holder { 
 position: absolute; 
 left: 20%; 
 top: 20%; 
 width: 60%; 
height: 60%; 
} 
</style> 
</head> 
<body> 
<div class="holder"> 
<div id="s7viewer" style="position:relative"></div> 
</div> 
<script type="text/javascript"> 
var interactiveVideoViewer = new s7viewers.InteractiveVideoViewer({ 
 "containerId":"s7viewer", 
"params":{ 
 "asset":"/content/dam/mac/aodmarketingna/dm-viewers-content/video/Glacier.mp4", 
"config":"/etc/dam/presets/viewer/Shoppable_Video_Dark", 
 "serverurl":"https://aodmarketingna.assetsadobe.com/is/image/", 
 "videoserverurl":"https://gateway-na.assetsadobe.com/DMGateway/public/aodmarketingna", 
 "contenturl":"https://aodmarketingna.assetsadobe.com/", 
"interactivedata":"is/content/content/dam/mac/aodmarketingna/_VTT/dm-viewers-content/video/Glacier.mp4.svideo.vtt" 
} 
}).init(); 
</script> 
</body> 
</html>

Incrustación mediante API basada en Setter

En lugar de utilizar la inicialización basada en JSON, es posible utilizar la API basada en setter y el constructor no-args. El uso de este constructor de API no toma ningún parámetro y los parámetros de configuración se especifican mediante métodos de API setContainerId(), setParam() y setAsset() con llamadas JavaScript independientes.

El siguiente ejemplo ilustra el uso de la incrustación de tamaño fijo con la API basada en establecedor:

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript" src="https://aodmarketingna.assetsadobe.com/etc/dam/viewers/s7viewers/html5/js/InteractiveVideoViewer.js"></script> 
<style type="text/css"> 
#s7viewer.s7interactivevideoviewer { 
 width: 640px; 
 height: 480px; 
} 
</style> 
</head> 
<body> 
<div id="s7viewer" style="position:relative;width:640px;height:360px;"></div> 
<script type="text/javascript"> 
var interactiveVideoViewer = new s7viewers.InteractiveVideoViewer(); 
interactiveVideoViewer.setContainerId("s7viewer"); 
interactiveVideoViewer.setParam("config", "/etc/dam/presets/viewer/Shoppable_Video_Dark"); 
interactiveVideoViewer.setParam("serverurl", "https://aodmarketingna.assetsadobe.com/is/image/"); 
interactiveVideoViewer.setParam("videoserverurl", "https://gateway-na.assetsadobe.com/DMGateway/public/aodmarketingna"); 
interactiveVideoViewer.setParam("contenturl", "https://aodmarketingna.assetsadobe.com/"); 
interactiveVideoViewer.setParam("interactivedata", "is/content/content/dam/mac/aodmarketingna/_VTT/dm-viewers-content/video/Glacier.mp4.svideo.vtt"); 
interactiveVideoViewer.setAsset("/content/dam/mac/aodmarketingna/dm-viewers-content/video/Glacier.mp4"); 
interactiveVideoViewer.init(); 
</script> 
</body> 
</html>

En esta página

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free