У меня возникла неприятная проблема с моим рекордером.Некоторые люди все еще используют его с аналоговыми тюнерами, и аналоговые тюнеры имеют тенденцию выплевывать «снег», если нет сигнала.
Проблема в том, что когда шум подается на энкодер, он полностью уходитсходит с ума и сначала потребляет все ресурсы процессора, а затем в конечном итоге зависает.Поскольку главное в рекордере - оставаться включенным и работать независимо от того, что, я должен выяснить, как поступить с этим, чтобы кодер не подвергался воздействию данных, с которыми он не может справиться.
Идея состоит в том, чтобы создать «детектор энтропии» - простую и небольшую процедуру, которая будет проходить через данные кадрового буфера и вычислять индекс энтропии, то есть то, как данные на картинке на самом деле случайны.число, которое будет 0 для полностью заднего изображения, и 1 для совершенно случайного изображения - снег, то есть.
Рутина сама по себе должна быть только сканированием вперед, с несколькими локальными переменными, которые бы хорошо вписывались в регистры.
Я мог бы использовать zlib или 7z api для такой задачи, но я действительно хотел бы приготовить что-нибудь самостоятельно.
Есть идеи?