Log in

View Full Version : Virtual Dub Crashes on Gokudo Episodes 08 and 17. Virtual Dub "Crash Reasons" listed


Miskat
7th February 2003, 15:41
Hi again everyone. :)

Just to clarify, I'm using GKnot v.0.27 :)

Alright then, off we go! I have encoded 16 of 18 episodes flawlessly with awesome quality now. These two are the -only- ones giving me this problem.

First: Episode 08!

VirtualDub Crash Reason: Acess Violation Error

VirtualDub Logfile included:

VirtualDub crash report -- build 14328 (release)
--------------------------------------

Disassembly:
0233dd80: 742c jz 0233ddae
0233dd82: 891520cd3f02 mov [023fcd20], edx
0233dd88: c745fcffffffff mov dword ptr [ebp-04], ffffffff
0233dd8f: 8bc2 mov eax, edx
0233dd91: ebc4 jmp 0233dd57
0233dd93: 8b45dc mov eax, [ebp-24]
0233dd96: 8d4870 lea ecx, [eax+70]
0233dd99: e872900000 call 02346e10
0233dd9e: c3 ret
0233dd9f: 8b45dc mov eax, [ebp-24]
0233dda2: 8d8818010000 lea ecx, [eax+118]
0233dda8: e8d38bffff call 02336980
0233ddad: c3 ret
0233ddae: 8b82dc000000 mov eax, [edx+dc]
0233ddb4: 50 push eax
0233ddb5: ff153c123d02 call dword ptr [023d123c]
0233ddbb: 8b45dc mov eax, [ebp-24]
0233ddbe: c780dc00000000 mov dword ptr [eax+dc], 00000000
000000
0233ddc8: c745fcffffffff mov dword ptr [ebp-04], ffffffff
0233ddcf: eb86 jmp 0233dd57
0233ddd1: b8909e4002 mov eax, 02409e90
0233ddd6: e9d2b20700 jmp 023b90ad
0233dddb: 90 nop
0233dddc: 90 nop
0233dddd: 90 nop
0233ddde: 90 nop
0233dddf: 90 nop
0233dde0: 55 push ebp
0233dde1: 8bec mov ebp, esp
0233dde3: 6aff push ff
0233dde5: 68f8de3302 push 0233def8
0233ddea: 64a100000000 mov eax, fs:[00000000]
0233ddf0: 50 push eax
0233ddf1: 64892500000000 mov fs:[00000000], esp
0233ddf8: 83ec1c sub esp, 1c
0233ddfb: 8965f0 mov [ebp-10], esp
0233ddfe: 897de0 mov [ebp-20], edi
0233de01: 8975e8 mov [ebp-18], esi
0233de04: 895de4 mov [ebp-1c], ebx
0233de07: 894ddc mov [ebp-24], ecx
0233de0a: c745fc00000000 mov dword ptr [ebp-04], 00000000
0233de11: c745fc01000000 mov dword ptr [ebp-04], 00000001
0233de18: 8b4ddc mov ecx, [ebp-24]
0233de1b: 8a8130060000 mov al, [ecx+630] <-- FAULT
0233de21: 84c0 test al, al
0233de23: 7416 jz 0233de3b
0233de25: 33c0 xor eax, eax
0233de27: 50 push eax
0233de28: 50 push eax
0233de29: 6a02 push 02
0233de2b: 51 push ecx
0233de2c: e8ff3f0400 call 02381e30
0233de31: 8b4ddc mov ecx, [ebp-24]
0233de34: c6813006000000 mov byte ptr [ecx+630], 00
0233de3b: 8b5168 mov edx, [ecx+68]
0233de3e: 85d2 test edx, edx
0233de40: 7412 jz 0233de54
0233de42: 33c0 xor eax, eax
0233de44: 50 push eax
0233de45: 50 push eax
0233de46: 6a01 push 01
0233de48: 52 push edx
0233de49: e872940000 call 023472c0
0233de4e: 83c410 add esp, 10
0233de51: 8b4ddc mov ecx, [ebp-24]
0233de54: 8b81d0000000 mov eax, [ecx+d0]
0233de5a: 85c0 test eax, eax
0233de5c: 7409 jz 0233de67
0233de5e: 8b10 mov edx, [eax]
0233de60: 50 push eax
0233de61: ff5208 call dword ptr [edx+08]
0233de64: 8b4ddc mov ecx, [ebp-24]
0233de67: 8b81d4000000 mov eax, [ecx+d4]
0233de6d: 85c0 test eax, eax
0233de6f: 7409 jz 0233de7a
0233de71: 8b10 mov edx, [eax]
0233de73: 50 push eax
0233de74: ff5208 call dword ptr [edx+08]
0233de77: 8b4ddc mov ecx, [ebp-24]
0233de7a: 8b81d8000000 mov eax, [ecx+d8]

Windows 5.1 (WinXP build 2600) []

EAX = 0321fd44
EBX = 73be9ca0
ECX = 024b3e68
EDX = 00000004
EBP = 0321fd04
DS:ESI = 0023:024b3e68
ES:EDI = 0023:00000000
SS:ESP = 0023:0321fcdc
CS:EIP = 001b:0233de1b
FS = 003b
GS = 0000
EFLAGS = 00010212

MM0 = e292eab000000000
MM1 = bf8acaaff1c83600
MM2 = 0000000000000000
MM3 = bf878244000000a8
MM4 = 000002d8bf80190e
MM5 = 8000000000000000
MM6 = 9000000000000000
MM7 = 8000000000000000
Crash reason: Access Violation

Thread 00000f10 (Main thread)
T:\projects\VirtualDub_old\main\Init.cpp(219)
T:\projects\VirtualDub_old\main\Init.cpp(238)
T:\projects\VirtualDub_old\main\Init.cpp(256)
T:\projects\VirtualDub_old\main\FilterSystem.cpp(427)
Thread 00000f14 (FastWriteStream)
Thread 00000f18 (Processing)
T:\projects\VirtualDub_old\main\Dub.cpp(3220)
T:\projects\VirtualDub_old\main\Dub.cpp(2835)
T:\projects\VirtualDub_old\main\Dub.cpp(2840)
T:\projects\VirtualDub_old\main\VideoSequenceCompressor.cpp(358)
T:\projects\VirtualDub_old\main\VideoSequenceCompressor.cpp(371)
T:\projects\VirtualDub_old\main\Dub.cpp(3022)
T:\projects\VirtualDub_old\main\Dub.cpp(3220)
T:\projects\VirtualDub_old\main\Dub.cpp(2835)
T:\projects\VirtualDub_old\main\Dub.cpp(2840)
T:\projects\VirtualDub_old\main\VideoSequenceCompressor.cpp(358)
T:\projects\VirtualDub_old\main\VideoSequenceCompressor.cpp(371)
T:\projects\VirtualDub_old\main\Dub.cpp(3022)
T:\projects\VirtualDub_old\main\Dub.cpp(3220)
T:\projects\VirtualDub_old\main\Dub.cpp(2835)
T:\projects\VirtualDub_old\main\Dub.cpp(2840)
T:\projects\VirtualDub_old\main\VideoSequenceCompressor.cpp(358)
Thread 00000f1c (I/O processing)


0233de1b: DivX!DriverProc [02330000+8420+59fb]
023389e2: DivX!DriverProc [02330000+8420+5c2]
023388a7: DivX!DriverProc [02330000+8420+487]
73bd175d: MSVFW32!ICSendMessage [73bd0000+1734+29]
73bd385b: MSVFW32!ICClose [73bd0000+3823+38]
73bd4299: MSVFW32!VideoForWindowsVersion [73bd0000+4266+33]
73bd424d: MSVFW32!DrawDibProfileDisplay [73bd0000+3f97+2b6]
77f7e3aa: ntdll!LdrInitializeThunk [77f50000+2e386+24]
77f6b1c6: ntdll!LdrShutdownProcess [77f50000+1b0af+117]
77e75c84: kernel32!IsValidLocale [77e60000+152b8+9cc]
0046b3ff: Dubber::WriteVideoFrame()
77e778b0: kernel32!WaitForSingleObjectEx [77e60000+17800+b0]
77e79d6a: kernel32!WaitForSingleObject [77e60000+19d5b+f]
0040bd10: AVIPipe::getReadBuffer()
0040bd2a: AVIPipe::getReadBuffer()
0046be13: Dubber::ProcessingThread()
0046bebf: Dubber::ProcessingThread()
77e75cc7: kernel32!ExitProcess [77e60000+15cb5+12]
0048950a: doexit()
00489463: _exit()
004841d8: _endthread()
77e802ed: kernel32!OpenConsoleW [77e60000+20235+b8]

-- End of report

(Not sure if that will help, but I figured it's best to include it. ;))

Next: Episode 17

Virtual Dub Crash Reason: Cannot Divide By Zero

No Virtual Dub Log available. (Sorry, I was tired this morning and accidentially closed it without thinking. However I did make sure to look at the reason.)

Comments on Episode 17: OK! The whole "Cannot Divide By Zero" thing makes sense to me. But seeing as to how I have no idea what the algorithm they are using is, I cannot do much about it. ;) I was kind of hoping one of you might be able to give me ideas on what might be causing this error as well as Epiode 18's error.

Thanks for reading all, and thank you in advance for any responses and suggestions! I'll make sure to thank you again personally later. :)

-Miskat Citnamor

manono
9th February 2003, 09:06
Hi-

It's probably not a VDub error, but an .avs error. What happens when you open the .avs in VDub and scroll around? Does it still crash? If so, you might post the .avs (and without all the lines beginning with "#").

VDub Mods-if you want to move this to the GKnot forum, it's OK with me.

Miskat
10th February 2003, 00:36
Okay, I tried opening VDub and scrolling through the .avs and had no error. The picture looked clear throughout the entire episode. Not sure if this presents anything immediately useful. I'm going to keep trying with different settings, see if anything good happens. :)

-Miskat Citnamor

[EDIT: It looks like I accidentially left out a peice of information that is probably important. These errors occur in the SECOND Pass, never the first.]

[EDIT AGAIN: Alright. It just finished another go at encoding episode 08 and for the first time it actually got all the way through. My options for the .avs on all the rest were: subtitles, field de-interlacing, and I used the "Simple (Fast and Good)" setting for re-sizing. When choosing the settings for the DiVX 5 compression I chose to use psychovisual enhancements set to "Normal." This time I turned the psy. enh. off completely. Viola! It goes all the way through the encoding. However, I noticed in GKnots Encoder window that there was a warning saying that my frame count was different than the settings said by -11k frames. When I ran the movie it was great up until about 75-80% into it when it started to repeat a segment of the movie over and over and over again.]

manono
10th February 2003, 12:10
Hi-

These errors occur in the SECOND Pass, never the first

Yep. That's important information. It means my first guess was wrong. The .avs has nothing to do with it. Have you run these second passes several times? And do they crash at different places? Random crashes can point to system instability-overheating, overclocking, that sort of thing.

there was a warning saying that my frame count was different than the settings said by -11k frames.

I'm assuming you're performing IVTC? And did you check the box in the Encoding Control Panel: "IVTC in .avs->Correct Frame Count", as you should have?

Another thing you might check. Open VDub and go Video-Compression, and check if you have DivX4 installed. DivX4 and DivX 5.02 can conflict. If you have DivX4 installed, you should get rid of it and reinstall DivX 5.02.

Miskat
11th February 2003, 00:54
Actually, I'm -not- preforming any IVTC operations. Sinply the field de-interlacing from GKnot. At first I was thinking system instability was the case as well. I suppose I should look into that much deeper, maybe add some more RAM (not sure if that will help at all.) Also, I actually never had DivX 4 installed. This is a semi-clean installation of Windows XP, so all I have installed are DivX 3 and 5 as well as XviD.

-Miskat

[EDIT: It just occured to me to mention that it was after the first pass (while the second pass was running) that I noticed the missing frames in GKnots Encoder tab window. Not sure how important that is....]

manono
12th February 2003, 07:33
Hi-

I've been delaying answering, as I'm kind of stumped. You might run Prime95 overnight to test the CPU for stability. You might run Mem86 to test the memory. You might run the passes with the computer case cover off and a fan pointing in to test for an overheating problem. You might open the analyze.log and get the average quant from near the top, and then run a 1-pass quality based encode at about the same quant directly in VDub and see if you get results. Perhaps someone else has an idea. Good Luck.