Recenze  |  Aktuality  |  Články
Doporučení  |  Diskuze
Filmy a seriály, streamovací služby
Televize  |  Projektory
Audio a domácí kina
Multimediální centra  |  Ostatní
Svět hardware  |  Digimanie
Svět mobilně

Jak dostat AVC TS do VirtualDbu

aleycon (152)|23.12.2016 21:59
Zdravím,
Řešil jsem jak dostat AVC TS ze satu do Vegasu, kde jej sestríhám a následně zpracuji.
Pro převod z HD (1080i) do SD jsem chtěl použít VirtualDub - crop (Canvas ve VD) na 4:3, resize na SD a uloženi v HuffYUV který načtu Vegasem. Během několika probděných nocí jsem postupně vyzkoušel několik variant:
1) VirtualDub 1.10.04. Ten sice TS otevře, zvuk jede dobře, ale obraz je rozblikaný a rozklepaný jak po 10 pivech:-)

Pro další řešení jsem zkusil AviSynth (ver 2.6)
2) DirectShowSource, ffdshow v1.3.4533. Tam už byla situace mnohem lepší, žel zvuk se oproti obrazu předcházel o více jak 1 vteřinu. Nepomohlo ani zařazení EnsureVBRMP3Sync(). Obraz měl však zachován Scan původního TS, tedy Interlaced TFF.

3) DGAVCDec 1.0.9, Indexer DGAVCIndex se vzpouzel TS oindexovat. DGAVCDec navíc snad už ani není dále podporován, jak jsem se někde dočetl.

4) FFmpegSource2. Obraz i zvuk synchronní, ale obraz nebyl prokládaný. MediaInfo sice hlásil že ano (Scan Order mi už ale neprozradil), Vegas tvrdil že je progressive. Testem AssumeTFF/AssumeBFF + SeparateFields se ukázalo že obraz není skutečně prokládaný.

5) LWLibavVideoSource + LWLibavAudioSource. Vše pořádku. Obraz je jak má být (Interlaced TFF) a zvuk je synchronní. Pro zajištění synchronního zvuku je nutné přidat do LWLibavAudioSource za jméno souboru argument av_sync=true:
Video = LWLibavVideoSource("My video.ts")
Audio = LWLibavAudioSource("My video.ts", av_sync=true)
return AudioDub(Video,Audio)

LWLibavVideoSource a LWLibavAudioSource je v pluginu LSMASHSource, reference je zde, download který jsem vyzkoušel (32bit) je zde
Do adresáře s pluginy AviSynthu se nakopíruje jen dll, žádný avsi netřeba.
Při prvním spuštění ve VirtualDubu se ve stejném adresáři jako je video vytvoří index soubor (přípona lwi). Chvíli to trvá a VirtualDub je "zamrzlý".
V pluginu je ještě funkce LSMASHVideoSource a LSMASHAudioSource pro otevírání MP4/M4V/MOV bez nutnosti úvodní indexace.

FFmpegSource2 jsem vyzkoušel ze starsiho pluginu 2.20 - ffms2-2.20-icl.7z - viz zde
Novejší verze tam uvedené (2.22 a 2.23) nemají a avsi uvedenou definici funkce FFmpegSource2.
Obsah archivu (FFMS2.AVSI + obsah podadresáře x86 nebo x64) se opět nakopíruje do adresáře s pluginy AviSynthu.
FFmpegSource2 vytváří stejně jako LSMASH index (přípona ffindex).

Dále jsem čistě ze zvědavosti zkusil i Avidemux 2.6. Ten ale dává stejné výsledky jako FFmpegSource2. Zkusil jsem i nějaké jednoduché splachovadlo (free TS Convertor se to tuším jmenovalo), ale nebyla možnost nastavit parametry výstupního AVI.

Pro otvírání AviSynth scriptu pro poslední dva uvedené případy jsem použil VirtualDub 1.9.9. Verze 1.10.04 s tím měla poněkud problémy (x86 i x64).
Foolproof (2713)|18.1.2017 20:49
No...
používám trochu jednodušší způsob, nechám to načíst do Cyberlink Power Producer, sestříhám a uložím jako h264......

Klasickými metodami: MKVMerge z toho udělá MKV dál je to jedno. Nebo starý (velmi starý) Media Player Classic 6.9.4.1 umí cokoliv rozložit na jednotlivé streamy, mux do MP4 a to snad už i Vegas sežere.
aleycon (152)|19.1.2017 00:09
Power Producer je share za penizky. Pokud ho mas koupeny, tak je to jiste jednodussi.
LSMASHSource ktery jsem uvadel je gratis a krome synchronniho zvuku s obrazem zachova i field order puv. TS, coz jsem potreboval.