Как определить, когда AviSynth имеет сообщение об ошибке, не видя видео выход

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

В настоящее время мы собираем файлы скриптов Avisynth как часть автоматизированной процедуры кодирования. Когда что-то идет не так с Avisynth или исходным файлом, Avisynth выдает большое черно-красное сообщение об ошибке. Наш кодировщик видит это как обычный видеофайл и продолжает кодирование, не вызывая ошибки.

Каков наилучший способ проверить наличие этих ошибок, не видя вывод видеофайла?

1 ответ

AviSynth имеет поддержку try-catch: http://avisynth.org/mediawiki/Control_structures

Я не уверен, как вы могли бы сообщить об ошибке своему кодировщику оттуда. Насколько я знаю, вы должны вернуть клип из скрипта, а оператор return внутри блока try / catch не всегда возвращает весь скрипт: http://avisynth.org/mediawiki/The_full_AviSynth_grammar

Однако вы можете записывать сообщения об ошибках в текстовые файлы, поэтому я видел, как люди делали это, чтобы проверить скрипт AVS на наличие ошибок перед его запуском:

script = "file_to_test.avs"
try {
  Import(script)
} catch (err) {
  WriteFileStart(BlankClip(), "C:\logfile.txt", script, """ ": " """, err, append=true)
}
Другие вопросы по тегам