View Full Version : Win XP & DVD2AVI v1.77.1 - iDCT 32-bit DCT buggy
frank
13th June 2002, 17:04
Anyone tested?
On P4 2000 with Win XP the new DVD2AVI v1.77.1 makes buggy output in iDCT 32-bit MMX mode! Frameserved .d2v stream via AVISynth (+MPEG2DEC.DLL) to VirtualDub shows grey blocks with some coloured pixels. :(
When you switched to iDCT 64-bit Floating Point then all works fine!!
Any solution?
Yup, you're right. Same on Win2K prof. Switch back to 1.76 or, as you mentioned, no prob. So you go...
greetz, Uli
trbarry
14th June 2002, 00:05
I don't know what changes went into 1.77 but be aware that when you are frameserving the IDCT is actually done in MPEG2DEC.DLL. If DVD2AVI 1.77 is running on a P4 it may specify using an SSE2 IDCT and write that in the .d2v file you are trying to open. But that would mean a new P4 version of MPEG2DEC.dll would have to read it.
Try using the one on www.trbarry.com/MPEG2DEC2.zip if a new P4 version didn't come with 1.77 (did it?). You could rename this one if needed.
Or you would have to edit your .d2v file to put in whatever (I forget) idct code would be specified for a P3 for sse idct.
In any event, when frameserving all the performance effects come from the mpeg2dec, not dvd2avi except for setting the idct type code.
- Tom
Oh yeah, nice mention...
Will try it soon. You're right, tried to make an d2v with new version and convert it with 'old' version of MPEG2DEC.DLL. Hope things go well...
greetz, Uli
vlad59
14th June 2002, 07:34
From what I've seen Dvd2avi 1.77 and the current mpeg2dec-OE (Tom's one) are compatible. they use the same IDCT code for the SSE2 one (5).
frank
14th June 2002, 09:15
Hey, thank you Tom. You gave an excellent analysis of the problem.
All works fine now.
Which of the MPEG2DLL versions did you improve??
The only one that was sufficently debugged and improved comes from Devidee. (8/2001 with TemporalSmoother, SmartDeinterlace...)
Are these functions supported in your version?
Regards
frank
trbarry
14th June 2002, 15:48
As I've commented elsewhere, I'm not sure where I got the source I modified. Someone gave it to me and it sat around on my hard drive for awhile before I got interested in it. No one confesses to have given it to me and I am way too disorganized to remember.
It is almost certainly a version of Dividee's. But he has suggested that bundling all of the filters is probably a mistake and a maintenance nightmare and asked us to remove them from the save-oe project. This will be done when someone gets around to it but for now they are still temporarily included. But we won't be picking up bug fixes on those, or enhancing them, just eventually deleting them.
- Tom
vlad59
14th June 2002, 15:56
@Tom
In CVS, Dividee's filters have been removed (I did that 3 or 4 weeks ago). I just took your T3 version, removed those filters and stuff it on cvs.
trbarry
14th June 2002, 20:34
vlad -
Okay, good. But it looks like I'm not quite keeping up to date here anymore. This is the second time you've fooled me recently. ;)
- Tom
vlad59
15th June 2002, 10:21
@Tom
It's rather my fault ;) . I never done what I said : sum up the unreadable Sourceforge post and explain everything clearly.
A month ago I had time to do that but I was too lazy :cool: and now I don't have enought time. That's life.
How is going your motion based deinterlacer (If I remember well you was working on that) ????
@Vlad:
Why did you take dividee's code out of Tom's MPEG2DEC2? I think that may hinder Save-oe's acception, espeically if MPEG2Source is not changed to another name (i.e. so that MPEG2DEC.DLL & MPEG2DEC2.DLL can be used simultaneously)
Today I re-wrote OpenDVD.DLL (as it used VobDec, which isnt good). The integration of OpenDVD.DLL into DVD2AVI & MPEG2DEC isnt good (it assumes there is only one key for all vobs, etc). Ill try & neatly desribe the changes (i.e. KeyOp should be called for at least every vob (in Next_File), In the d2v only one key is passed (which is bad), etc)
(I only mention it as many people seem to want to be able to rip straight from the DVD (?!))
-Nic
vlad59
15th June 2002, 15:34
@Nic
I removed it because Dividee told to do that (on page 14 of the Sourceforge post) :
You're right, mpeg2dec should be merged in the save-oe tree. Tom, I see you're working with a version that include my filters. They probably should be removed before merging.
That's what I did, but you're right I should have renamed Mpeg2source to another or asked Dividee to provide a dll with his tools. But I have not compiled and distributed any mpeg2dec.dll based on CVS so it's still time to find a solution.
IMHO Dividee's filters should not be in CVS so there's two solutions :
- Rename the name of the avisynth function (to Mpeg2source-oe for example)
- Keep the same name and build a seperate dll with Dividee's filters
In both cases this mpeg2dec.dll won't be automatically compatible with all the tools generating avs scripts (avstools and GKnot) : people will have to hand edit the scripts.
So I'm quite annoyed with that.
The easiest solution is to keep Dividee's code......
What's your opinion about that
My opinion would be to keep dividee's code in MPEG2DEC.DLL....its what people would expect. (That thread has so many pages but so many nuggets of useful info :) )
dividee wrote:
The fact that I included them in the mpeg2dec dll has caused some confusion. It was probably not a good idea in the first place
Maybe it was a bad idea...but mpeg2dec.dll containg Temporal Smoother, etc is what people expect from mpeg2dec now.
Cheers,
-Nic
trbarry
16th June 2002, 08:16
I think good manners dictate that we get Dividee's input into this too. Maybe there is some satisfactory compatible solution.
- Tom
I entirely agree :) I cant see that he'd have an objection though. But we should ask :)
Cheers,
-Nic
dividee
16th June 2002, 12:16
You're probably right, people might expect my filters to be in mpeg2dec.dll.
I don't think renaming mpeg2source is satisfactory.
I think one of these two solutions is better, I'll let you choose:
1) The version I currently use only declares a filter to avisynth if another filter by the same name isn't already declared, so if I use LoadPlugin("mpeg2dec-oe.dll","mpeg2dec.dll") it will uses mpeg2source from mpeg2dec-oe.dll, and the the other filters from mpeg2dec.dll. I might release that version.
2) Keep my filters in mpeg2dec-oe. I know I didn't update my filters for a long time, but I have some bugfixes and new filters, so I'd like to have write access to the CVS (or someone I can send my sources to). This is the most "GKnot-friendly" solution since people would only need to replace the dll that comes with GKnot with the OE version.
(I just asked dividee to comment in a PM, seems I was too late, sorry about that dividee, im sure you get enough PMs as it is)
dividee
16th June 2002, 13:55
np Nic, but Tom was faster ;)
As you can see, no objection.
trbarry
16th June 2002, 14:59
2) Keep my filters in mpeg2dec-oe. I know I didn't update my filters for a long time, but I have some bugfixes and new filters, so I'd like to have write access to the CVS (or someone I can send my sources to). This is the most "GKnot-friendly" solution since people would only need to replace the dll that comes with GKnot with the OE version.
dividee -
We'd certainly be glad to have you as a save-oe developer.
So I strongly vote for this choice and we wouldn't have to worry about the duplicate maintenance problem.
Can some save-oe admin please add him to the cvs developer list?
I wonder if we can get Jackei to join too? Anybody know him?
- Tom
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.