una que pantalla online imagen hacer div dimensiones como cambiar autoajustable ala ajuste ajustar adapte php video ffmpeg resolution

php - que - imagen autoajustable html



FFMPEG: agregue una imagen de tamaƱo fijo en un video, independientemente del ancho y alto del video(resoluciĆ³n) (1)

Este es mi código que agrega una imagen a los videos, que se ejecuta a través de PHP:

exec(''ffmpeg -i input.mp4 -i logo.png -filter_complex "[0:v][1:v] overlay=10:10" -pix_fmt yuv420p -c:a copy output.mp4'');

Funciona bien, pero el problema es que la imagen se reduce o aumenta en la resolución de video. Por ejemplo, en las siguientes imágenes, el ancho del logotipo es de 50px pero la resolución de los videos es diferente:

y éste

¿Cómo puedo evitar que la imagen se reduzca o disminuya?

Actualizar

Gracias a Mulvya , propuso estos códigos.

ffmpeg -i input.mp4 -i logo.png -filter_complex "[1:v][0:v]scale2ref=(W/H)*ih/8:ih/8[wm][base];[base][wm]overlay=10:10" -pix_fmt yuv420p -c:a copy output.mp4

y

ffmpeg -i input.mp4 -i logo.png -filter_complex "[1:v][0:v]scale2ref=(W/H)*ih/8:ih/8[wm][base];[wm]setsar=1[wmsar]; [base][wmsar]overlay=10:10" -pix_fmt yuv420p -c:a copy output.mp4

Eso funciona muy bien, pero no mantiene la relación de aspecto del logotipo. Probé este código en dos videos con diferente resolución y este es el resultado

y éste

¿Es posible mejorar esta solución?


Puedes usar el filtro scale2ref.

ffmpeg -i input.mp4 -i logo.png -filter_complex "[1:v][0:v]scale2ref=(W/H)*ih/8/sar:ih/8[wm][base];[base][wm]overlay=10:10" -pix_fmt yuv420p -c:a copy output.mp4

Esto cambiará el tamaño de la altura del logotipo a 1/8 de la altura del video.

Debe reemplazar W/H con los valores de la imagen, por ejemplo, si el PNG es 320x270, debe ser scale2ref=(320/270)*ih/8:ih/8