|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Kirill Frolov 2:5020/400 28 Jan 2006 14:03:44 To : All Subject : нестандартная обработка видео --------------------------------------------------------------------------------
Hемедленно нажми RESET, All!
Дано: источник видео. 50 кадров в секунду, прогрессивная развёртка.
Если подключить к любому телевизору то естесственно видим хорошую картинку.
Только строк 312 в кадре. Кадров 50 в секунду.
Хочется записать видеофильм с помощью компутера. С той же кадровой
частотой -- 50 кадров в секунду с прогрессивной развёрткой. Это
принципиальный момент: пропуск кадров, их комбинирование каким либо
образом -- ничего не допускается. Все кадры имеют значение. И должны
отображаться именно с такой скоростью. Просто потому, что на этом
построены отображаемые источником видеоэффекты.
Плата видео-захвата позволяет захватывать 25 кадров в секунду с
черезстрочной развёрткой. И в теории там в разных (чётном и нечётном)
полях кадра должны присутствовать оба кадра прогрессивной развёртки
источника. Так и есть. Чудеса начинаются дальше, когда популярные
программы видеозаписи для windows комбинируют полукадры или выкидывают
один из них. И в конечном результате имеем 25 кадров в секунду
прогрессивной развёртки. А нужно именно 50.
Суть в том, что из каждого полукадра нужно сделать отдельный кадр.
И при этом не испортить звук. Он с точностью до 1-го кадра должен быть
привязан к видео. Я думаю, что если видео всё-таки разбегается со
звуком, должен быть как-то растянут/сжат звук. Пропуски кадров даже
раз в секунду дадут заметные дефекты изображения.
Вопрос: какими open souorce программами можно достигнуть желаемого
результата? Варианты: gstreamer, mplayer, ffmpeg. Как минимум нужно
каждый полукадр выделить в отдельный кадр, а в каждом полученном кадре
продублировать все строки.
Далее, стоит вопрос подбора кодека. 5 мегабайт в секунду -- это,
наверное, предел по скорости потока. Лучше меньше. Hапример,
250кбайт/сек. Изображение характерно использованием ограниченной
цветовой палитры и резкими переходами цвета. Возможно наличие больших
областей закрашенных одним цветом или повторяющимся рисунком.
Сразу скажу: DIVX даёт плохой результат. Искажение цвета и характерные
искажения на резких цветовых переходах. Hаверняка для чего-то вроде
мультфильмов существуют более подходящие и доступные (понимать
непатентованные, open source) кодеки. Я пробовал следующие:
CoreFLAC,
CorePNG,
Lagarith,
MindVid,
dirreccional,
huffyuv,
mhuffyuv,
msu-ls-codec,
predictor,
aslcodec
результаты не обнадёживают. Либо дурацкие ограничения на размер, частоту
кадров и т.п., либо низкое качество, либо плохое сжатие, либо вообще не
работает (в virtual dub). DIVX не сильно хуже получается.
Может кто подскажет чего...
--- ifmail v.2.15dev5.3
* Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/16955fe54f122.html, оценка из 5, голосов 10
|