Могу ли я остановить ffmpeg, если при проверке целостности возникнет ошибка?

есть ли способ остановить обработку ffmpeg, если произошла ошибка? Я использую ffmpeg для проверки целостности видео с помощью:

ffmpeg -v error -i file.avi -f null - 2>error.log

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

19
задан slhck
24.01.2023 1:18 Количество просмотров материала 3032
Распечатать страницу

2 ответа

Я уже сам задавался этим вопросом, и ffmpeg не обеспечивает простой способ сделать это. На основе обратной связи я получил на список рассылки FFmpeg, вы можете использовать глобальный параметр

-err_detect explode

эта опция работает не во всех случаях. См.ffmpeg -h full для списка вариант:

-f_err_detect      <flags>      .D.... set error detection flags (deprecated; use err_detect, save via avconv)
   crccheck                     .D.... verify embedded CRCs
   bitstream                    .D.... detect bitstream specification deviations
   buffer                       .D.... detect improper bitstream length
   explode                      .D.... abort decoding on minor error detection
   careful                      .D.... consider things that violate the spec and have not been seen in the wild as errors
   compliant                    .D.... consider all spec non compliancies as errors
   aggressive                   .D.... consider things that a sane encoder shouldnt do as an error
-err_detect        <flags>      .D.... set error detection flags
   crccheck                     .D.... verify embedded CRCs
   bitstream                    .D.... detect bitstream specification deviations
   buffer                       .D.... detect improper bitstream length
   explode                      .D.... abort decoding on minor error detection
   careful                      .D.... consider things that violate the spec and have not been seen in the wild as errors
   compliant                    .D.... consider all spec non compliancies as errors
   aggressive                   .D.... consider things that a sane encoder shouldnt do as an error
5
отвечен slhck 2023-01-25 09:06

В вариант:

-xerror 

параметр командной строки документирован как выполнение именно того, что вы хотите.

добавьте опцию и ffmpeg завершит работу при ошибке потока (также установив значение exit равным 1) из:

ffmpeg -h full | grep xerror .... -xerror error exit on error
5
отвечен Michelle Sullivan 2023-01-25 11:23

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх