onixvid
23rd May 2007, 00:27
I started using VirtualDub about a month ago and only aggressively more recently. While I seem to have no problem transcoding audio (aac -> mp3) and some video (wmv -> wmv), I cannot seem to get ffdshow encoder to work for almost all its codecs. Perhaps you can help.
I have tried the latest dub build 1.7.0 and 1.7.2 and the latest stable in the 1.6.x chain. While all three crash, both of the 1.7.x's give more detailed error logs. The crashes seem independent of any particular avi.
Here is the log from 1.7.2:
VirtualDub crash report -- build 27700 (release)
--------------------------------------
Disassembly:
004744a0: 7209 jc 004744ab (VDDubProcessThread::ThreadRun+6bb)
004744a2: 008bcbe8f835 add [ebx+35f8e8cb], cl
004744a8: 0000 add [eax], al
004744aa: 8b4530 mov eax, [ebp+30h]
004744ad: 8b4d2c mov ecx, [ebp+2ch]
004744b0: 8b5d58 mov ebx, [ebp+58h]
004744b3: 8901 mov [ecx], eax
004744b5: 8b4544 mov eax, [ebp+44h]
004744b8: c645fc01 mov byte ptr [ebp-04h], 01h
004744bc: 03d8 add ebx, eax
004744be: 895d58 mov [ebp+58h], ebx
004744c1: e981fdffff jmp 00474247 (VDDubProcessThread::ThreadRun+457)
004744c6: 8b8e10010000 mov ecx, [esi+110]
004744cc: 85c9 test ecx, ecx
004744ce: 0f84f4f9ffff jz 00473ec8 (VDDubProcessThread::ThreadRun+d8)
004744d4: 8b5614 mov edx, [esi+14h]
004744d7: 8a422d mov al, [edx+2dh]
004744da: 388678010000 cmp [esi+178], al
004744e0: 0f84e2f9ffff jz 00473ec8 (VDDubProcessThread::ThreadRun+d8)
004744e6: 84c0 test al, al
004744e8: 888678010000 mov [esi+178], al
004744ee: 0f846c010000 jz 00474660 (_catch$?ThreadRun@VDDubProcessThread@@MAEXXZ$2+71)
004744f4: c6867a01000000 mov byte ptr [esi+17a], 00h
004744fb: c6867901000001 mov byte ptr [esi+179], 01h
00474502: 8b01 mov eax, [ecx]
00474504: 8b5008 mov edx, [eax+08h]
00474507: ffd2 call edx
00474509: 50 push eax
0047450a: 6a00 push 00h
0047450c: 894544 mov [ebp+44h], eax
0047450f: e87cea0f00 call 00572f90 (VDFindVideoDecompressor)
00474514: 8b8e74010000 mov ecx, [esi+174]
0047451a: 8dbe74010000 lea edi, [esi+174]
00474520: 83c408 add esp, 08h
00474523: 85c9 test ecx, ecx
00474525: 8bd8 mov ebx, eax
00474527: 7408 jz 00474531 (VDDubProcessThread::ThreadRun+741)
00474529: 8b01 mov eax, [ecx]
0047452b: 8b10 mov edx, [eax]
0047452d: 6a01 push 01h
0047452f: ffd2 call edx
00474531: 8bcb mov ecx, ebx
00474533: 891f mov [edi], ebx
00474535: 8b01 mov eax, [ecx] <-- FAULT
00474537: 8b5010 mov edx, [eax+10h]
0047453a: 6a00 push 00h
0047453c: ffd2 call edx
0047453e: 84c0 test al, al
00474540: 750e jnz 00474550 (VDDubProcessThread::ThreadRun+760)
00474542: 6a00 push 00h
00474544: 8bcf mov ecx, edi
00474546: e865e3ffff call 004728b0 (?$vdautoptr::(special))
0047454b: e9bf000000 jmp 0047460f (_catch$?ThreadRun@VDDubProcessThread@@MAEXXZ$2+20)
00474550: 8b0f mov ecx, [edi]
00474552: 8b01 mov eax, [ecx]
00474554: 8b501c mov edx, [eax+1ch]
00474557: c645fc06 mov byte ptr [ebp-04h], 06h
0047455b: ffd2 call edx
0047455d: 8d5e1c lea ebx, [esi+1ch]
00474560: 8bcb mov ecx, ebx
00474562: e8a0340000 call 00477a07 (VDLoopThrottle::BeginWait)
00474567: 8b8eec000000 mov ecx, [esi+ec]
0047456d: 8b01 mov eax, [ecx]
0047456f: 8b5014 mov edx, [eax+14h]
00474572: 6aff push 0ffh
00474574: 6a02 push 02h
00474576: ffd2 call edx
00474578: 8bcb mov ecx, ebx
0047457a: e823350000 call 00477aa2 (VDLoopThrottle::EndWait)
0047457f: 8b96e0000000 mov edx, [esi+e0]
00474585: 8b8eec000000 mov ecx, [esi+ec]
0047458b: 8b01 mov eax, [ecx]
0047458d: 8b402c mov eax, [eax+2ch]
00474590: 6a00 push 00h
00474592: 52 push edx
00474593: 68f0244700 push 004724f0 (?A0xb688862f::AsyncDecompressorSuccessfulCallback)
00474598: 6a02 push 02h
0047459a: ffd0 call eax
0047459c: 8b0f mov ecx, [edi]
0047459e: 8b11 mov edx, [ecx]
Built on KOS-MOS on Sat May 19 16:36:27 2007 using compiler version 1400
Windows 5.1 (Windows XP build 2600) []
EAX = 00000000
EBX = 00000000
ECX = 00000000
EDX = 00430001
EBP = 0421fec8
ESI = 01430808
EDI = 0143097c
ESP = 0421fe44
EIP = 00474535
EFLAGS = 00010246
FPUCW = ffff027f
FPUTW = ffffffff
Crash reason: Access Violation
Crash context:
An out-of-bounds memory access (access violation) occurred in module 'VirtualDub'... ...reading address 00000000... ...while running thread "Processing" (thread.cpp:151).
Pointer dumps:
EDX 00430001: 0f202474 3698256f ef0f005b 2d6f0fff 005b36a8 90356f0f 0f005b36 0080906f
ESI 01430808: 005ba04c 005ba050 00000278 00000868 005ba048 0012f9c8 01430adc 3f800000
EDI 01430978: 00000000 00000000 12000101 00000000 63643030 8000393c 12734b1a 00000000
ESP 0421fe40: 77f53810 00000100 01430808 01230c78 02440000 00000000 005e3298 01230c78
0421fe60: 0000ffff 77f92f86 77f92f8b 005e3298 01230c78 0000ffff 0012f740 77f60d0b
0421fe80: 0012f7b8 77fa7d40 77f53810 01430808 406d1388 00000000 00000000 77e99282
0421fea0: 00000004 77f5b714 77e76529 ffffffff fffffffe ffffffff 0421fe44 0421ff68
EBP 0421fec8: 00000100 01430808 01230c78 0421fec8 c0000139 00000001 77ec6520 77e62480
0421fee8: ffffffff 014309c0 005b9bc4 014309c0 005b9bc4 00000001 00000000 00000000
0421ff08: 004631dd 00b678e0 00bb24a8 00bb43e8 00bb43e8 00001f40 00001f40 01430808
0421ff28: 00000000 005d595c 00010000 0421ff74 0050b89f 01230c78 005b6bf8 00000000
Thread call stack:
00474535: VDDubProcessThread::ThreadRun()
77f92f86: ntdll!RtlNtStatusToDosError [77f50000+42f4e+38]
77f92f8b: ntdll!RtlNtStatusToDosError [77f50000+42f4e+3d]
77f60d0b: ntdll!LdrGetProcedureAddress [77f50000+10cf4+17]
77e99282: kernel32!RaiseException [77e60000+39231+51]
77f5b714: ntdll!NtDuplicateObject [77f50000+b708+c]
77e76529: kernel32!DuplicateHandle [77e60000+1646f+ba]
004631dd: VDThreadInitHandler()
0050b89f: VDThread::StaticThreadStart()
00589c48: _callthreadstartex()
00589ced: _threadstartex@4()
77e765da: kernel32!lstrcmpiW [77e60000+16542+98]
-- End of report
I have tried the latest dub build 1.7.0 and 1.7.2 and the latest stable in the 1.6.x chain. While all three crash, both of the 1.7.x's give more detailed error logs. The crashes seem independent of any particular avi.
Here is the log from 1.7.2:
VirtualDub crash report -- build 27700 (release)
--------------------------------------
Disassembly:
004744a0: 7209 jc 004744ab (VDDubProcessThread::ThreadRun+6bb)
004744a2: 008bcbe8f835 add [ebx+35f8e8cb], cl
004744a8: 0000 add [eax], al
004744aa: 8b4530 mov eax, [ebp+30h]
004744ad: 8b4d2c mov ecx, [ebp+2ch]
004744b0: 8b5d58 mov ebx, [ebp+58h]
004744b3: 8901 mov [ecx], eax
004744b5: 8b4544 mov eax, [ebp+44h]
004744b8: c645fc01 mov byte ptr [ebp-04h], 01h
004744bc: 03d8 add ebx, eax
004744be: 895d58 mov [ebp+58h], ebx
004744c1: e981fdffff jmp 00474247 (VDDubProcessThread::ThreadRun+457)
004744c6: 8b8e10010000 mov ecx, [esi+110]
004744cc: 85c9 test ecx, ecx
004744ce: 0f84f4f9ffff jz 00473ec8 (VDDubProcessThread::ThreadRun+d8)
004744d4: 8b5614 mov edx, [esi+14h]
004744d7: 8a422d mov al, [edx+2dh]
004744da: 388678010000 cmp [esi+178], al
004744e0: 0f84e2f9ffff jz 00473ec8 (VDDubProcessThread::ThreadRun+d8)
004744e6: 84c0 test al, al
004744e8: 888678010000 mov [esi+178], al
004744ee: 0f846c010000 jz 00474660 (_catch$?ThreadRun@VDDubProcessThread@@MAEXXZ$2+71)
004744f4: c6867a01000000 mov byte ptr [esi+17a], 00h
004744fb: c6867901000001 mov byte ptr [esi+179], 01h
00474502: 8b01 mov eax, [ecx]
00474504: 8b5008 mov edx, [eax+08h]
00474507: ffd2 call edx
00474509: 50 push eax
0047450a: 6a00 push 00h
0047450c: 894544 mov [ebp+44h], eax
0047450f: e87cea0f00 call 00572f90 (VDFindVideoDecompressor)
00474514: 8b8e74010000 mov ecx, [esi+174]
0047451a: 8dbe74010000 lea edi, [esi+174]
00474520: 83c408 add esp, 08h
00474523: 85c9 test ecx, ecx
00474525: 8bd8 mov ebx, eax
00474527: 7408 jz 00474531 (VDDubProcessThread::ThreadRun+741)
00474529: 8b01 mov eax, [ecx]
0047452b: 8b10 mov edx, [eax]
0047452d: 6a01 push 01h
0047452f: ffd2 call edx
00474531: 8bcb mov ecx, ebx
00474533: 891f mov [edi], ebx
00474535: 8b01 mov eax, [ecx] <-- FAULT
00474537: 8b5010 mov edx, [eax+10h]
0047453a: 6a00 push 00h
0047453c: ffd2 call edx
0047453e: 84c0 test al, al
00474540: 750e jnz 00474550 (VDDubProcessThread::ThreadRun+760)
00474542: 6a00 push 00h
00474544: 8bcf mov ecx, edi
00474546: e865e3ffff call 004728b0 (?$vdautoptr::(special))
0047454b: e9bf000000 jmp 0047460f (_catch$?ThreadRun@VDDubProcessThread@@MAEXXZ$2+20)
00474550: 8b0f mov ecx, [edi]
00474552: 8b01 mov eax, [ecx]
00474554: 8b501c mov edx, [eax+1ch]
00474557: c645fc06 mov byte ptr [ebp-04h], 06h
0047455b: ffd2 call edx
0047455d: 8d5e1c lea ebx, [esi+1ch]
00474560: 8bcb mov ecx, ebx
00474562: e8a0340000 call 00477a07 (VDLoopThrottle::BeginWait)
00474567: 8b8eec000000 mov ecx, [esi+ec]
0047456d: 8b01 mov eax, [ecx]
0047456f: 8b5014 mov edx, [eax+14h]
00474572: 6aff push 0ffh
00474574: 6a02 push 02h
00474576: ffd2 call edx
00474578: 8bcb mov ecx, ebx
0047457a: e823350000 call 00477aa2 (VDLoopThrottle::EndWait)
0047457f: 8b96e0000000 mov edx, [esi+e0]
00474585: 8b8eec000000 mov ecx, [esi+ec]
0047458b: 8b01 mov eax, [ecx]
0047458d: 8b402c mov eax, [eax+2ch]
00474590: 6a00 push 00h
00474592: 52 push edx
00474593: 68f0244700 push 004724f0 (?A0xb688862f::AsyncDecompressorSuccessfulCallback)
00474598: 6a02 push 02h
0047459a: ffd0 call eax
0047459c: 8b0f mov ecx, [edi]
0047459e: 8b11 mov edx, [ecx]
Built on KOS-MOS on Sat May 19 16:36:27 2007 using compiler version 1400
Windows 5.1 (Windows XP build 2600) []
EAX = 00000000
EBX = 00000000
ECX = 00000000
EDX = 00430001
EBP = 0421fec8
ESI = 01430808
EDI = 0143097c
ESP = 0421fe44
EIP = 00474535
EFLAGS = 00010246
FPUCW = ffff027f
FPUTW = ffffffff
Crash reason: Access Violation
Crash context:
An out-of-bounds memory access (access violation) occurred in module 'VirtualDub'... ...reading address 00000000... ...while running thread "Processing" (thread.cpp:151).
Pointer dumps:
EDX 00430001: 0f202474 3698256f ef0f005b 2d6f0fff 005b36a8 90356f0f 0f005b36 0080906f
ESI 01430808: 005ba04c 005ba050 00000278 00000868 005ba048 0012f9c8 01430adc 3f800000
EDI 01430978: 00000000 00000000 12000101 00000000 63643030 8000393c 12734b1a 00000000
ESP 0421fe40: 77f53810 00000100 01430808 01230c78 02440000 00000000 005e3298 01230c78
0421fe60: 0000ffff 77f92f86 77f92f8b 005e3298 01230c78 0000ffff 0012f740 77f60d0b
0421fe80: 0012f7b8 77fa7d40 77f53810 01430808 406d1388 00000000 00000000 77e99282
0421fea0: 00000004 77f5b714 77e76529 ffffffff fffffffe ffffffff 0421fe44 0421ff68
EBP 0421fec8: 00000100 01430808 01230c78 0421fec8 c0000139 00000001 77ec6520 77e62480
0421fee8: ffffffff 014309c0 005b9bc4 014309c0 005b9bc4 00000001 00000000 00000000
0421ff08: 004631dd 00b678e0 00bb24a8 00bb43e8 00bb43e8 00001f40 00001f40 01430808
0421ff28: 00000000 005d595c 00010000 0421ff74 0050b89f 01230c78 005b6bf8 00000000
Thread call stack:
00474535: VDDubProcessThread::ThreadRun()
77f92f86: ntdll!RtlNtStatusToDosError [77f50000+42f4e+38]
77f92f8b: ntdll!RtlNtStatusToDosError [77f50000+42f4e+3d]
77f60d0b: ntdll!LdrGetProcedureAddress [77f50000+10cf4+17]
77e99282: kernel32!RaiseException [77e60000+39231+51]
77f5b714: ntdll!NtDuplicateObject [77f50000+b708+c]
77e76529: kernel32!DuplicateHandle [77e60000+1646f+ba]
004631dd: VDThreadInitHandler()
0050b89f: VDThread::StaticThreadStart()
00589c48: _callthreadstartex()
00589ced: _threadstartex@4()
77e765da: kernel32!lstrcmpiW [77e60000+16542+98]
-- End of report