FFmpeg: лучше ли создать приложение, чем напрямую использовать ffmepg - PullRequest
1 голос
/ 14 июля 2020

Для всех потоков с моих IP-камер я использую под Linux, ffmpeg с помощью сценария bash, который позволяет мне одновременно управлять:

1 / Конвертировать потоки RTSP в HTTP ( HLS) для «Live» и, следовательно, который генерирует файл «m3u8» и сегменты * .ts

2 / Резервное копирование потока для архивирования ( с шагом 5 минут ), удаление cron старые файлы (xx дней)

ffmpeg -i "rtsp://[IP_CAM01]" -rtsp_transport tcp -c copy -map 0 -f segment -segment_time 300 -segment_atclocktime 1 -segment_format mkv "cam01-% 03d.mkv" -c copy -f segment -segment_list cam01.m3u8 -segment_list_flags + live -segment_time 2 -segment_list_size 20 -segment_wrap 20 cam01-% 03d.ts

Вопрос, который я задаю себе, и причина этого сообщения заключается в следующем:

  • будет ли интерес (memory / cpu / скорость) для разработки программы ( C / C ++ / other? ), чтобы сделать то же самое, используя библиотеки ffmpeg?
  • или «усиление», и интерес будет таким минимальным что это не стоит затрат энергии и времени?

Я обращаюсь к вашим отзывам, вашим мнениям, вашим советам !, и если у вас были зацепки (образец), чтобы атаковать такого рода разработки, я Я заинтересован.

Заранее большое спасибо за ваш отзыв. (это мой первый вопрос по stackoverflow, шампанское!;))

1 Ответ

3 голосов
/ 14 июля 2020

Будет ли заинтересованность (память / процессор / скорость) в разработке программы (C / C ++ / другое?), Делающей то же самое, используя библиотеки ffmpeg? или «выигрыш» и процент будут настолько минимальными, что не стоит затрат энергии и времени?

Почти наверняка нет.

Я очень часто пишу инструменты и утилиты используя библиотеки libav * напрямую. Но почти никогда, потому что я думаю, что могу лучше, чем ffmpeg. Обычно это потому, что у меня есть очень специфическая c вещь, которую нужно сделать, и разработать фильтр будет сложнее. Или, например, изменение поведения при восстановлении после ошибки или изменение c подробностей в том, как упакован носитель.

Если ffmpeg работает точно так, как должен для вашего варианта использования, заменив его не лучшая идея.

...