Ru-Board.club
← Вернуться в раздел «Программы»

» AviSynth

Автор: Perforator
Дата сообщения: 29.10.2004 18:38

Цитата:
Цитата:но всё-же вопрос остаётся, как сделать полноценный видеоряд, имея 2 переменные видео с разными кадрами ?

Вряд ли задача решается на твоих условиях. Как вариант могу предложить тебе раскладывать клип на 5 потоков, а не на два. А потом делать на них interleave.


с этого момента по подробнее!

Добавлено
и вот ещё вопрос:
в силу неквадратности пикселя в анаморфной картинке - каким способом Resize посоветуете пользоваться ?
дело в том, что BicubicResize даёт немного грубоватые переходы цветов...
в оригинале всё выглядит красивше
Автор: Esc
Дата сообщения: 30.10.2004 07:30
Perforator

Цитата:
с этого момента по подробнее!

Ну это.... хмы. Чисто теоретически. Делаешь

Код:
orig0=SelectEvery(clip,5,0)
orig1=SelectEvery(clip,5,1)
orig2=SelectEvery(clip,5,2)
orig3=SelectEvery(clip,5,3)
orig4=SelectEvery(clip,5,4)
deint2=DGBob(orig2,1)
deint3=DGBob(orig3,1)
interleave(orig0,orig1,deint2,deint3,orig4)
Автор: Perforator
Дата сообщения: 30.10.2004 20:10
хмм... мучался, мучался с Telecide - почему-то смазанная картинка получалась
и вот до чего домучался...

Цитата:

LoadPlugin("E:\program files\AviSynth 2.5\plugins\DGDecode.dll")
v = MPEG2Source("D:\Video\недоделано\Ghost in the Shell - Innocence\GhostInTheShell.d2v")
orig0=SelectEvery(v,5,0)
orig1=SelectEvery(v,5,1)
orig4=SelectEvery(v,5,4)
v = Telecide(v,1,guide=1)
deint2=SelectEvery(v,5,2)
deint3=SelectEvery(v,5,3)
v = interleave(orig0,orig1,deint2,deint3,orig4)
v = Dup(v,threshold=0.4,chroma=false)
v = Crop(v,2,4,-2,-8)
v = BicubicResize(v,720,396)
a = DirectShowSource("D:\Video\недоделано\Ghost in the Shell - Innocence\GhostInTheShell AC3 T01 3_2ch 448Kbps DELAY 0ms.ac3")
AudioDub(v,a)

забавно получилось...
interleave - весёлая штука, только несовсем понимаю, как она работает (при обработке выделенных фреймов иногда получается временное расхождение кадров... в когда пускал DGBob на 2 фрейма видел 3 кадра нормального времени и 2 кадра из начала фильма)

LanczosResize видимого отличия от Bicubic не дал...
замыленность заметна на китайских иероглифах в титрах фильма (на простом тексте это врядли возможно заметить)

Dup оказалась прикольная штука: всем советую, разве что при значении threshold > 0.6
заметно действие фильтра на "лёгкой динамической дымке" (есть такой момент в фильме)
однако, стоило поставить 0.4 как разница практически исчезла...
Ещё прикольнуло что в AVSEdit v1.1.0.0 на плаг Dup ставится параметр
max_copies, тогда как в оригинале в плагине он зовётся maxcopies (просто были проблеммы с изменением этого параметра, и почитав хелп и сравнив его с реальностью нашёл ошибку)

Ещё несколько вопросов:
1) можно ли присобачить к фильму 2 звуковые дорожки сразу? и как это сделать?

2) можно ли пустить звук "Direct Stream Copy" тоесть хочу не PCM (после обработки AC3) видеть, а ту же AC3 или DTS

понятное дело, это можно в том же дабе сделать, но всё-же хотелось бы открыв дабом фильм увидеть его с уже готовыми звуковыми дорожками...

3) что посоветуете для "поднятия чёткости картинки" ?
Автор: Esc
Дата сообщения: 31.10.2004 01:57
Perforator

Цитата:
и вот до чего домучался...

Если честно, бред сивой кобылы в лунную ночь.
Извращение с 5 потоками и интерливом было оказано только как пример. Для телесайда ничего этого не нужно. Он и так прекрасно работает. Именно в виде той строчки, что я показал. Что там тебя не устроило, а?


Цитата:
interleave - весёлая штука, только несовсем понимаю, как она работает

Да нет, это DGBob - весёлая штука. Я забыл тот факт, что при mode=1 он удваивает количество фреймов. И я его использую в сочетании с BlendBob.


Цитата:
замыленность заметна на китайских иероглифах в титрах фильма (на простом тексте это врядли возможно заметить)

Обычно на китайских титрах бывает не замыленность, а радуга.


Цитата:
1) можно ли присобачить к фильму 2 звуковые дорожки сразу? и как это сделать?

Можно, но не все плееры понимают 2 дорожки. Я бы на твоём месте обратил внимание на матроску.


Цитата:
2) можно ли пустить звук "Direct Stream Copy" тоесть хочу не PCM (после обработки AC3) видеть, а ту же AC3 или DTS

DGIndex выдирает звук в том виде, в котором он есть. Так что потом вшить обратно - раз плюнуть.


Цитата:
3) что посоветуете для "поднятия чёткости картинки" ?

Сам поиграй с различными sharpen фильтрами. Их полно. Я никакой советовать не стану, ибо не пользуюсь.
Автор: Perforator
Дата сообщения: 31.10.2004 03:03

Цитата:
Если честно, бред сивой кобылы в лунную ночь.
Извращение с 5 потоками и интерливом было оказано только как пример. Для телесайда ничего этого не нужно. Он и так прекрасно работает. Именно в виде той строчки, что я показал. Что там тебя не устроило, а?

вполне возможно, что бред, но факт в том, что результат меня больше устраивает чем при просто Telecide... к тому же просто Telecide тот же текст вначале фильма давтавляет "дёргаться" (то чуть выше, то чуть ниже)
зато в другой анимэшке данная схема не действовала, а Telecide давал всё тот же удовлетворительный вариант...

Цитата:
Да нет, это DGBob - весёлая штука. Я забыл тот факт, что при mode=1 он удваивает количество фреймов. И я его использую в сочетании с BlendBob.

будем знать

Цитата:
Обычно на китайских титрах бывает не замыленность, а радуга.

не! радуги нет, а вот очень узкий прямоугольник (их штуки 4 поместилось бы по высоте символа) выглядит "замыленным", даже частично "закрашеным"

Цитата:
Можно, но не все плееры понимают 2 дорожки. Я бы на твоём месте обратил внимание на матроску.

LA воспроизводить умеет, к тому же делаю по бОльшей части для себя и для попутного изучения AVISynth'a
в данном случае интерисует такая возможность средствами AVISynth... ибо через VirtualDub Mod я давно сие практикую...

Цитата:
DGIndex выдирает звук в том виде, в котором он есть. Так что потом вшить обратно - раз плюнуть.

да так, впринцыпе и делаю, просто интерисует возможность сего действа через AVISynth
хотя я уже наверное понял, что это принцыпиально другая задача, исходя из задумки AVISynth как FrameServer

Цитата:
Сам поиграй с различными sharpen фильтрами. Их полно. Я никакой советовать не стану, ибо не пользуюсь.

Поигрался... не прикольно... такое ощущение, что они больше портят картинку, чем придают чёткости...
Автор: bdfy
Дата сообщения: 09.11.2004 02:27
BTW , а что если avisynth к софт плейеру присобачить ? многие фильтры работают достаточно быстро, реалтайм обеспечен ... Пережимать ведь долго да и качество неизбежно теряеться.
Я тут веточку создал на форуме ЛА , заходите
http://www.softella.com/la/forum.ru/1170.htm?c=6
Автор: Esc
Дата сообщения: 09.11.2004 03:10
bdfy

Цитата:
BTW , а что если avisynth к софт плейеру присобачить ?

Всё и так давно присобачено.
Автор: bdfy
Дата сообщения: 09.11.2004 03:52
Esc
??? и что я пропустил ? как пользоваться то подобным наворотом ?
Автор: Perforator
Дата сообщения: 09.11.2004 06:14

Цитата:
Esc
??? и что я пропустил ? как пользоваться то подобным наворотом ?

хмм... создаёшь avs скрипт, и открываешь его тем же LA
Автор: Esc
Дата сообщения: 09.11.2004 15:41
bdfy

Цитата:
??? и что я пропустил ? как пользоваться то подобным наворотом ?

Вообще-то последнее ffdshow дарует специальную утилитку, создающую из avs авишку, играемую любым плеером.
Автор: bdfy
Дата сообщения: 09.11.2004 15:53
Perforator
ну так это я уже умею неспортивно все равно как то ... хочеться чтобы для открываемого файла можно было выбрать скрипт ависинтовкский , а то руками набивать скрипты ( пути менять к файлам ) как то не спортивно имхо.
Так что буду змагацца за что-то подобное в ЛА .чтоб ламмерс-френдли так сказать
Автор: bdfy
Дата сообщения: 22.11.2004 01:38
Кстати автор ЛА идей заинтересовался в принципе так что ждем , возможно появиться шумоподавление в ЛА на основе ависинтовских фильтров ... Кто знает быстрые фильтры ( штоб в реалтайм работали на средних процах) - называйте .
Автор: bdfy
Дата сообщения: 18.12.2004 17:19
ну вот в последней бетке ЛА уже есть поддержка ависинт скриптов , так что можно считать , что у ЛА теперь самая мощная система шумоподавления
Смотреть здесь http://www.softella.com/la/forum.ru.htm
У меня правда трабла , я на rm ( мульты The Simpsons ) накладываю ависинтовские шумодавы ( 2clean в частности ) скрипт при этом выглядит так

Цитата:
LoadPlugin("c:\Program Files\AviSynth 2.5\plugins\_2DCleanYUY2_for_25.dll")
DirectShowSource({Source},fps=25)
ConvertToYUY2
_2DCleanYUY2(0,9,2,2,0,2,2)

при любом значении фпс ( 25 это из свойств видео взято ) звук и видео расходяться постепенно друг с другом К примеру c PeachSmoother-ом та же беда , хотя проц он грузит вообще несерьезно ...
Кто нибудь обрабатывал что нибудь вроде Real Media или mov файлов с помощью ависинтовских скриптов ? Никто с такой проблемой не сталкивался ? хотел сразу на дум9 идти на жизнь жаловать , так там 5 дней после регистрации постить нельзя
Автор: Esc
Дата сообщения: 09.01.2005 06:30
Вышла первая бета для версии 2.5.6.
Автор: HeT BonpocoB
Дата сообщения: 25.03.2005 20:59
не подскажете, нельзя ли добавить в создаваемый Гордианом *.avs каких нибудь пару строк, чтобы например во время титров вствлялась небольшая надпись: ну чтото вроде "ripped by ........, visit httр://forum.ru-board.com/" , ну и потом это както медленно затухало , понимаю что это "детство" , но для начала попробовать былоб интересно.

В справке прямого совета не нашёл (там есть конечно "Hello world", но не понятно как привязать его к фрейму или ещё к чему).

p.s. Ну а если кто поделится ещё чем нибудь полезным, что можно туда добавить, то вообще......
Автор: Esc
Дата сообщения: 26.03.2005 00:02
Можно конечно. Есть команда Subtitle. Есть команда FadeOut. Остаётся только скомбинировать. ))
Автор: HeT BonpocoB
Дата сообщения: 26.03.2005 00:27
Esc, не дык.....

нашёл вот какойто "вертикальный субтитр"... это даж интересней вроде, ушёл разбираться....
Автор: HeT BonpocoB
Дата сообщения: 26.03.2005 18:13
вобщем скрипт работает отлично, только "прикрутил" я его скорее всего через Ж. :/
Вот как его правильно добавить в *.avs?? Если просто вставить снизу то он работает, но игнорирует все Гордиановские "ресайзы" и "кропы".
Я (благодаря справке) ничего умнее не придумал, как просто вписать ^их^ в сам скрипт таким макаром:


Код: clip2 = mpeg2source("E:\rip\batman3.d2v")
clip3 = trim(clip2,50500,51000)
clip = LanczosResize(clip3,640,352,0,2,714,568)
.....ну и далее уже идут все преобразования с переменной clip
Автор: Esc
Дата сообщения: 26.03.2005 19:41
HeT BonpocoB
А зачем все эти переменные вообще? Без них то же самое будет.
Автор: HeT BonpocoB
Дата сообщения: 26.03.2005 21:22
Esc

ааа, тоесть просто:
Код: clip = mpeg2source("E:\rip\batman3.d2v")
clip = trim(clip,50500,51000)
clip = LanczosResize(clip,640,352,0,2,714,568)
Автор: Esc
Дата сообщения: 27.03.2005 03:24
HeT BonpocoB
Абисняю. Переменные нужны только в том случае, если у тебя несколько потоков. По умолчанию, результат действия предыдущего оператора является входным параметром для следующего. В твоём случае я вижу только последовательную обработку. Так что можно вполне обойтись программой:

Код:
mpeg2source("E:\rip\batman3.d2v")
trim(50500,51000)
LanczosResize(640,352,0,2,714,568)
Автор: HeT BonpocoB
Дата сообщения: 27.03.2005 11:05
Esc, дык дело в том, что ^так^ ОНО не работает!
Автор: Esc
Дата сообщения: 27.03.2005 16:56
HeT BonpocoB
А где в твоём скрипте ОНО? Ты хочешь, чтобы тебе на одном куске показали, как работает другой??
У меня всё работает. Добавил строчку
VScrollTitle(0,"Test","Arial",48, $ffffff, 5)
и поплыло как миленькое.
Автор: HeT BonpocoB
Дата сообщения: 27.03.2005 19:19
Esc
Цитата:
Добавил строчку и поплыло как миленькое.
а у меня вот не поплыло .

Ну не прогрмист я! не програмист!!! мнеб понять принцип как ОНО вообще должно добавляться и куда?? Я как смог сделал - просто скопировал всё со страницы (ну без комментариев естественно) и вставил в свой *.avs, чтоб уже не путаться приведу весь целиком:
Код: LoadPlugin("D:\PROGRA~1\GORDIA~1\DGMPGDec\DGDecode.dll")
function VScrollTitle(clip Clop,int StartFrame,string Title,string Font,int FontSize,int Colour,int Time)
{
ef = StartFrame + int( Time * Clop.FrameRate )
return Animate(Clop,StartFrame,ef,"subtitle",Title,Clop.width/2,int(Clop.Height*1.2),StartFrame,ef,Font,FontSize,Colour,0,5,0,Title,Clop.width/2,0,StartFrame,ef,Font,FontSize,Colour,0,5,0)
}
clip = mpeg2source("E:\rip\batman_returns.d2v")
clip = Lanczos4Resize(clip,640,352,0,0,716,572)
sf = 173792
clip = clip.VScrollTitle( sf, "текст 1", "Arial", 14, $ffffff, 5 )
clip = clip.VScrollTitle( sf+9, "текст 2", "Arial", 24, $ffffff, 5 )
return clip
Автор: Esc
Дата сообщения: 27.03.2005 19:30
Функцию можно втыкать куда угодно. Я обычно в конец скрипта пихаю или в автоматически подгружаемую библиотеку. Делаешь в директории с плагинами файл с расширением .avsi и он будет загружаться сам.
Автор: ForceSpb
Дата сообщения: 10.05.2005 21:43
AviSynth 2.5.6 beta 3 (May 5th)
http://prdownloads.sourceforge.net/avisynth2/AviSynth_050505.exe?download

Цитата:
additions:
- Added method VideoInfo.MulDivFPS(unsigned multiplier, unsigned divisor) does rational scaling with normalizing and overflow protection of FPS property.
- Added offsets, gamma and analyze option (ala ColorYUV) in RGBAdjust.
- Added Spline16Resize, Spline36Resize, GaussResize and LanczosResize(tap=xx)
- Added options to ShowFrameNumber: ShowFrameNumber(offset=10, x=360, y=576, font="georgia", size=24, text_color=$ff0000)
- Added integer offset to ShowSMPTE: ShowSMPTE(offset_f=10)

fixes:
- Fixed FPS overflow with Select...(), Interleave() and variants.
- Fixed subtract mode in Overlay (chroma is correctly subtracted).
- Fixed align parameter in Subtitle.
- Revert "Evaluate: Unrecognized exception!" change for hard quit whenever there's an exception instead of showing error message (XPsp2 possible problem due to XPsp2's new msvcrt.dll).
- Windout code is working again (broking in the previous betas).
- Corrected multi-channel audio fading.

optimizations:
- Text overlay antialiaser tweaked, 8% faster Work in progress, more to come.
- RGB32 FlipHorizontal() code tweaked.
Автор: Widok
Дата сообщения: 05.08.2005 20:30
AviSynth 2.5.6 beta 4 (от 10 июля)
http://prdownloads.sourceforge.net/avisynth2/AviSynth_100705.exe?download

изменения:
[more]additions:
- Added DevIL support for RGB32 to ImageSource.
- Added Russian language documentation. Thanks to Fizick and his team. Well done.
- Added Merge() filter. Includes very fast iSSE pavgb code for weight=0.5.
- Added MergeARGB(), MergeRGB() filter.
- Added ShowRed(), ShowGreen(), ShowBlue() filters.
- Added Planar version of env->SubFrame() (thanks TSP).
- Added SetPlanarLegacyAlignment() to select Planar alignment algorithm.
- Added Audio padding control to Trim().
- Added operator MulDiv(multiplicand, multiplier, divisor).
- Added AssumeScaledFPS(multiplier, divisor, sync_audio) maps vi.MulDivFPS.

fixes:
- Fixed 2 bit crosstalk in YUV horizontal resizers, thanks Squid.
- Fixed resource leak in DirectShowSource(), thanks Tritical.
- Fixed minor memory leak in Subtitle() and string(), thanks Tritical.
- Fixed global clip close down problem, thanks Tritical.
- Uninstaller now remove Docs\pictures directory and DirectShowSource and TCPDeliver plugins.
- Fixed ImageReader single file handling.
- Fixed ImageWriter info==false no longer write status text onto frame.
- Trap .WAV clsid handler GPF with filenames gt 47 chars.
- Fixed YUV text access violation, correct bounds alignment tests. (Regression)
- Fixed ExpFunctionCall::Call memory leak, thanks Tritical.
- Fixed PClip leak in MergeChannels(). Destructor chain not called.
- Fixed RGB text alignment inversion. Regression in May 5th ver.
- Fixed vfw resource leaks when opening bad AVI files.
- Fixed rmvb (dss.dll) stuck at 100% during encoding (thx stevencover).
- Fixed Loop audio processing.
- Fixed GeneralConvolution crash with cropped input.
- Restored forced (negative) planar luma alignment functionality.
- Fixed a stack of memory leaks, thanks Tritical.
- Fixed Direct AVISource input of raw YV12 and I420 sources.
- Fixed (fingers crossed) "Evaluate: Recognized exception!" Problems with XPsp2 hard terminate.
- Fixed CACHE_RANGE internal scope test, thanks Tritical.
- Fixed Mask() calc of greyscale, red/blue swapped.

optimizations:
- Run sort -unique|detab on color_rgb.avsi, got rid of all the duplicates.
- YV12 MergeLuma(), MergeChroma() include very fast iSSE pavgb code for weight=0.5.
- Cleanup VideoFrame garbage collection on script close (Thanks TSP).

changes:
- New improved cache!
- Uninstaller now deletes DirectShowSource.dll and TCPDeliver.dll from plugin directory.
- ImageReader doesn't auto fail over to DevIL for DIB/BMP type files. (DevIL crashs on palletted BMPs.)
- ImageWriter now throws an exception for non RGB24 format with DevIL? processing.
- ImageReader/Writer info text colour now pale yellow $f0f080.
- Replaced VideoFrame::SubFrame() with env->SubFrame() (Ready for MultiThreading, Thanks TSP).

As usual download from Sourceforge.

PS, this will probably be the last beta[/more]
Автор: Widok
Дата сообщения: 08.08.2005 12:32
как правильно написать скрипт временных титров через дабовский фильтр Subtitler.vdf для добаления в .avs
нашел на думе(http://forum.doom9.org/showthread.php?t=16628&highlight=Subtitler)
я так понял, что мне нужны эти строки для получения титров:
LoadPlugin("C:\DVD2SVCD\MPEG2DEC\MPEG2DEC.DLL")
function VD_Subtitler(clip clip, string filename)
{
LoadVirtualdubPlugin("путь к subtitler.vdf", "_VD_Subtitler")
return clip._VD_Subtitler(1, filename)
}
mpeg2source("путь к файлу.d2v")
VD_Subtitler(video, "путь к титрам .ssa")
The 'clip' is your ordinary video stream. It is returned by every (video-) function you call

но при начале кодирования выдаётся ошибка, что-то там с rgb и сноска в номер строки где "return clip._VD_Subtitler(1, filename) "

я в тупике с синтаксисом, что такое "1", что за "имя файла"? что за одинарный поток "clip" который возвращается при вызове функции video- ?
Автор: Esc
Дата сообщения: 08.08.2005 19:51
Widok

Цитата:
но при начале кодирования выдаётся ошибка, что-то там с rgb

Если б у тебя не было 20000 постов, я б решил, что ньюбик пришёл. 8-(


Цитата:
VD_Subtitler(video, "путь к титрам .ssa")

Что за переменная video и откуда она берётся? Запость кусок своего настоящего скрипта, а не как его Рабинович по телефону напел. Потому что ошибка наверняка в синтаксе.
По тому, что удалось разглядеть, при вызове тебе первый параметр надо опускать, а ты туда непонятно чего суёшь.
Автор: Widok
Дата сообщения: 09.08.2005 12:06
Esc
да, ньюбик в вопросе добавления титров через avs.
с Дубом всё давно замечательно.

я же написал- единственное что нашел на думе было:
http://forum.doom9.org/showthread.php?t=16628
зачем мне вставлять сюда мой avs, если у меня не правильно вызывается скрипт?
мне нужен синтаксис для решения конкретной задачи, если по ссылке выше бред то мне пофиг- мне нужно вставить правильно и получить желаемое.


Добавлено:

Цитата:
что-то там с rgb
написал так т.к не запомнил точно

и если ты пытаешся меня подколоть в незнании, а не помочь, то грош цена твоему ответу.

Страницы: 12345678910111213141516171819

Предыдущая тема: Вставка из clipboard'а в MS Outlook 2000


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.