Загальна інформація
Синтаксис і параметри
Yadif (clip, int "mode", int "order", bool "planar", int "opt")
mode = 0. тимчасова і просторова перевірки (за замовчуванням).
= 1. подвоєння частоти кадрів (bob), тимчасова і просторова перевірки.
= 2. не робити просторову перевірку чересстрочной.
= 3. подвоєння частоти кадрів (bob), не робити просторову перевірку чересстрочной.
order = -1. порядок полів як вважає (за замовчуванням).
= 0. Нижня поле перше.
= 1. Верхнє поле перше.
planar = false. звичайний YUY2 формат пікселя Avisynth (за замовчуванням).
= True. прапор (ігнорований для YV12) для (хакнуть) планарного YUY2 колірного формату вхідних і вихідних кліпів, сумісного з функціями Interleaved2planar і Planar2Interleaved з плагіна RemoveGrain (SSETools) від Kassandro (для виключення багаторазових перетворень).
opt = -1. CPU оптимізація - автоматично (за замовчуванням).
= 0. slow C version.
Особливості та обмеження
Реалізовано як Avisynth C-плагін (не звичайний Avisynth плагін).
Повинен завантажуватися командою Load_Stdcall_plugin ( "yadif.dll") або LoadC plugin ( "yadif.dll") (Не LoadPlugin!). Не використовуйте автозагрузку. (Зауваження: в Avisynth v2.5.7-2.5.8 немає необхідності явної завантаження Avisynth_c.dll користувачем для таких плагінів.)
Тестований з Avisynth v2.5.7,2.5.8 (напевно працює з v2.5.6 і вище).
Парність полів вхідного кліпу повинна бути правильно задана (використовуйте AssumeTFF, AssumeBFF).
Дуже швидкий. Асемблерна SSEMMX оптимізація з mplayer (компілювати MinGW GCC). Також SSE2 (частково SSSE3) з ffdshow-tryout (виправлене).
YV12 і YUY2 (звичайний і планарний) колірні формати.
Обговорення
Програма поширюється вільно на умовах ліцензії GNU GPL. Дивіться gpl-rus.txt. Якщо Ви поширюєте бінарну DLL, ви також зобов'язані поширювати вихідні коди, будь ласка не забудьте і дану документацію.
- Виправлена помилка з невірно використаної парністю.
- Додані Bob-режими mode = 1,3.
- Доданий параметр order.
- Остаточно (?) Виправлена помилка з невірно використаної парністю.
- Встановлено коректна частота кадрів в Bob-режимах mode = 1,3.
- Остаточно (!) Виправлена помилка з невірно використаної парністю для TFF без AssumeTFF.
- Знято обмеження на однаковість Пітч кадрів.
- Виправлена помилка з найпершим і останнім кадром.
- Обробка перших і останніх рядків просторовим усередненням або дублюванням (просив puddy).
- Начебто виправив помилку доступу до пам'яті (повідомлену akapuma).
- Виправив помилку доступу до пам'яті для деяких ширини і висоти і YUY2 (повідомлену ronnylov).
- Додав більш бистриую SSE2 (і деяку SSSE3) ручну оптимізацію від H.Yamagata з ffdshow-tryout. Компіляція з GCC версії вище 4.1.
- Додав трохи швидше MMX перетворення для формату YUY2.
- Додав планарний хакнуть YUY2 колірної формат (сумісний з SSETools від Kassandro).
- Трохи швидше SSEMMX перетворення для формату YUY2.
- Додав параметр "opt" для ручного вибору CPU оптимізації.
- Виправив помилку в SSE2 / SSSE3 коді (з ffdshow), тепер результати однакові з C / iSSE.
- Дозволив SSEMMX YUY2 перетворення при ручному виборі SSE2 / SSSE3 opt.
- Сліпа спроба виправити детектування AMD Phenom (спасибі canTsTop за повідомлення про помилку).
- Сліпа спроба виправити детектування P4 (спасибі vlada за повідомлення про помилку).