1.- Crear una política para definir los permisos que puede tener el usuario que se defina para el manejo de los recursos en la creación de la marca de agua. En el menú de la parte izquierda dar clic en Administración del acceso > Políticas
Nombre de la política: DiplomadoUltrasistVideos
Seleccionamos los siguientes servicios
CloudWatch Logs
Elastic Transcoder
S3
2.- Crear un Role
Nombre de Rol: RolDiplomadoUltrasistVideos
En la creación del rol seleccionamos "Servicio de AWS" y elegimos "Lambda"
Añadimos los permisos al Rol seleccionando la política "DiplomadoUltrasistVideos"
3.- Crear los repositorios (bucket) en el servicio de S3, se crean dos repositorios uno seria la entrada y el otro la salida.
4.- Crear el recurso para el manejo del video en el siguiente servicio de amazon "Elastic Transcoder Pipeline"
En la configuración de este recursos podemos los siguientes datos.
Sección: "Create New Pipeline"
Pipeline name: watermark-petstore
Input bucket: ultrasist-video-input
Sección: "Configuration for Amazon S3 Bucket for Transcoded Files and Playlist"
Bucket: ultrasist-video-output
Storage Class: Stardand
Una vez creado el recurso, crearemos un "Presets" seleccionamos "System preset: Generic 1080p" y damos el botón "Copy" para crear la nueva configuración.
En la creación del nuevo New Transcoding Preset agregamos la siguiente información
Name: Generic 1080p - watermark
Description: Plantilla que contiene la configuración para la marca de agua
Container: mp4
Sección: Available Settings
Seleccionamos: Video, Audio, Thumbnails
Nota: Si que quite el audio desmarcamos "Audio"
Sección: Watermarks
Para este ejemplo la marca de agua será colocada en la parte derecha parte inferior.
Nota: Quitamos todas las "Watermark" y después agregamos una en la opción "Add Watermark", ingresamos la siguiente configuración.
ID: BottomRight
Max Width: 20%
MaxHeight: 20%
Sizing Policy: Fit
Horizontal Align: Right
Horizontal Offset: 15%
Vertical Align: Bottom
Vertical Offset: 10%
Opacity: 55
Target: Content
Sección: Thumbnails
Format: png
Interval: 60
Max Width: 192
Max Height: 144
Sizing Policy: ShrinkToFit
Padding Policy: NoPad
5.- Crear una expresión lambda para identificar en momento se deposita un archivo en el S3 de entrada. Buscamos el servicio "Lambda"
Seleccionamos la opción "Crear desde cero"
Nombre de la función: Watermark-Petstore
Runtime: Python 3.7
Permisos: Use an existing role (RolDiplomadoUltrasistVideos)
Una vez creada la función de damos clic al botón "Add trigger", agregamos la siguiente configuración.
Guardamos el código en el siguiente menú en la parte de configuración.
En el menú de la parte izquierda seleccionamos "Variable de entorno"
PIPELINE_ID
PRESET_ID
WATERMARK_ID
WATERMARK_KEY
Ejemplo : Los valores de ARN son los identificadores que pone AWS de cada recurso por lo que estos valores varían al momento de replicar el ejemplo
PIPELINE_ID ES EL ARN del recurso
PRESET_ID es el ARN del recurso
WATERMARK_ID es el ID de Watermarks
WATERMARK_KEY es el nombre de la imagen que vamos a poner como marca de agua.
Nota: Es importante que la imagen que usaremos como marca de agua se encuentre en el S3 de entrada que definimos para que sea tomado por el proceso cuando se suba un archivo. Si todo se ejecuta de manera correcta el archivo se queda en el S3 de salida ya con la marca de agua.
Para configurar la marca de agua en AWS
1.- Crear una política para definir los permisos que puede tener el usuario que se defina para el manejo de los recursos en la creación de la marca de agua. En el menú de la parte izquierda dar clic en Administración del acceso > Políticas
Nombre de la política: DiplomadoUltrasistVideos
Seleccionamos los siguientes servicios
2.- Crear un Role Nombre de Rol: RolDiplomadoUltrasistVideos
En la creación del rol seleccionamos "Servicio de AWS" y elegimos "Lambda" Añadimos los permisos al Rol seleccionando la política "DiplomadoUltrasistVideos"
3.- Crear los repositorios (bucket) en el servicio de S3, se crean dos repositorios uno seria la entrada y el otro la salida.
Entrada: ultrasist-video-input Salida: ultrasist-video-output
4.- Crear el recurso para el manejo del video en el siguiente servicio de amazon "Elastic Transcoder Pipeline"
En la configuración de este recursos podemos los siguientes datos. Sección: "Create New Pipeline" Pipeline name: watermark-petstore Input bucket: ultrasist-video-input
Sección: "Configuration for Amazon S3 Bucket for Transcoded Files and Playlist" Bucket: ultrasist-video-output Storage Class: Stardand
Una vez creado el recurso, crearemos un "Presets" seleccionamos "System preset: Generic 1080p" y damos el botón "Copy" para crear la nueva configuración.
En la creación del nuevo New Transcoding Preset agregamos la siguiente información
Name: Generic 1080p - watermark Description: Plantilla que contiene la configuración para la marca de agua Container: mp4
Sección: Available Settings Seleccionamos: Video, Audio, Thumbnails Nota: Si que quite el audio desmarcamos "Audio"
Sección: Watermarks Para este ejemplo la marca de agua será colocada en la parte derecha parte inferior. Nota: Quitamos todas las "Watermark" y después agregamos una en la opción "Add Watermark", ingresamos la siguiente configuración.
ID: BottomRight Max Width: 20% MaxHeight: 20% Sizing Policy: Fit Horizontal Align: Right Horizontal Offset: 15% Vertical Align: Bottom Vertical Offset: 10% Opacity: 55 Target: Content
Sección: Thumbnails Format: png Interval: 60 Max Width: 192 Max Height: 144 Sizing Policy: ShrinkToFit Padding Policy: NoPad
5.- Crear una expresión lambda para identificar en momento se deposita un archivo en el S3 de entrada. Buscamos el servicio "Lambda"
Seleccionamos la opción "Crear desde cero" Nombre de la función: Watermark-Petstore Runtime: Python 3.7 Permisos: Use an existing role (RolDiplomadoUltrasistVideos)
Una vez creada la función de damos clic al botón "Add trigger", agregamos la siguiente configuración.
Seleccionamos el servicio "S3" Bucket: ultrasist-video-input Suffix: .mp4 Enable trigger: seleccionado
Nota: suffix es para indicar que solo se ejecute la acción si se sube video con extensión .mp4
Seleccionamos el lambda
Agregamos el siguiente código.
Guardamos el código en el siguiente menú en la parte de configuración.
En el menú de la parte izquierda seleccionamos "Variable de entorno"
Ejemplo : Los valores de ARN son los identificadores que pone AWS de cada recurso por lo que estos valores varían al momento de replicar el ejemplo
PIPELINE_ID ES EL ARN del recurso
PRESET_ID es el ARN del recurso
WATERMARK_ID es el ID de Watermarks
WATERMARK_KEY es el nombre de la imagen que vamos a poner como marca de agua.
Nota: Es importante que la imagen que usaremos como marca de agua se encuentre en el S3 de entrada que definimos para que sea tomado por el proceso cuando se suba un archivo. Si todo se ejecuta de manera correcta el archivo se queda en el S3 de salida ya con la marca de agua.
LOGO: