Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Video Encoding > MPEG-4 ASP

Reply
 
Thread Tools Search this Thread Display Modes
Old 26th November 2001, 17:53   #1  |  Link
Lev
Registered User
 
Join Date: Nov 2001
Posts: 184
high quality anime ripping

hey,

i want to rip anime in ultra high quality.. 300 mb per episode in a resolution of 640 x 480.. what filters should i use?
i mean is there still need for filters like warpsharp or smart smoother with these high bitrates?
Lev is offline   Reply With Quote
Old 27th November 2001, 04:45   #2  |  Link
h00z
anime DVD nut
 
Join Date: Oct 2001
Location: Ohio, USA
Posts: 86

Warp sharp and smart smoother help to reconstruct the original image, they have nothing to do with bitrate.

They way I do my anime is this (and it's a round-about way, but it works for me :

I make my .d2v file in DVD2AVI, then convert it in VFAPI. I then use AVISynth and GreddyHMA to create an .avs file that I can open in Nandub. Once in Nandub is use Smart-Smoother at 3/25 and Warp Sharp at 40 (of course resize and crop as well). Then just encode as you normally would.

I also always use a true (LAME encoded) VBR MP3 for the audio track. But hey... That's just me
h00z is offline   Reply With Quote
Old 27th November 2001, 08:37   #3  |  Link
obelix
Registered User
 
Join Date: Nov 2001
Location: Old Europe
Posts: 46

Hi h00z,

why do you convert it with VFAPI? This should give you awfully low framerates.
I prefer DVD2AIV-project, GordianKnot -> AVISynth frameserver. This avs you can open with Nandub where you can apply your filters.
I'm not sure if I'm right, but it looks to me as if you are cascading frameservers.
obelix is offline   Reply With Quote
Old 27th November 2001, 18:10   #4  |  Link
fisix
Registered User
 
Join Date: Oct 2001
Location: Los Angeles
Posts: 168

he needs to perform inverse telecine (IVTC) on the
stream, and doom9's guide suggests this process to
get very good results. there are other ways, but this
way is reasonably fast, and you can look at the stream
frame by frame if you want to find places where
plug and chug ivtc might stumble.
fisix is offline   Reply With Quote
Old 27th November 2001, 21:55   #5  |  Link
h00z
anime DVD nut
 
Join Date: Oct 2001
Location: Ohio, USA
Posts: 86

Yep. What he said

Actually my bottleneck is the application of the filters. The settings I use increase encoding time dramatically, but I have had comments about the fact that some of my rips actually look better than the source DVD (due to the image reconstruction).

On my dual Duron 1ghz machine I encode at ~7-8fps using my settings. Not speedy, but it is worth it for the final quality.
h00z is offline   Reply With Quote
Old 28th November 2001, 19:34   #6  |  Link
Lev
Registered User
 
Join Date: Nov 2001
Posts: 184

h00z y do you use AVISynth and GreddyHMA to convert the avi to avs and not just use the .avi vfapi created?

and in what order do you use your filters?
Lev is offline   Reply With Quote
Old 29th November 2001, 03:52   #7  |  Link
h00z
anime DVD nut
 
Join Date: Oct 2001
Location: Ohio, USA
Posts: 86

Yes, I use AVISynth and GreedyHMA to decimate the VFAPI AVI from 30fps to 24fps (Yes, IVTC makes a HUGE difference in anime). A sample .avs file goes like this (the bold '3' is important):
Quote:
LoadPlugin("D:\downloads\Avisynthv105\GreedyHMA\GreedyHMA.dll")
AVISource("D:\vobs\cowboy.bebop\1\cb1.1_d2v-vfapi.avi")
return GreedyHMA(0,0,3,0,0,0,0,0)
Then my filters go like this (ignore the beginning resolution, I just grabbed a screenshot to show the filters and settings ):



Does that help?
h00z is offline   Reply With Quote
Old 29th November 2001, 09:21   #8  |  Link
Lev
Registered User
 
Join Date: Nov 2001
Posts: 184

thnx h00z
for pal (25 fps) i don't have to use AVISynth and GreedyHMA right?
i use the smart deinterlace filter..
Lev is offline   Reply With Quote
Old 29th November 2001, 23:37   #9  |  Link
charlesky
Registered User
 
Join Date: Oct 2001
Location: London
Posts: 6

IVTC is essential if you want quality. De-interlacing will just produce a 29.97fps file, whereas all you need is 24fps, ie you're wasting bits on 6 frames each second that shouldn't be there. You'll also see artifacts from the deinterlace filter on many of the frames.

Personally, I create the .d2v file, load it into TMPGEnc and run it through the IVTC panel there (24fps flicker priority). I then save the .tpr project and convert it with VFAPI to load into Nandub for filters and encoding. TNPGEnc's IVTC filter is pretty powerful, but the main advantage is that it allows you to correct the stream manually, a function that often seems to be needed with anime.

Most anime is shot on film at 24fps, so that should be your target framerate, but anime studios are notorious for getting "clever" and will sometimes put in 29.97fps pans and CG segments that are shot on video (grrr).

I encode my stuff at around 1900kbps, which puts 2 24min episodes on a 700M CDR. The quality is very acceptable, but I wouldn't call it 'ultra-high': it's still possible to see a bit of fixed-pattern and mosquito noise if you look closely.
charlesky is offline   Reply With Quote
Old 29th November 2001, 23:58   #10  |  Link
h00z
anime DVD nut
 
Join Date: Oct 2001
Location: Ohio, USA
Posts: 86


GreedyHMA is proving to be a better IVTC solution (not to mention *MUCH* easier) than TMPGEnc.

As for bitrate, I just use Nandub's bitcalc for my anime. For individual episodes (24 minutes +/-) I shoot for 170mb final size, normal movies ~645mb. That might seem small, but with the filters and variable bitrate of Nandub's SBC... I consider it VERY high quality.

Of course, YMMV
h00z is offline   Reply With Quote
Old 30th November 2001, 00:03   #11  |  Link
h00z
anime DVD nut
 
Join Date: Oct 2001
Location: Ohio, USA
Posts: 86

Check this screenshot of one of my Cardcaptor Sakura rips. Pay special attention to the ghosting around her hair (my rip is the top frame, original DVD source on the bottom of course).



The quality of the rip actually looks a little better than the source after filters. What do you think?
h00z is offline   Reply With Quote
Old 30th November 2001, 00:33   #12  |  Link
h00z
anime DVD nut
 
Join Date: Oct 2001
Location: Ohio, USA
Posts: 86

I need to clarify that the "ghosting" I was talking about is due to the compression used by the MPEG2 encoder when making the DVD. Some of that will come back when encoding into DivX (MPEG4), but with the filters you at least get to start from a clean slate so to speak, rather than adding more compression artifacts on top of the existing artifacts.

With these particular filters you get as good (or maybe a little better) image quality with your final file as you have on the DVD IMHO.

I plan on applying my methods to the new DivX 4 CODEC in VirtualDub to see how well it works and also to see if it is any faster. Overall though, wise use of filters with Nandub's SBC and DivX 3.11 is the best way to rip anime that I have seen.
h00z is offline   Reply With Quote
Old 30th November 2001, 04:38   #13  |  Link
manono
Moderator
 
Join Date: Oct 2001
Location: Hawaii
Posts: 7,277
Lev


Hi-Since you're working with PAL material (something you should have stated in the beginning), then you can ignore much of what h00z and charlesky said about NTSC material IVTC, not that it's wrong, but it doesn't apply to you. I think you might want to use GreedyHMA anyway for PAL material, if for no other reason than it's so much faster than the VFAPI method. GreedyHMA has settings specific to PAL material. Assuming you have the plug in and know how to set it up, then GreedyHMA(1,0,1,0,0,0,0,0), assuming Top First (the usual case), or GreedyHMA(1,0,1,0,1,0,0,0)(if you'd like to use the vertical filter (recommended, and it'll deinterlace any remaining interlaced frames, and smooth a bit as well)), should work pretty well. It performs a 2:2 pulldown (keeping the 25fps).

The reason you might not want to use just the Smart Deinterlace filter is that it will give you all kinds of ghosting, and won't do a complete job. As for h00z's recommendation about using Warp Sharp and the Smart Smoother, that's up to you, but, as he said, it will slow things way down. My own feeling is that with a high enough bit rate, you don't need them, as you'll get less crud outside the lines needing repair. He's putting 4 episodes/CD and is bit rate constrained (depending on resolution-couldn't tell from the screenshot, though it looks like 512x384), and I believe they probably do help quite a bit. Personally, I put 3/CD at 512x384, and don't use them. You plan on putting 2/CD but at 640x480, and when you have episodes with lots of action, your bit rate may not even be high enough, and you may wish to use the filters. The only way to know for sure is to experiment, as we all have done. Whatever works best for you is what's best.

Last edited by manono; 30th November 2001 at 04:54.
manono is offline   Reply With Quote
Old 1st December 2001, 02:27   #14  |  Link
neo
Registered User
 
Join Date: Oct 2001
Posts: 3
ivtc?

first time I post in a year...
but I really want to be sure: is ivtc-ing an anime a good thing or just a mean to reduce space. For a movie I am sure that every cam shoot usually at 24 fps and every conventionnal theater is designed to project 24fps movies made thanx to these cams.
but for animes, this is not the case since they are drawn then shoot.
I heard somwhere that to have a good efficiency and productivity for TV series, japanese made only 15 draws for one second. It seems low but the eye can't see the difference. Of course try a 15 fps output with TMPG and you will see how bad it looks. If that is true I think that they have a sort of telecine for animes 15->30 fps. That would mean that on hi-mo scenes all frames would be interlaced to preserve continuity.
yes it can be bullshit, but just try to run ivtc with the opening of Evangelion and look at the sequence with the blue sky, the boy's head
and the two girls' body in dark scrolling aroud him. you will notice in TMPG that all these frames are interlaced. how can you perform IVTC with every frame depending of her neighboors. you can't without breaking the fluidity of the move = choppy avi
It is not big deal cause you won't notice it unless you really pay attention on scrolling scenes.
Last year, I had the same problem with cow-boy bebop but I kept IVTC since with old methods I couldn't apply deinterlace filters. Believe me, with the best settings I couldn't get rid of all interlaced frames, with hi-mo they came back. But I can't say it was choppy.
IMO ivtc is a bad thing if you want high quality but it is good if you just want to pack your cd with the max number of avis. Finally, the real thing which gets rid of interlacement is deinterlacement filters. I don't use smart deinterlace (never used it, maybe I make a huge mistake), I prefer to use TMPG deinterlace (double) without IVTC.

Maybe I am really wrong, that's why I am posting. What do u think?
neo is offline   Reply With Quote
Old 1st December 2001, 02:42   #15  |  Link
neo
Registered User
 
Join Date: Oct 2001
Posts: 3
problems


I have problems with encoding those *$*ing fades.
General quality is good,
but when there is a fade effect between two sequences, it gets really ugly. Again it is from the opening of evangelion where you have a lot of these effects at the beginning.
does someone know how to get rid of this?

Another problem is what I call the ghost problem. Imagine you have an uniform blue background, and a litlle dark object moves from the left to the right. Usually, you get a trail of little black pixels behind the object, what I call his ghost. i found that it was due to the interpolation between keyframes, after each keyframe the ghost effect is reset. So to minimize it, I should put a small time between keyframes which I, of course, don't want. Do you have a suggestion?

here are my settings:VirtualDub.audio.SetSource(0);
VirtualDub.audio.SetMode(0);
VirtualDub.audio.SetInterleave(1,500,500,1,0);
VirtualDub.audio.SetClipMode(1,1);
VirtualDub.audio.SetConversion(0,0,0,0,0);
VirtualDub.audio.SetVolume();
VirtualDub.audio.SetCompression();
VirtualDub.audio2.SetSource(0);
VirtualDub.video.SetDepth(24,24);
VirtualDub.video.SetMode(3);
VirtualDub.video.SetFrameRate(0,1);
VirtualDub.video.SetIVTC(0,0,-1,0);
VirtualDub.video.SetRange(0,0);
VirtualDub.video.SetDivX(956,10);
VirtualDub.video.SetQualityControl(2,16,30,50);
VirtualDub.video.SetMotionDetection(8,14,300,300);
VirtualDub.video.SetCrispness(20,0);
VirtualDub.video.SpaceKF(30);
VirtualDub.video.InternalSCD(100);
VirtualDub.video.SetMinKBPS(320);
VirtualDub.video.SetCurveFile("F:\\evavob\\hue.stats");
VirtualDub.video.SetCurveMcFactor(0);
VirtualDub.video.SetCurveCompression(0,2);
VirtualDub.video.SetCurveFilter(250,3000);
VirtualDub.video.SetCurveCredits(0,250);
VirtualDub.video.SetLumaCorrectionAmp(1,10,30);
VirtualDub.video.SetCurveRedist(1);
// VirtualDub.video.CalcCurveCompression();
VirtualDub.video.SetCompLevelsMain(2,7);
VirtualDub.video.SetCompLevelsA(300,3,16);
VirtualDub.video.SetCompLevelsB(300,4,16);
VirtualDub.video.SetCompLevelsC(300,5,16);
VirtualDub.video.SetCompLevelsD(300,6,16);
VirtualDub.video.SetCompLevelsE(300,7,16);
VirtualDub.video.SetCompLevelK(2,31);
VirtualDub.video.SetBitsReservoir(0,35,27,70,45,0);
VirtualDub.video.SetLowBrCorrection(1,1);
VirtualDub.video.NoAVIOutput(0);
VirtualDub.video.GenStats("",0);
VirtualDub.video.SetEncodingControl("");
VirtualDub.video.filters.Clear();
VirtualDub.video.filters.Add("smart resize (1.1)");
VirtualDub.video.filters.instance[0].Config(640,480,0,3,616,480,0x000000,"0 6 7 0 560 240 100 0 1 1 1 4 4 2 2");
VirtualDub.video.filters.Add("smart smoother (1.1)");
VirtualDub.video.filters.instance[1].Config(5, 25, 0);
VirtualDub.video.filters.Add("temporal smoother");
VirtualDub.video.filters.instance[2].Config(3);
VirtualDub.video.filters.Add("smart smoother (1.1)");
VirtualDub.video.filters.instance[3].Config(5, 25, 0);
VirtualDub.video.filters.Add("hue/saturation/intensity (1.0)");
VirtualDub.video.filters.instance[4].Config(-2, 1, 0, 42, 63);
VirtualDub.subset.Delete();
VirtualDub.brc.Set( 0, 645 );
VirtualDub.brc.Set( 1, 1 );
VirtualDub.brc.Set( 2, 128 );
VirtualDub.brc.Set( 3, 0 );
VirtualDub.brc.Set( 4, 1 );


thanx for any help


Last edited by neo; 1st December 2001 at 03:18.
neo is offline   Reply With Quote
Old 4th December 2001, 22:03   #16  |  Link
ssjkakaroto
Registered User
 
ssjkakaroto's Avatar
 
Join Date: Oct 2001
Location: River of Flame
Posts: 198
trails


i have the exact same problem with those trails and i have no idea how to get rid of them, if you see the ending of Final Fantasy Unlimited encoded by soldats you'll see that they can get rid of them really fast, i've asked how they do that on their forum but so far no response. any help would be appreciated.

Last edited by ssjkakaroto; 4th December 2001 at 22:14.
ssjkakaroto is offline   Reply With Quote
Old 5th December 2001, 02:58   #17  |  Link
Dave
Registered User
 
Join Date: Oct 2001
Location: Canberra, Australia
Posts: 3

Just out of interest, Hooz, how well do these filters work when used in conjunction with, say, a Hollywood movie whose source is a little poor?
Dave is offline   Reply With Quote
Old 7th December 2001, 14:49   #18  |  Link
nephilim
Registered User
 
Join Date: Oct 2001
Posts: 11

Wow, neat process you got there, h00z. Though I ran into a problem with (I assume cb1 is Cowboy Bebop) the same Anime. One thing to note is that in most Anime the field order is top first, hence GreedyHMA(1,0,3,0,0,0,0,0) is accurate. That's for those who cut, paste, and ask questions later, hehe.
How well overall does TMPEG IVTC compare to the myriad AVISynth modules? I'd think if you could somehow skip the VFAPI the speed increase would be well worth it. (I'm lazy. Skimming 40,000 frames an episode really kills my brain, so I'm talking pure automatic IVTC quality)
Serious kudos, tho. Now I can finally do Lain some justice.
nephilim is offline   Reply With Quote
Old 7th December 2001, 18:27   #19  |  Link
manono
Moderator
 
Join Date: Oct 2001
Location: Hawaii
Posts: 7,277

You don't have to make a VFAPI. You can do it using just AviSynth. But if you want to use the Smart Smoother and Warp Sharp, you'll have to use Full Processing in Nandub and insert the filters, as there is as yet no AviSynth versions of them, which will slow things down some, but it'll still be faster than frameserving with a VFAPI. However (from the GreedyHMA readme):

3 - Deinterlace (Force Video) but with frame dropping. Use for NTSC video
if you still want to decimate. With video source there really are no
proper fields to drop, but this will drop the ones looking most like
dupes.

4 - Auto Pulldown with frame dropping. The best (most automatic) setting.
Works in most cases, at least if I get all the bugs out.

5 - Pulldown only (Force Film) with frame dropping. This will give the best
results if you have 100% properly mastered NTSC film source with no
video sections and not too many edits. It can adjust for most scene
changes and changes in pulldown cadence, but not mixed up fields.

So I don't use the 3 setting-I prefer GreedyHMA(1,0,4,0,1,0,0,0), and the vertical filter will remove any remaining interlaced frames. It works.
manono is offline   Reply With Quote
Old 8th December 2001, 02:56   #20  |  Link
ssjkakaroto
Registered User
 
ssjkakaroto's Avatar
 
Join Date: Oct 2001
Location: River of Flame
Posts: 198

manono, does the vertical filter really removes frames? cuz the greedyhma readme only says it removes noise and deinterlacing artifacts
__________________
CCCP
ssjkakaroto is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 07:41.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.