label: string

Default value: "Upload with Clipchamp!"

La etiqueta en el botón integrado. Este es el texto que aparece en el botón, el cual se coloca en el elemento de envoltorio.

size: string

Default value: "medium"
Allowed values:
tiny small medium large

El tamaño del botón Clipchamp. Elija entre 4 tamaños.

title: string

Default value: "Ye' olde video-upload shoppe"

El título de la UI que aparece después de que un usuario haga clic en el botón integrado. El título se muestra en la parte superior del iframe emergente.

logo: string

Default value: "https://api.clipchamp.com/static/button/images/logo.svg"

La URL de la imagen del logo para la UI. Este es una imagen que se muestra en la esquina superior izquierda del iframe.

color: string

Default value: "#303030"

Determina el color del botón Clipchamp, el fondo de la barra del título de la ventana emergente y otros elementos gráficos. Puede ser el nombre de un color (como por ejemplo blue), un color con codificación hex (como por ejemplo #3300cc) o > un color con codificación RGB (como por ejemplo rgba(78,24,212,0.5)).

style: object

Default value: undefined

Permite una personalización detallada de la apariencia visual de la API de Clipchamp utilizando CSS. Se puede proporcionar una hoja de estilo CSS personalizada en forma de URL (propiedad style.url) o como secuencia de declaraciones CSS (style.text). En ambos casos, las declaraciones CSS personalizadas se aumentan pero no reemplazan el estilo de la interfaz de usuario por defecto, basado en el estilo de Bootstrap 3 por defecto. Es decir, el estilo CSS personalizado se superpone sobre el estilo CSS existente en el que las clases CSS existentes pueden ser aumentadas, y las propiedades CSS pueden añadirse o reemplazarse. Plan de Empresa.

inline: object

Default value: undefined

Permite una colocación en línea del widget de la API, en el que el <iframe> que contiene el widget de Clipchamp se coloca en un elemento de envoltura nominado en la página de integración. Plan de empresa.

encoding: object

Default value: undefined

Configurar parámetros de codificación de salida.

inputs: Array<string>

Default value: ["file", "camera"]
Allowed values:
file camera direct

Fuentes desde las que el usuario puede seleccionar un vídeo de entrada: camera para su webcam y file para el sistema de archivos de su ordenador. La opción direct indica a la API de Clipchamp que reciba el archivos(s) del vídeo de entrada sin ninguna acción del usuario final directamente a través del parámetro direct.files. En consecuencia, la opción de entrada direct no debe usarse en combinación con ninguna de las otras dos opciones (file, camera). Si tanto direct como file o camera se dan en la matriz inputs, entonces las opciones file y camera serán ignoradas y se espera que el parámetro direct.files sea una matriz de instancia(s) Blob.

output: string

Default value: "dummy"
Allowed values:
dummy blob azure s3 youtube gdrive dropbox

Los destinos en los que haremos que esté disponible el vídeo de salida o a los que lo subiremos. Si se elige «blob», proporcionamos el vídeo de salida como un Blob para el código JavaScript de cara a su cliente. Si selecciona «youtube», «azure» o «s3», tiene que autorizarnos a subir el vídeo a la cuenta adecuada desde la página de configuración. La salida «simulada» no produce nada pero estimula una subida utilizando un temporizador sencillo, y puede usarse para una integración inicial y para hacer pruebas sin tener un backend configurado.

upload: object

Default value: undefined

Ajustes que configuran el proceso de subida en todos los destinos de subida soportados.

camera: object

Default value: undefined

Elementos de configuración para personalizar la grabación de la cámara.

direct: object

Default value: undefined

Parámetros extra que se aplican a la opción direct dentro del parámetro de entradas.

enable: Array<string>

Default value: []
Allowed values:
batch fixup-webcam-webm mobile-webcam-format-fallback no-branding no-error-bypass no-hidden-run no-popout no-probe-reject no-thank-you no-user-retry

Habilita un comportamiento especial de la API de Clipchamp:

  • batch – permite que se procesen y se suban varios archivos en una secuencia sin necesidad de más interacción del usuario.
  • fixup-webcam-webm – «repara» grabaciones con webcam WebM que pueden tener metadatos con duración adecuada incorrectos o faltantes. Use este indicador si quiere asegurarse de que los siguientes pasos en el conducto de procesamiento de su vídeo reciban archivos WebM en los que los metadatos del vídeo integrado sean correctos y completos. Este indicador no se aplica actualmente a dispositivos móviles (es decir, teléfonos Android con el indicador mobile-webcam-format-fallback establecido). BETA
  • mobile-webcam-format-fallback – permite la compresión de grabaciones con webcam en dispositivos móviles incluso cuando el formato objetivo no está disponible (experimental). Esta opción está actualmente restringida a Chrome en Android cuando tiene este indicador, y la API de Clipchamp produce archivos WebM usando el códec de vídeo VP8 o VP9.
  • no-branding – elimina la marca de Clipchamp de la UI que se muestra al usuario, si está disponible en su plan. Esto no se aplica al botón integrado. Utilice la opción del botón de la API personalizado para añadir estilo al botón integrado (si está disponible en su plan).
  • no-error-bypass – si la transcodificación falla por cualquier razón, normalmente Clipchamp recurrirá sencillamente a subir el archivo de entrada tal y como está. Este indicador suprime ese comportamiento. La causa más común de los fallos en la transcodificación son los códecs de entrada no soportados.
  • no-hidden-run – desactiva la opción de continuar procesando y subiendo en segundo plano si el usuario cierra la ventana después de hacer clic en enviar”.
  • no-popout – algunos navegadores bloquean el uso de ciertas opciones para códigos de terceros. Cuando esto se detecte, Clipchamp abrirá una ventana nueva para obtener acceso a estas opciones. El ajuste no-popout suprime este comportamiento y fuerza a Clipchamp a intentar arreglárselas con lo que está disponible. Esto puede llevar a un incremento de los requisitos de memoria, entre otras cosas.
  • no-probe-reject – en el caso de que no podamos determinar si un archiva de entrada es un vídeo, normalmente se rechazará. Esta opción acepta todos los archivos de entrada y va directamente a la subida de archivos que no son de vídeo.
  • no-thank-you – desactiva la pantalla de agradecimiento y cierra la ventana inmediatamente. Si se encontró algún error durante el proceso, la última pantalla seguirá apareciendo.
  • no-user-retry – desactiva la opción de reintentar y la confirmación del usuario tras completarse una grabación con webcam y antes de que el archivo se suba. Añadir este indicador iniciará inmediatamente la subida tras finalizar la grabación con webcam. Los usuarios no tendrán la opción de repetir su grabación con webcam.

experimental: Array<string>

Default value: []
Allowed values:
force-popout overlong-recording h264-hardware-acceleration

Activa el comportamiento experimental de la API de Clipchamp

  • force-popout – lanza siempre la interfaz de usuario de la API de Clipchamp en una ventana de navegador»emergente» separada, incluso si puede ejecutarse dentro de un iframe en el DOM de la página web de integración. No debe usarse junto con el indicador no-popout con parámetro (enable).
  • overlong-recording – permite grabaciones con webcam/cámara del móvil sin ninguna limitación de tiempo de la duración de la grabación (tal y como de otra forma viene aplicado por la API de Clipchamp). La duración de la grabación sigue pudiendo limitarse reiteradamente estableciendo un valor numérico (número de segundos) en el parámetro camera.limit. Los clientes tienen que asegurarse de establecer solo el indicador overlong-recording en los navegadores soportados (actualmente: Chrome, Opera y Firefox).
  • h264-hardware-acceleration – habilita codificación de vídeo H.264 con aceleración de hardware en las plataformas soportadas (actualmente: dispositivos ChromeOS/Chromebook x86). El indicador solo se aplica al preset web (por defecto) y al formato mp4 (por defecto). Dependiendo del hardware subyacente, puede lograrse una aceleración por varias veces al configurar el indicador h264-hardware-acceleration. Los clientes experimentarán distintos porcentajes de compresión para la misma calidad de salida percibida (subjectiva) y por lo tanto se les anima a ajustar el parámetro compression para que proporcione un equilibrio de calidad/compresión aceptable.

dropbox: object

Default value: undefined

Elementos de configuración al usar el objetivo de subida de Dropbox.

youtube: object

Default value: undefined

Elementos de configuración al usar el objetivo de subida de YouTube.

onWebcamStatusChange(status): function

Se recurre a esta función de callback para cierto número de eventos que afectan a la grabación de vídeos y a la webcam o la cámara del teléfono como tales, en la que status es un String que refleja el nuevo estatus de la webcam o la grabación:

  • capture_started – la webcam o la cámara del teléfono se han encendido con éxito y están capturando (pero no grabando todavía) un streaming de vídeo
  • capture_ended – la webcam o la cámara del teléfono están desactivadas y ya no están capturando el streaming de vídeo
  • capture_failed – no se ha podido acceder a la webcam o la cámara del teléfono
  • recording_running – la grabación de la webcam ha empezado o se ha reanudado después de haberse puesto en pausa previamente
  • recording_paused – la grabación de la webcam se puso en pausa y puede reanudarse y finalizarse más adelante
  • recording_finished – la grabación de la webcam ha finalizado pero todavía puede estar procesándose antes de ser subida o puesta a disposición en el callback onVideoCreated
  • recording_cancelled – la grabación de la webcam fue cancelada

Hacer un seguimiento del estatus de la webcam o la cámara del teléfono está soportado en navegadores de escritorio (y en Chrome para Android cuando el indicador mobile-webcam-format-fallback está configurado en la matriz del parámetro enable).

onMetadataAvailable(metadata): function

Se recurre a esta función de callback para cada grabación con webcam y archivo del vídeo de entrada cuando la grabación de la webcam o el archivo del vídeo de entrada se han analizado con éxito. El parámetro metadata es un objeto con las siguientes propiedades:

  • raw – los metadatos del vídeo sin procesar son un objeto con las siguientes propiedades:
    • format – información del formato del contenedor de vídeo
    • streams – conjunto de streams de vídeo, audio, subtítulos, datos, etc. contenidos en el vídeo

Tenga en cuenta que cuando el usuario elige descartar y repetir una grabación webcam, se recurrirá varias veces a este callback con los metadatos de distintas grabaciones. También se recurrirá varias veces a onMetadataAvailable al usar el indicador batch, en el que el usuario puede seleccionar múltiples vídeos de entrada. BETA

onPreviewAvailable(imageBlob): function

Se activa onPreviewAvailable con la vista previa cuando hay una disponible. Tenga en cuenta que el parámetro es una instancia Blob y no una URL, y la imagen no se sube al destino de subida nominado junto con el vídeo de salida. Tenga también en cuenta que no todos los escenarios producirán una vista previa, en particular si el vídeo de entrada está corrupto o contiene metadatos invalidos/incompletos. BETA

onUploadComplete(data): function

Se recurre una vez a esta función de callback cuando el vídeo de salida ha terminado de subirse y un solo objeto data contiene información meta sobre el archivo subido. Hay dos propiedades comunes:

  • filename – el nombre del archivo de vídeo original
  • duration – la duración del vídeo. Este campo puede estar ausente en ciertas situaciones

También hay cierta cantidad de propiedades específicas de output:

  • Si se usa la salida «youtube»
    • kind – «youtube»
    • id – la ID del vídeo
    • url – la vista URL
    • embedHtml – el snippet HTML proporcionado por YouTube para integrar el vídeo (si se ha proporcionado).
  • Si se usa la salida «azure»
    • kind – «azure»
    • blob – el nombre del blob Azure vigente usado finalmente al guardar la subida.
  • Si se usa la salida «s3»
    • kind – «s3»
    • key – la clave de objeto S3 vigente usado finalmente al guardar la subida.
  • Si se usa la salida «gdrive»
    • kind – «gdrive»
    • id – la ID de archivo Google
    • name – el nombre del archivo como está almacenado en Google Drive.
    • url – una URL para el archivo
    • folder – la ID de la carpeta de Google en la que está al archivo, o «raíz» si está en un nivel superior.
  • Si se usa la salida «dropbox»
    • kind – «dropbox»
    • id – la ID de archivo Dropbox
    • name – el nombre del archivo como está almacenado en Dropbox
    • path – la ruta de archivo de Dropbox
    • link – el enlace compartido del archivo en Dropbox (requiere la opción correspondiente para ser seleccionado en la configuración de la API de Clipchamp)
  • Si se usa la salida «blob»
    • kind – «blob»
    • data – matriz de cualquier onVideoCreated que resulte en

onVideoCreated(blob [,done [,fail [,notify]]]): function

Se activa onVideoCreated si la salida se establece en blob y el blob del vídeo de salida pasará como primer parámetro. El blob es válido hasta que esta función termine de procesar, lo que se determina utilizando 1 de 3 casos:

  1. Se activa si la firma de la función contiene como mínimo un parámetro hecho y un callback realizado o fallido.
  2. Si una promesa (o thenable) se devuelve, espera a que se resuelva o se rechace.
  3. Si la función devuelve algo distinto de una promesa, y no específica como mínimo un parámetro de callback realizado, el procesamiento se considerará completado inmediatamente a la devolución.

Hasta que la función complete el procesamiento, se considera que el archivo de salida está «siendo procesado». Si se devuelve una promesa capaz de informes de progreso (es decir, en la que la función then acepta un tercer callback), o si su usa el callback de notificación, un progreso se interpretará como un porcentaje de compleción de la subida y se mostrará como tal en pantalla. Después de que el procesamiento se complete (como se determina anteriormente) el blob ya no puede utilizarse de forma fiable porque el almacenamiento de apoyo puede haber sido eliminado.

onErrorOccurred(error): function

Se activa onErrorOccurred cuando se detecta un error al grabar, procesar o subir un vídeo o grabación con webcam/cámara. El parámetro error es un objeto con una propiedad obligatoria type que puede ser una de las siguientes:

  • webcam_processing, cuando el error se produjo durante una grabación con webcam (o cámara del teléfono);
  • vídeo_processing, cuando el error se produjo mientras se procesaba (transcodificado/comprimido) un vídeo de entrada o grabación con webcam/cámara antes de subir el vídeo;
  • vídeo_uploading, cuando el error se produjo al procesar el archivo del vídeo de salida que estaba siendo subido a la ubicación de almacenamiento seleccionada;
  • other_unknown, cuando el error lo causa otra cosa o incluso es desconocido;

Una segunda propiedad message (opcional) representa una explicación del error que un humano puede leer. Puede usar el valor de la secuencia de la propiedad message para mostrar un mensaje de error a sus usuarios. Una propiedad details opcional es una matriz que contiene más información técnica sobre el error, como por ejemplo excepciones, eventos de error y cosas similares. Utilice el valor de la propiedad details para comunicar cualquier problema al soporte de Clipchamp. Se puede recurrir varias veces ocasionalmente al callback onErrorOccurred por la misma causa de raíz. Por favor, tenga en cuenta que la API de Clipchamp tiene las disposiciones para compensar algunos de los incidentes de los que se informa al callback onErrorOccurred. Por ejemplo, el indicador no-probe-reject (ver parámetro habilitado) se asegurará de que un archivo de vídeo se transfiere al motor de transcodificación de vídeo incluso si no podemos extraer metadatos técnicos del archivo.

localization: object

Default value: undefined

Una tabla de secuencias que están disponibles para adaptación local. Utilícela para ajustar los elementos de la API que verá el usuario para que aparezca el idioma de su página web si no es el inglés. También puede utilizar estas secuencias para dejar en blanco snippets de texto que no quiere que los usuarios vean.