Я использую avconv для преобразования необработанного avi-видео в оттенках серого в huffyuv с контейнером mkv. Я читал, что huffyuv «математически без потерь», и это именно то, что я хочу. avoprobe на входном файле дает
Input #0, avi, from 'myvid.avi': Duration: 00:00:32.94, start: 0.000000, bitrate: 129167 kb/s
Stream #0.0: Video: rawvideo, pal8, 328x246, 200 fps, 0.08 tbr, 200 tbn, 200 tbc
В фильме есть элементы высокой интенсивности (приблизительно 150-250 в 8 битах) и элементы низкой интенсивности (1-9), которые я хотел бы сохранить. Однако, если я бегу
avconv -y -an -i myvid.avi -r 200 -c:v huffyuv av_test.mkv
Я получаю text.mkv, в котором исчезли детали низкой интенсивности. На самом деле я смог построить следующее для двух видео.
Итак, avconv решает, что мне не нужны эти критично тусклые пиксели. Я мог бы просто добавить, скажем, 15 ко всем значениям пикселей, но тогда я бы насытил свои яркие пиксели, и нет гарантии, что значение отсечки одинаково для всех видео. Я выполняю некоторую нисходящую обработку на выходе, где мне действительно нужно, чтобы значения пикселей не менялись при конвертации видеоформатов. Любые идеи о том, как заставить avconv или huffyuv действительно сохранять мое видео без потерь?
РЕДАКТИРОВАТЬ: я обнаружил, что происходит отсечение как ярких, так и тусклых пикселей. Кроме того, проблема, похоже, связана с преобразованием формата серых пикселей во что-либо еще, поскольку я вижу проблему с другими кодеками без потерь, такими как ffv1 и H264 без потерь.