Varios tipos de archivo

El visor de medios mixtos es un visor de medios. Admite conjuntos de medios que contienen imágenes, conjuntos de muestras, conjuntos de giros, vídeos y conjuntos de vídeos adaptables.

Una miniatura en la parte inferior del visor representa cada elemento de conjunto de medios, junto con su indicador de tipo de recurso. Cuando se selecciona un elemento de conjunto de muestras, aparece una fila secundaria de muestras para permitir la selección de la variación de color dentro del conjunto de muestras. Las imágenes y los elementos del conjunto de muestras admiten el zoom en modo continuo o en línea; los conjuntos de giros admiten el zoom y el giro. Los vídeos y los conjuntos de vídeos adaptables admiten todos los controles de reproducción básicos siempre que se muestren los subtítulos opcionales encima del contenido del vídeo. Un usuario puede cambiar a pantalla completa en cualquier momento haciendo clic en el botón de pantalla completa. El visor tiene un botón de cierre opcional. Está diseñado para trabajar en equipos de escritorio y dispositivos móviles.

El visor de medios mixtos utiliza la reproducción de vídeo de flujo HTML5 en formato HLS en su configuración predeterminada siempre que el sistema subyacente lo admita. En sistemas que no admiten el flujo HTML5, el visor vuelve al envío de vídeo progresivo HTML5.

NOTA

Este visor no admite las imágenes que utilizan IR (procesamiento de imágenes) o UGC (contenido generado por el usuario).

Tipo de visor 505.

Consulte Requisitos y requisitos previos del sistema.

Dirección URL de demostración

https://s7d9.scene7.com/s7viewers/html5/MixedMediaViewer.html?asset=Scene7SharedAssets/Mixed_Media_Set_Sample

Uso del visor de medios mixtos

El visor de medios mixtos 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 concreto, recursos y CSS) descargados por el visor en tiempo de ejecución.

Puede utilizar el visor de medios mixtos en modo emergente mediante la página HTML preparada para la producción que se proporciona con los visores IS. O bien, puede utilizar el visor en modo incrustado, donde se integra en una página web de destinatario mediante la API documentada.

La tarea de configurar y aplicar aspectos al visor es similar a la de otros visores. Todos los aspectos se logran mediante CSS personalizada.

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 medios mixtos

El visor de medios mixtos admite gestos de un solo toque y de varios toque, que son comunes en otras aplicaciones móviles. Cuando el visor no puede procesar el gesto de barrido de un usuario, reenvía el evento al navegador web para realizar un desplazamiento de página nativo. Esta funcionalidad permite al usuario navegar por la página aunque el visor ocupe la mayor parte del área de la pantalla del dispositivo.

Gesto

Descripción

Un solo toque

Activa la vista flotante o los cambios entre el nivel de zoom primario y el secundario.

Tocar doble

Cuando se encuentra en el modo de zoom continuo , se amplía un nivel hasta alcanzar el máximo de ampliación y el siguiente gesto de toque de doble se restablece al estado inicial.

Tocar y mantener

Cuando se encuentra en el modo de zoom en línea , se activa la imagen ampliada.

Pellizcar

Cuando se encuentra en modo de zoom continuo, amplía o reduce la imagen.

Barrido o barrido horizontal

Cuando el recurso actual es un conjunto de giros y la imagen está en estado de restablecimiento, gira horizontalmente por el conjunto de giros.

Cuando el recurso actual es un conjunto de giros o una imagen y la imagen se amplía, la imagen se mueve horizontalmente. Si la imagen se mueve al borde de la vista y el barrido se sigue realizando en esa dirección, el gesto realiza un desplazamiento de página nativo.

Se desplaza por la lista de muestras en la barra de muestras.

Barrido o barrido vertical

Si la imagen está en estado de restablecimiento, cambia el ángulo de vista vertical en caso de que se utilice un conjunto de giros multidimensional. En un conjunto de giros unidimensional, o cuando un conjunto de giros multidimensional se encuentra en el último o primer eje, de modo que el barrido vertical no dé como resultado un cambio en el ángulo de vista vertical, el gesto realiza un desplazamiento de página nativo.

Cuando el recurso actual es un conjunto de giros o una imagen y la imagen se amplía, la imagen se mueve verticalmente. Si la imagen se mueve al borde de la vista y el barrido se sigue realizando en esa dirección, el gesto realiza un desplazamiento de página nativo.

Si el gesto se realiza dentro del área de muestras, realiza un desplazamiento de página nativo.

El visor también admite entrada táctil y entrada de ratón en dispositivos Windows con pantalla táctil y ratón. Sin embargo, esta compatibilidad está limitada a los exploradores web Chrome, Internet Explorer 11 y Edge.

Este visor es totalmente accesible mediante teclado.

Consulte Navegación y accesibilidad del teclado.

Incrustación de un visor de medios mixtos

Las diferentes páginas web tienen diferentes necesidades de comportamiento del visor. A veces, una página web proporciona un vínculo que, al hacer clic en él, abre el visor en una ventana de explorador independiente. En otros casos, es necesario incrustar el visor directamente en la página de alojamiento. En este último caso, es posible que la página web tenga un diseño de página estático o utilice un diseño interactivo que se muestre de forma diferente en distintos dispositivos o en diferentes tamaños de ventana del explorador. Para satisfacer estas necesidades, el visor admite tres modos de operación principales: ventana emergente, incrustación de tamaño fijo e incrustación de diseño interactivo.

Acerca del modo emergente

En el modo emergente, el visor se abre en una ventana o ficha separada del explorador Web. Toma todo el área de la ventana del navegador y se ajusta en caso de que se cambie el tamaño del navegador o la orientación del dispositivo móvil.

El modo emergente es el más común para dispositivos móviles. La página web carga el visor mediante window.open() llamada de JavaScript, elemento HTML A configurado correctamente o cualquier otro método adecuado.

Se recomienda utilizar una página HTML lista para usar en el modo de operación emergente. En este caso, se denomina MixedMediaViewer.html y se encuentra dentro de la subcarpeta html5/ de la implementación estándar de los visores de IS:

<s7viewers_root>/html5/MixedMediaViewer.html

Puede lograr la personalización visual mediante la aplicación de CSS personalizada.

A continuación se muestra un ejemplo de código HTML que abre el visor en una ventana nueva:

<a href="http://s7d1.scene7.com/s7viewers/html5/MixedMediaViewer.html?asset=Scene7SharedAssets/Mixed_Media_Set_Sample" target="_blank">Open popup viewer</a>

Acerca de la incrustación de tamaño fijo y 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 las páginas web orientadas a equipos de escritorio o tabletas, y también las páginas de diseño adaptables 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 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 MixedMediaViewer.js. El archivo MixedMediaViewer.js se encuentra en la subcarpeta html5/js/ de la implementación estándar de IS-Viewers:

<s7viewers_root>/html5/js/MixedMediaViewer.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="/s7viewers/html5/js/MixedMediaViewer.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 de la DIV de contenedor.

    Añada un elemento DIV vacío a la página en la que desea que aparezca el visor. El ID del elemento DIV debe estar 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.

    Asegúrese de que la función de pantalla completa funciona correctamente en Internet Explorer. Compruebe que no hay 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 DIV de marcador de posición definido:

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

    Este visor muestra miniaturas al trabajar con conjuntos de varios elementos. En los sistemas de escritorio, las miniaturas se colocan debajo de la vista principal. Al mismo tiempo, el visor permite el intercambio del recurso principal durante la ejecución mediante la API setAsset(). Como desarrollador, tiene control sobre cómo gestiona el visor el área de miniaturas en la parte inferior cuando el nuevo recurso solo tiene un elemento. Es posible mantener intacto el tamaño del visor exterior y permitir que la vista principal aumente su altura y ocupe el área de miniaturas. O bien, puede mantener el tamaño de vista principal estático y contraer el área del visor exterior, permitiendo que el contenido de la página web se mueva hacia arriba y, a continuación, utilizar el espacio de la página libre que queda en las miniaturas.

    Para mantener intactos los límites exteriores del visor, defina el tamaño de la clase CSS de nivel superior .s7mixedmediaviewer en unidades absolutas. El tamaño en CSS se puede colocar directamente en la página HTML o en un archivo CSS de visor personalizado, que posteriormente se asigna a un registro de ajuste preestablecido de visor en Dynamic Media Classic, o se pasa explícitamente mediante el comando style.

    Consulte Personalización del visor de medios mixtos 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 del tamaño del visor externo estático en una página HTML:

    #s7viewer.s7mixedmediaviewer { 
     width: 640px; 
     height: 480px; 
    }
    

    Puede ver el comportamiento con un área de visor exterior fija en la siguiente página de muestra. Tenga en cuenta que cuando cambia entre conjuntos, el tamaño del visor exterior no cambia:

    https://marketing.adobe.com/resources/help/en_US/s7/viewers_ref/samples/MixedMediaViewer-fixed-outer-area.html

    Para que las dimensiones de vista principales sean estáticas, defina el tamaño del visor en unidades absolutas para el componente Container SDK interno mediante el selector de CSS .s7mixedmediaviewer .s7container o mediante el modificador stagesize.

    A continuación se muestra un ejemplo de definición del tamaño del visor para el componente Container SDK interno, de modo que el área de vista principal no cambie su tamaño al cambiar el recurso:

    #s7viewer.s7mixedmediaviewer .s7container { 
     width: 640px; 
     height: 480px; 
    }
    

    La siguiente página de muestra muestra el comportamiento del visor con un tamaño de vista principal fijo. Tenga en cuenta que cuando cambia entre conjuntos, la vista principal permanece estática y el contenido de la página web se mueve verticalmente:

    https://marketing.adobe.com/resources/help/en_US/s7/viewers_ref/samples/MixedMediaViewer-fixed-main-view.html

    Puede establecer el modificador stagesize en el registro de ajustes preestablecidos de visor de Dynamic Media Classic o 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 de esta Ayuda, como se muestra a continuación:

    mixedMediaViewer.setParam("stagesize", "640,480");
    

    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.MixedMediaViewer, 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 el campo containerId que contiene el nombre del ID de contenedor del visor y el objeto JSON anidado params con parámetros de configuración compatibles con 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, la dirección URL del servidor de vídeo pasada como propiedad videoserverurl 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.

    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. Cuando esto sucede, 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 que mixedMediaViewer es la instancia del visor; s7viewer es el nombre del marcador de posición DIV; http://s7d1.scene7.com/is/image/ es la dirección URL del servicio de imágenes; http://s7d1.scene7.com/is/content/ es la dirección URL del servidor de vídeo; y Scene7SharedAssets/Mixed_Media_Set_Sample es el recurso:

<script type="text/javascript"> 
var mixedMediaViewer = new s7viewers.MixedMediaViewer({ 
 "containerId":"s7viewer", 
"params":{ 
 "asset":"Scene7SharedAssets/Mixed_Media_Set_Sample", 
 "serverurl":"http://s7d1.scene7.com/is/image/", 
 "videoserverurl":"http://s7d1.scene7.com/is/content/" 
} 
}).init(); 
</script> 
<script type="text/javascript"> 
mixedMediaViewer.init(); 
</script>

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

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript" src="http://s7d1.scene7.com/s7viewers/html5/js/MixedMediaViewer.js"></script> 
<style type="text/css"> 
#s7viewer.s7mixedmediaviewer { 
 width: 640px; 
 height: 480px; 
} 
</style> 
</head> 
<body> 
<div id="s7viewer" style="position:relative"></div> 
<script type="text/javascript"> 
var mixedMediaViewer = new s7viewers.MixedMediaViewer({ 
 "containerId":"s7viewer", 
"params":{ 
 "asset":"Scene7SharedAssets/Mixed_Media_Set_Sample", 
 "serverurl":"http://s7d1.scene7.com/is/image/", 
 "videoserverurl":"http://s7d1.scene7.com/is/content/" 
} 
}).init(); 
</script> 
</body> 
</html>

Incrustación interactiva con altura no restringida

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="http://s7d1.scene7.com/s7viewers/html5/js/MixedMediaViewer.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 mixedMediaViewer = new s7viewers.MixedMediaViewer({ 
 "containerId":"s7viewer", 
"params":{ 
 "asset":"Scene7SharedAssets/Mixed_Media_Set_Sample", 
 "serverurl":"http://s7d1.scene7.com/is/image/", 
 "videoserverurl":"http://s7d1.scene7.com/is/content/" 
} 
}).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

Integración de tamaño flexible con anchura y altura definidas

En caso de incrustación de tamaño flexible 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 de diseño interactivo con altura ilimitada. El ejemplo resultante es el siguiente:

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript" src="http://s7d1.scene7.com/s7viewers/html5/js/MixedMediaViewer.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 mixedMediaViewer = new s7viewers.MixedMediaViewer({ 
 "containerId":"s7viewer", 
"params":{ 
 "asset":"Scene7SharedAssets/Mixed_Media_Set_Sample", 
 "serverurl":"http://s7d1.scene7.com/is/image/", 
 "videoserverurl":"http://s7d1.scene7.com/is/content/" 
} 
}).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 API basada en establecedor:

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript" src="http://s7d1.scene7.com/s7viewers/html5/js/MixedMediaViewer.js"></script> 
<style type="text/css"> 
#s7viewer.s7mixedmediaviewer { 
 width: 640px; 
 height: 480px; 
} 
</style> 
</head> 
<body> 
<div id="s7viewer" style="position:relative"></div> 
<script type="text/javascript"> 
var mixedMediaViewer = new s7viewers.MixedMediaViewer(); 
mixedMediaViewer.setContainerId("s7viewer"); 
mixedMediaViewer.setParam("serverurl", "http://s7d1.scene7.com/is/image/"); 
mixedMediaViewer.setAsset("Scene7SharedAssets/Mixed_Media_Set_Sample"); 
mixedMediaViewer.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