Tengo una grabación de pantalla de un chat de video que tuve y el tamaño de archivo es enorme porque la grabación de pantalla en sí se realizó a 59,93 fps. Sin embargo, creo que el chat de video fue entre 15 y 30 fps. Además, era un chat de vídeo, por lo que los fotogramas individuales obviamente también estaban comprimidos.
No quiero perder la calidad del vídeo (ya es algo pobre teniendo en cuenta que era un vid chat). Sin embargo, me gustaría reducir el tamaño del archivo. Sin embargo, no sé cuál es la mejor manera de abordar esto... Supongo que mi pregunta se reduce a:
- ¿Hay alguna manera de reducir de alguna manera la velocidad de cuadros del video de manera que esté sincronizada con la velocidad de cuadros del chat de video?
- ¿Hay otras opciones de compresión que tengo y que desconozco?
Aquí está el resultado de ffmpeg -i si eso ayuda:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '.\Untitled1.mov':
Metadata:
major_brand : qt
minor_version : 0
compatible_brands: qt
creation_time : 2015-08-02T20:32:54.000000Z
com.apple.quicktime.make: Apple
com.apple.quicktime.model: MacBookAir4,2
com.apple.quicktime.software: Mac OS X 10.10.4 (14E46)
com.apple.quicktime.creationdate: 2015-08-02T12:46:10-0700
Duration: 00:45:19.57, start: 0.000000, bitrate: 12981 kb/s
Stream #0:0[0x1](und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1438x874, 12974 kb/s, SAR 1:1 DAR 719:437, 59.93 fps, 60 tbr, 6k tbn (default)
Metadata:
creation_time : 2015-08-02T20:32:54.000000Z
handler_name : Core Media Video
vendor_id : [0][0][0][0]
encoder : H.264
Respuesta1
FFMPEG simplemente elimina fotogramas "innecesarios" del vídeo cuando se utiliza-filter:v fps=n
Se puede encontrar una explicación detallada.aquí
Al convertir adicionalmente el video de h264 a h265, puede comprimir el video aproximadamente en un factor de hasta 10, sin una pérdida notable de calidad. Eso significa que un archivo de 100 MB sólo ocuparía 10 MB de espacio después, sin tener en cuenta la velocidad de fotogramas reducida.
Ejemplo:
ffmpeg -i <input> -filter:v fps=30 -c:v libx265 -vtag hvc1 -c:a copy <output>