Log in

View Full Version : RemoveGrainSSE3.dll not always being used


yetanotherid
11th July 2008, 07:42
A bit of a background:
I noticed a difference in AutoGK's compression results after recently putting a new quad core system together, and "racing it" against my older dual core to see if it'd be much quicker at backing up DVDs to AVIs (it wasn't). I assumed there was some "glitch" occurring, but yesterday I reformatted the dual core and installed XP SP3 on it. After I installed XP on the first drive along with any Windows updates offered, I made a Ghost image of it and then restored that image to the second drive. I then had identical copies of XP installed on each drive, booting independently of each other. I left the "copy" of XP untouched and installed all my usual software on the original only. Then last I installed AutoGK, rebooted the machine from the second "clean" installation, and installed AutoGK on it as well.
End result... a copy of XP on one drive with all my usual software including AutoGK, and an identical copy of XP with only AutoGK installed on the other, both running on the same PC.... "XP-A" and "XP-B"

The problem:
I converted a DVD to AVI while running AutoGK from XP-A. I then rebooted into XP-B and converted the DVD again using exactly the same settings for AutoGK. I specified and achieved the same target file size for both, but AutoGK claimed they had different compressibility percentages.

After looking at the log files the initial difference was in the script it wrote in order to do the compressibility test (which then resulted in AutoGK converting the DVD differently each time). The first loaded the RemoveGrainSSE3.dll plugin, while the other didn't. The same thing happened again when AutoGK wrote the script in order to do the first pass.

I did a couple more comparison conversions and the same thing happened. It doesn't always seem to make much difference to the final result, but depending on the initial compressibility test it can be enough to cause AutoGK to use a softer or sharper matrix or different resolution etc. and the expected quality of the first pass size varies accordingly....

So here's the "how long is a piece of string" question.....
Anyone know what would be causing this to happen??

I have ffdshow installed on XP-A but as I installed AutoGK and XviD last, and set XviD as the default decoder for the fourcc types it can decode, I don't think ffdshow would be getting in the way at all.

Thanks,
Darren


From the XP-A log file:
LoadPlugin("C:\PROGRA~1\AutoGK\DGMPGDec\DGDecode.dll")
LoadPlugin("C:\PROGRA~1\AutoGK\filters\autocrop.dll")
LoadPlugin("C:\PROGRA~1\AutoGK\filters\RemoveGrainSSE3.dll")
LoadPlugin("C:\PROGRA~1\AutoGK\filters\leakkerneldeint.dll")

movie = mpeg2source("D:\agk_tmp\Kenny Everet 1, The Best of.d2v")
cropclip = autocrop(movie,mode=0,wmultof=4,hmultof=4,samples=10,aspect=0,threshold=34,samplestartframe=0,leftadd=0,rightadd=0,topadd=0,bottomadd=0)
fixed_aspect = 1.06666666666667
c_width = width(cropclip)
c_height = round(height(cropclip) / fixed_aspect)
input_par = float(c_width)/float(c_height)
input_par = (input_par > 1.4) || (input_par < 1.25) ? input_par : (4.0/3.0)
out_width = 704
out_height = round(float(out_width) / input_par)
hmod = out_height - (floor(out_height / 16 ) * 16)
out_height = (hmod > 4) ? (out_height + (16 - hmod)) : (out_height - hmod)
new_aspect = (float(out_width) / float(out_height)) / fixed_aspect
LeakKernelDeInt(movie,order=1,sharp=true)
autocrop(mode=0,wmultof=4,hmultof=4,samples=10,aspect=new_aspect,threshold=34,samplestartframe=0,leftadd=0,rightadd=0,topadd=0,bottomadd=0)
LanczosResize(out_width,out_height)
RemoveGrain(mode=2)
SelectRangeEvery(300,15)
===========================================================
[11/07/08 6:08:03 AM] Duration was: 1 minute, 57 seconds
[11/07/08 6:08:03 AM] Speed was: 35.94 fps.
[11/07/08 6:08:03 AM] Compressibility percentage is: 27.79
[11/07/08 6:08:03 AM] Using softer matrix.
[11/07/08 6:08:03 AM] Chosen resolution is: 512x384 ( AR: 1.33 )
[11/07/08 6:08:03 AM] Predicted comptest value is: 58.19%
[11/07/08 6:08:03 AM] Running first pass.


From the XP-B log file:
LoadPlugin("C:\PROGRA~1\AutoGK\DGMPGDec\DGDecode.dll")
LoadPlugin("C:\PROGRA~1\AutoGK\filters\autocrop.dll")
LoadPlugin("C:\PROGRA~1\AutoGK\filters\leakkerneldeint.dll")

movie = mpeg2source("D:\agk_tmp\Kenny Everet 1, The Best of B.d2v")
cropclip = autocrop(movie,mode=0,wmultof=4,hmultof=4,samples=10,aspect=0,threshold=34,samplestartframe=0,leftadd=0,rightadd=0,topadd=0,bottomadd=0)
fixed_aspect = 1.06666666666667
c_width = width(cropclip)
c_height = round(height(cropclip) / fixed_aspect)
input_par = float(c_width)/float(c_height)
input_par = (input_par > 1.4) || (input_par < 1.25) ? input_par : (4.0/3.0)
out_width = 704
out_height = round(float(out_width) / input_par)
hmod = out_height - (floor(out_height / 16 ) * 16)
out_height = (hmod > 4) ? (out_height + (16 - hmod)) : (out_height - hmod)
new_aspect = (float(out_width) / float(out_height)) / fixed_aspect
LeakKernelDeInt(movie,order=1,sharp=true)
autocrop(mode=0,wmultof=4,hmultof=4,samples=10,aspect=new_aspect,threshold=34,samplestartframe=0,leftadd=0,rightadd=0,topadd=0,bottomadd=0)
LanczosResize(out_width,out_height)
SelectRangeEvery(300,15)
===========================================================
[11/07/2008 7:20:45 AM] Duration was: 2 minutes 2 seconds
[11/07/2008 7:20:45 AM] Speed was: 34.31 fps.
[11/07/2008 7:20:45 AM] Compressibility percentage is: 22.46
[11/07/2008 7:20:45 AM] Using softer matrix.
[11/07/2008 7:20:45 AM] Using softer resizer.
[11/07/2008 7:20:45 AM] Chosen resolution is: 480x368 ( AR: 1.30 )
[11/07/2008 7:20:45 AM] Predicted comptest value is: 55.27%
[11/07/2008 7:20:45 AM] Running first pass.

len0x
2nd December 2008, 13:21
This is a good one. I almost forgot about this, but RemoveGrain filter requires msvcr71.dll to be present in system directory otherwise its not going to be used...

yetanotherid
2nd December 2008, 13:48
And the answer's always so simple isn't it?

Thank you, thank you, thank you. I thought I'd just edged another step closer to going a tad insane.

yetanotherid
10th December 2008, 16:05
Ahhhhh.... FFS!! This got me again!!
I just restored an old Ghost image due to XP getting a bit flaky. Then I encoded a whole bunch of video. Hours and hours later I've noticed the RemoveGraininess filter isn't loading. I guess it doesn't matter because the video looks fine, although I guess it also explains why some of the AVIs have been lower quality than expected for a given file size. The filter had been loading though and I've got the same software after restoring the Ghost image as I had when I created it and I'm sure it was loading back then.......

And to rub it in I just did a search for msvcr71.dll
I've got 25 copies of it scattered around my drive. Just none of them are in the system folder!!!!