Камера снимает в dav h265 (изменить нельзя) и мне нужно конвертировать видео в любой формат, который телеграм воспринимает как видео (mp4, avi и т.д.). В сети есть похожий вопрос, где решение:
ffmpeg -y -i input-file.dav -c:v libx264 -crf 24 output-file.mp4
однако данный код при конвертации 16-и секундного видео на 6и ядерном xeon выполняется за 13 секунд, а на 4ёх ядерном ARM Ampere 23 секунды. И можно было бы говорить, что я упираюсь в производительность серверов, однако при декодинге высвечиваются такие параметры видео:
Input #0, dhav, from '111.dav':
Video: hevc (Main), yuv420p(tv), 1920x1080, 25 fps, 100 tbr, 1k tbn
и конвертируются они вот в это
Output #0, mp4, to '111.mp4':
Video: h264 (libx264) (avc1 / 0x31637661),yuv420p, 1920x1080, q=-1--1, 100 fps, 12800 tbn, 100 tbc
То есть с нифига он берёт и меняет параметры видео. Если я в запросе изменю fps со 100 до родных 25, то получу на Ampere уже 9 секунд вместо 23. FPS это базовое и примитивное, что бросается в глаза, но также здесь есть параметры tbn, tbc и ещё наверняка что-то, о чём я не знаю, но оно зачем-то изменилось. FFMPEG как-то не очень оптимально использует ресурсы, которые у него есть.
Поэтому вопрос: как можно оптимизировать запрос, чтобы получить максимально быстрый результат?
p.s. меня не столько волнует размер файла, сколько время его кодирования.