
Este comando en la ventana del símbolo del sistema funciona bien y graba toda la pantalla:
ffmpeg -f gdigrab -framerate 24 -i desktop -preset ultrafast -pix_fmt yuv420p out.mp4
Este símbolo del sistema agrega un texto de marca de agua en el medio de la pantalla en color blanco:
ffmpeg -f gdigrab -framerate 24 -i desktop -vf "drawtext=fontfile=path/to/arial.ttf:text='All rights reserved to ...':fontsize=24:fontcolor=white:x=(w-text_w)/2:y=(h-text_h)/2" -preset ultrafast -pix_fmt yuv420p out.mp4
el problema es que el texto de la marca de agua está en blanco y solo puedo verlo cuando el color de fondo de la ventana es negro, por ejemplo, cuando llevo al frente la ventana de la consola ffmpeg:
pero cuando está grabando alguna ventana con fondo blanco, como el texto es blanco no se puede ver.
Quiero actualizar el símbolo del sistema de ffmpeg para que de alguna manera sea dinámico, de modo que si la ventana de fondo es negra, muestre el texto de la marca de agua en blanco y luego, si abro una ventana con fondo blanco, cambie el texto de la marca de agua automáticamente a negro.
Este es el comando que probé para el efecto dinámico pero no funcionó. Recibí errores y luego probé muchas versiones de la línea de comando, pero nada ayudó ni funcionó.
ffmpeg -f gdigrab -framerate 24 -i desktop -filter_complex "[0:v]drawtext=text='Watermark Text':x=(w-text_w)/2:y=(h-text_h)/2:fontfile=arial.ttf:fontsize=24,format=rgba [txt];[txt]split=2 [bw][wc];[bw]lut=r=val*2 [b];[wc]lut=r=val*0.5+0.5:g=val*0.5+0.5:b=val*0.5+0.5 [wc];[wc][b]alphamerge [wm];[wm][0:v]overlay=10:10[outv]" -c:v libx264 -preset ultrafast -map "[outv]" out.mp4
y también probé esto
ffmpeg -f gdigrab -framerate 24 -i desktop -filter_complex "[0:v]drawtext=text='Watermark Text':x=(w-text_w)/2:y=(h-text_h)/2:fontfile=Arial.ttf:fontsize=24,format=rgba [txt];[txt]split=2 [bw][wm];[bw][1:v]split=3 [b][g][r];[b]geq=r=0:g=0.5:b=0 [b];[g]geq=r=0:g=0:b=0.5 [g];[r]geq=r=0.5:g=0:b=0 [r];[wm][b][g][r]merge=3,format=rgba [watermark];[0:v][watermark]overlay=x=(W-w)/2:y=(H-h)/2" -map "[watermark]" -map 0:a? -c:v libx264 -c:a copy -preset ultrafast out.mp4