Senya
@ 01-01-2004, 21:56
Возможно, мне просто не повезло, тем не менее, мне не удалось найти практическую инструкцию. Отсюда и уточняющий вопрос к тем, кто занимался оцифровкой аналогового сигнала с видеокассеты.
Описываю ситуацию. Оцифровываю кассету с разрешением 720х576 (кодек huffyuv), чтобы взять картинку со всеми полями. Намереваюсь сделать DVD с interlaced картинкой, чтобы сохранить плавность дижения объектов. При просмотре, естественно, будет использоваться BOB-алгоритм.
Итак, оцифровываю. Далее обрабатываю в VirtualDub (или в AviSynt, это не принципиально). Разделяю поля (unfold) и обрабатываю их отдельно, избавляясь от шумов и не давая полям повлиять друг на друга. После делаю fold. И под конец, обрезаю границы со всех сторон, избавляясь от черных полос и нижнего цветового мусора.
На выходе получаю уже меньший размер кадра, например, 704х562.
Далее не уверен, как делать правильно. Причем, в двух случаях
1-й принипиальный момент. Делать ресайз до конвертации или нет?
а) Первый вариант - просто сделать resize до правильного размера DVD (720х576), а потом просто конверитовать в MPEG2. Но, как мне кажется, потеряется правильная черезстрочная структура, так как произойдет растягивание картинки по вертикали.
б) Второй вариант - сразу конвертировать, программа сама при конвертации растянет картинку до нужного размера, но с сохранением структуры полей.
2-й принипиальный момент. Понятно, что при конвертации в MPEG2 результат (target) надо выбирать interlaced. А вот что делать с источником (source)?
а) Оставить non-interlaced, но так как результат будет interlaced, все будет прекрасно смотреться.
б) Выбрать interlaced, так как в источнике все-таки содержатся оба поля.
Заранее спасибо за ответы. Еще раз всех - с наступившим Новым годом.
P.S. Скорее всего, мне нужно еще почитать "матчасть" :) Поэтому полезным ссылкам также буду благодарен.
VxWorks
@ 01-01-2004, 22:58
ИМХО, самый простой вариант - обрезать картинку, а потом просто добавить черные края до 720х576. Таким образом, изображение будет выглядеть аккуратно на компе и не будет уходить в оверскан на телевизоре.
Senya
@ 04-01-2004, 22:02
Большое спасибо за ответ. Если ничего другого не придумается, попробую этот вариант. Мне как-то не хочется делать черную (да и другую тоже) рамку вокруг моего свадебного фильма :)
Я тут подумал и решил, что можно попытаться сделать пропорциональный ресайз до объединения полей, таким образом картинка пострадать не должна сильно и струкура полей сохранится без изменения.
ОСТАЕТСЯ ВОПРОС №2. Какой указывать source при кодировании в MPEG2? Interlaced или нет...
Vento
@ 12-01-2004, 22:11
2 Senya
| QUOTE |
| Далее обрабатываю в VirtualDub (или в AviSynt, это не принципиально). Разделяю поля (unfold) и обрабатываю их отдельно, избавляясь от шумов и не давая полям повлиять друг на друга. После делаю fold. |
А можно пожалуйста в подробностях как ты раскладываешь и обрабатываешь поля?
Senya
@ 13-01-2004, 04:00
Все просто и прямолинейно :)
В Дубе есть встроенный фильтр Deinterlace. Как правило его упоминают в связи с дефолтной его установкой: Blend Fields (смешать поля). Об этой опции для деинтерлейсинга надо забыть как о страшном сне (лучший фильтр из найденных мною пока является Deinterlace MAP). Это было небольшое лирическое отступление. А по делу вот что...
Для разделения полей используется другая опция того же стандартного фильтра Deinterlace, а именно Unfold fields side-by-side. После разделения все прогоняется через очищающие фильтры (тут все зависит от источника, но в последнее время среди прочих мне приглянулся медленный, но хороший smart smoother IQ - не путать с smart smoother HiQuality - они сильно разные!).
После обработки поля снова воссоединяются вместе через еще одну опцию фильтра Deinterlace, а именно Fold side-by-side fields together.
"Гребенка", естественно, остается, но это и хорошо. Так как она неразмыта по вертикали так, что от нее не избавиться больше ничем, а сохранена и может быть обработана правильными местодами.
Итак, последовательность фильтров получается такая:
- Deinterlace (Unfold fields side-by-side)
- ... {очистка изображения}
- Deinterlace (Fold side-by-side fields together)
- ... {что-нибудь еще по вкусу}
Lord KiRon
@ 13-01-2004, 09:53
А я вообше делал ДВД через :DVD: :Workshop: и не каких проблем...
сам втянул , сам подправил и нормально сдела , то есть если ты не "специалист" :) то стоит попробовать :)
Senya
@ 13-01-2004, 16:03
Не-а, полностью автоматические программы - не мой метод :)
RedAndr
@ 17-01-2004, 01:01
| QUOTE (Senya @ 01-01-2004, 22:56) |
| 1-й принипиальный момент. Делать ресайз до конвертации или нет? |
Не особо важно, главное, чтоб перед fold разрешение было уже стандартным.
Что то типа:
unfold
denoise
clip(x,y)
resize(720,576)
fold
vasya
@ 27-01-2004, 10:36
Source - конечно интерлейсный, тогда Энкодер их не будет придумывать...
По поводу черных полос: скорее всего они не будут видны на телевизоре... я, правда, с DVD не работал, но при кодировании в SVCD я не делаю кропинга, оставляя и черные полосы по бокам и прыгающие нижние строчки - при просмотре на телевизоре с DVD-плейере они не видны (за экран выходят), хотя при смотре на компе все присутствуют..
-----
А вот хотелось бы узнать поподрбнее про "Unfold fields side-by-side".. давно смотрю на него и не могу понять, зачем он нужен... и еще больше не могу понять алгоритма разбиения.. По какому принципу он делит поля? Так, например, если я делаю захват (PAL) в 352х576 (т.е. с двойной высотой), то поможет ли он? или он адекватно сработает только если захват делается в 4:3 (напрмер, в 704(720)х576) т.е. пропорциональным увеличением размеров?...
izanoza
@ 27-01-2004, 16:06
| QUOTE (vasya @ 27-01-2004, 02:36) |
| при кодировании в SVCD я не делаю кропинга, оставляя и черные полосы по бокам и прыгающие нижние строчки - при просмотре на телевизоре с DVD-плейере они не видны (за экран выходят), хотя при смотре на компе все присутствуют.. |
При таком методе кодирования весь битрейт уйдёт на то, чтобы сделать резкой границу между изображением и чёрными полями по бокам. Поэтому их всегда нужно обрезать.
RedAndr
@ 27-01-2004, 21:39
| QUOTE (izanoza @ 27-01-2004, 17:06) |
| QUOTE (vasya @ 27-01-2004, 02:36) | | при кодировании в SVCD я не делаю кропинга, оставляя и черные полосы по бокам и прыгающие нижние строчки - при просмотре на телевизоре с DVD-плейере они не видны (за экран выходят), хотя при смотре на компе все присутствуют.. |
При таком методе кодирования весь битрейт уйдёт на то, чтобы сделать резкой границу между изображением и чёрными полями по бокам. Поэтому их всегда нужно обрезать.
|
Обрезать надо чётно по 8 ;). А если даже нет, то битрейт ушедший на воспроизвидение границы компенсируется чёрными пустыми полями.
izanoza
@ 28-01-2004, 05:45
| QUOTE (RedAndr @ 27-01-2004, 13:39) |
| битрейт ушедший на воспроизвидение границы компенсируется чёрными пустыми полями. |
:D :D :D Неужели?
А какой смысл вообще жать эти чёрные поля, для количества?! ;)
Битрейт основной картинки от этого лучше не станет.
vasya
@ 28-01-2004, 13:20
| QUOTE (izanoza @ 28-01-2004, 08:45) |
А какой смысл вообще жать эти чёрные поля, для количества?! ;) Битрейт основной картинки от этого лучше не станет. |
Так если черные полосы не видны при просмотре, значит они выходят за границы экрана... а если их совсем обрезать, то тогда картинка, видимо, будет не вся отображаться...? А вот если их обрезать, а при кодировании заменить черными полосами, то, наверное, будет правильнее... А вот про кратность 8 - это интересно (как я понял, это связано с алгоритмом кодирования?)... А если кропинг делать не кратно 8, то это все равно даст эффект или будет бессмысленным (с позиции рационального расходования битрейта)?
---
А про "Unfold fields side-by-side" где можно почитать?
Шире товарисчи нужно мыслить, даёшь резку по 32 ! :D
izanoza
@ 28-01-2004, 22:14
| QUOTE (Set @ 28-01-2004, 13:18) |
| Шире товарисчи нужно мыслить, даёшь резку по 32 ! :D |
По вертикали можно ограничится 16-ю :)
vasya
@ 29-01-2004, 13:11
Что означает это ликование? Т.е. или обрезать кратно 32(16) или без разницы, а что 3, что 8 - не даст эффекта оптимизации расходования битрейта при MPEG2-кодировании? Напомню, что речь идет не об обрезании с целью создать меньший размер изображения, а об обрезании цветового шума видеозахвата с целью замещения его на черные полосы, т.к. размеры для SVCD и DVD стандартные.
Макроблок в MPEG имеет размер 16x16, поэтому наиболее оптимально резать по нему, то бишь кратно 16.
Правда, для интерлейсного видео, он вроде могет быть больше, кажись 32x16 ... но я в этом не уверен. :music:
RedAndr
@ 29-01-2004, 22:48
vasya: Если обрезать шум, то однозначно это приведёт к улучшению картинке, даже если резать не по 16-ти пиксельной границе.
Set: А не 8х8?
| QUOTE (RedAndr @ 29-01-2004, 21:48) |
| Set: А не 8х8? |
Это уже блоки внутри макроблока.