can i demux the subtitles from the cut vob, and mux them back?
ok, im trying to backup my dvds to kdvds(anime episodes). Im using tmpgenc, "KDVD Full D1" template.
while: -removing Opening, and Credits using Dvdshrink. -losing as little quality as possible. so cq=100. -either hardcode english subtitles or mux english subtitles and make default (only want to keep english subtitles) Source: VOB - interlaced - 29.97 - 720x480 Output: VOB - interlaced?????not sure???? - 29.97 - 720x480 now my questions: do i need to filter since im not resizing??? should i deinterlace??? should output be interlaced??? can i demux the subtitles from the cut vob, and mux them back??? is there a avisynth filter that can playback subtitles directly from vob so i can encode with subtitles on? |
Re: Encoding hard subtitles, help needed
Quote:
Quote:
Quote:
Quote:
Quote:
|
whats the easiest program to use for demux/muxing subtitles?
|
Quote:
The easiest to mux is Muxman (see on Doom9.org) but this is only part of the problem. The real problem is how do you plan to author your DVD ? If you need menus and stuff like this, muxman is not the correct tool, but tools that do menus does not handle subtitles so easily... May be hard encoding subtitles on the video itself is the easiest way you have :-) |
yea i think thats my best bet too, since im gonna try to do a menu eventually. So far i extracted the subtitles with subrip(font looks a lot better with TextSub(), than original font) , and using this script:
============SCRIPT================== LoadPlugin("E:\EXE\DVD\dgmpgdec110\DGDecode.dll") LoadPlugin("D:\Program Files\AviSynth 2.5\plugins\VSFilter.dll") LoadPlugin("D:\Program Files\AviSynth 2.5\plugins\STMedianFilter.dll") LoadPlugin("D:\Program Files\AviSynth 2.5\plugins\asharp.dll") LoadPlugin("D:\Program Files\AviSynth 2.5\plugins\unfilter.dll") LoadPlugin("D:\Program Files\AviSynth 2.5\plugins\undot.dll") MPEG2Source("VTS_01_1.VOB") undot() asharp(1, 4) STMedianFilter(3, 3, 1, 1 ) MergeChroma(blur(1.5)) MergeLuma(blur(0.1)) ## Linear Motion Adaptive Filtering ## ScriptClip(" nf = YDifferenceToNext()" +chr(13)+ "unfilter( -(fmin(round(nf)*2, 100)), -(fmin(round(nf)*2, 100)) ).TemporalSoften( fmin( round(2/nf), 6), round(1/nf) , round(3/nf) , 1, 1) ") TextSub("Anime.srt") ## Functions ### function fmin( int f1, int f2) { return ( f1<f2 ) ? f1 : f2 } ===========END SCRIPT================ should that do the trick? |
That is exactly that. Always put the subtitles after all the filtering, as you did, to avoid "blured" subtitles, diffucult to read.
|
@silverspoonjackass: You can't use the MA script as it is if you have an interlaced source and keep it interlaced. See the sticky thread about interlaced processing in the Optimal scripts section.
|
Assuming its top field first, this would be a better script then?
============SCRIPT================== LoadPlugin("E:\EXE\DVD\dgmpgdec110\DGDecode.dll") LoadPlugin("D:\Program Files\AviSynth 2.5\plugins\VSFilter.dll") LoadPlugin("D:\Program Files\AviSynth 2.5\plugins\STMedianFilter.dll") LoadPlugin("D:\Program Files\AviSynth 2.5\plugins\asharp.dll") LoadPlugin("D:\Program Files\AviSynth 2.5\plugins\unfilter.dll") LoadPlugin("D:\Program Files\AviSynth 2.5\plugins\undot.dll") LoadPlugin("D:\Program Files\AviSynth 2.5\plugins\KernelDeint.dll") MPEG2Source("Something.d2v") KernelBob(order=1,sharp=true,threshold=7) AssumeFrameBased() undot() asharp(1, 4) STMedianFilter(3, 3, 1, 1 ) MergeChroma(blur(1.5)) MergeLuma(blur(0.1)) ## Linear Motion Adaptive Filtering ## ScriptClip(" nf = YDifferenceToNext()" +chr(13)+ "unfilter( -(fmin(round(nf)*2, 100)), -(fmin(round(nf)*2, 100)) ).TemporalSoften( fmin( round(2/nf), 6), round(1/nf) , round(3/nf) , 1, 1) ") TextSub("Anime.srt") AssumeBFF() SeparateFields() SelectEvery(4,1,2) Weave() ## Functions ### function fmin( int f1, int f2) { return ( f1<f2 ) ? f1 : f2 } ===========END SCRIPT================ should subtitles be added before or after: "...AssumeBFF() SeparateFields() SelectEvery(4,1,2) Weave()..." ? |
The script looks ok, although you should download the latest version of Leak's KernelDeint here : http://forum.doom9.org/showthread.ph...=leakkernelbob . I just haven't updated that thread. Note that the dll name has changed so you'll have to remove kerneldeint.dll from your plugins folder and replace it with leakkerneldeint.dll found in the latest package. Then rename KernelBob in the script to LeakKernelBob and remove AssumeFrameBased() , it's no longer needed.
I would also replace TemporalSoften( fmin( round(2/nf), 6), round(1/nf) , round(3/nf) , 1, 1) with TemporalSoften( fmin( round(2/nf), 6), round(1/nf) , round(3/nf) , 1, 2) What comes to the subs, I think they should be before AssumeBFF().. You'll have to test it though, I've never used hardcoded subs with interlaced material since I do only DVDs these days. |
Site design, images and content © 2002-2024 The Digital FAQ, www.digitalFAQ.com
Forum Software by vBulletin · Copyright © 2024 Jelsoft Enterprises Ltd.