Printable Version of Topic
Click here to view this topic in its original format
Unofficial VirtualDub Support Forums > Testing / Bug Reports > Crash On Segmented Output


Posted by: hamsterer Sep 16 2003, 02:56 PM
hi.

i tried to create .mkv and .ogm containing

video 01: xvid vbr 2pass
audio 01: ogg vbr q4, language 1
audio 02: ogg vbr q4, language 2
audio 03: mp3 cbr, language 1
subtitle 01: srt, language 1 (hearing impaired)
subtitle 02: srt, language 2
- all set to direct stream copy

i'm using vdubmod 1.5.4.1 on win2k with sp2

it's a 2,5 hour movie encoded as 2cd rip, so i wanted to use segmented output with 700mb segments, because splitting at half of the movie time results in 2 very different file sizes for cd1 and cd2. unfortunately, segmented output gives me a crash every time i try it. i tried ogm and mkv, with the mp3, without it, with and without subs etc. but i can't get it to work. as a workaround i used the edit function and saved unsegmented a few times until i got 2x 700mb files wink.gif but it would be nice if this could be fixed in the future (or someone would tell me what i do wrong).
here is one of the crash logs:

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

Disassembly:
004dd180: 6bd21c imul edx, edx, 1c
004dd183: 8d4c0a0c lea ecx, [edx+ecx+0c]
004dd187: e9d6000000 jmp OGMReadStream::Read+792 (004dd262)
004dd18c: 8b4508 mov eax, [ebp+08]
004dd18f: 81780804020000 cmp dword ptr [eax+08], 00000204
004dd196: 8b36 mov esi, [esi]
004dd198: 897c2410 mov [esp+10], edi
004dd19c: 8b7c2434 mov edi, [esp+34]
004dd1a0: 752f jnz OGMReadStream::Read+701 (004dd1d1)
004dd1a2: 8b859c000000 mov eax, [ebp+9c]
004dd1a8: 8bc8 mov ecx, eax
004dd1aa: 8bd1 mov edx, ecx
004dd1ac: c1e902 shr ecx, 02
004dd1af: f3a5 rep movsd
004dd1b1: 8bca mov ecx, edx
004dd1b3: 8b5560 mov edx, [ebp+60]
004dd1b6: 8b5214 mov edx, [edx+14]
004dd1b9: 83e103 and ecx, 03
004dd1bc: f3a4 rep movsb
004dd1be: 33c9 xor ecx, ecx
004dd1c0: 8acb mov cl, bl
004dd1c2: 8b0c8a mov ecx, [edx+ecx*4]
004dd1c5: 894c2438 mov [esp+38], ecx
004dd1c9: 8b4c2430 mov ecx, [esp+30]
004dd1cd: 03c8 add ecx, eax
004dd1cf: eb45 jmp OGMReadStream::Read+746 (004dd216)
004dd1d1: 0fb60e movzx ecx, byte ptr [esi]
004dd1d4: 8b959c000000 mov edx, [ebp+9c]
004dd1da: 8bc1 mov eax, ecx
004dd1dc: c1e906 shr ecx, 06
004dd1df: 83e002 and eax, 02
004dd1e2: d1e0 shl eax, 1
004dd1e4: 0bc1 or eax, ecx
004dd1e6: 2bd0 sub edx, eax
004dd1e8: 8d740601 lea esi, [esi+eax+01]
004dd1ec: 8d4aff lea ecx, [edx-01]
004dd1ef: 8bc1 mov eax, ecx
004dd1f1: c1e902 shr ecx, 02
004dd1f4: f3a5 rep movsd
004dd1f6: 8bc8 mov ecx, eax
004dd1f8: 8b4560 mov eax, [ebp+60]
004dd1fb: 8b4014 mov eax, [eax+14]
004dd1fe: 83e103 and ecx, 03
004dd201: f3a4 rep movsb
004dd203: 33c9 xor ecx, ecx
004dd205: 8acb mov cl, bl
004dd207: 8b0c88 mov ecx, [eax+ecx*4] <-- FAULT
004dd20a: 8b442430 mov eax, [esp+30]
004dd20e: 894c2438 mov [esp+38], ecx
004dd212: 8d4c10ff lea ecx, [eax+edx-01]
004dd216: 8b442438 mov eax, [esp+38]
004dd21a: 85c0 test eax, eax
004dd21c: 894c2430 mov [esp+30], ecx
004dd220: 0f8443ffffff jz OGMReadStream::Read+699 (004dd169)
004dd226: 8b44243c mov eax, [esp+3c]
004dd22a: 85c0 test eax, eax
004dd22c: 7406 jz OGMReadStream::Read+764 (004dd234)
004dd22e: 8b542430 mov edx, [esp+30]
004dd232: 8910 mov [eax], edx
004dd234: 8b4c2440 mov ecx, [esp+40]
004dd238: 85c9 test ecx, ecx
004dd23a: 0f840bf9ffff jz OGMReadStream::Read+7b (004dcb4b)
004dd240: 8b442438 mov eax, [esp+38]
004dd244: 8b542418 mov edx, [esp+18]
004dd248: 5f pop edi
004dd249: 5e pop esi
004dd24a: 2bc2 sub eax, edx
004dd24c: 5d pop ebp
004dd24d: 8901 mov [ecx], eax
004dd24f: 33c0 xor eax, eax
004dd251: 5b pop ebx
004dd252: 83c418 add esp, 18
004dd255: c21800 ret 0018
004dd258: 8b4904 mov ecx, [ecx+04]
004dd25b: 85c9 test ecx, ecx
004dd25d: 74c7 jz OGMReadStream::Read+756 (004dd226)
004dd25f: 83c10c add ecx, 0c
004dd262: 85c9 test ecx, ecx
004dd264: 74c0 jz OGMReadStream::Read+756 (004dd226)
004dd266: 8b4d40 mov ecx, [ebp+40]
004dd269: 8a4544 mov al, [ebp+44]
004dd26c: 3a4108 cmp al, [ecx+08]
004dd26f: 7307 jnc OGMReadStream::Read+7a8 (004dd278)
004dd271: fec0 inc al
004dd273: 884544 mov [ebp+44], al
004dd276: eb0a jmp OGMReadStream::Read+7b2 (004dd282)
004dd278: 8b4104 mov eax, [ecx+04]
004dd27b: c6454400 mov byte ptr [ebp+44], 00
004dd27f: 89 db 89

Windows 5.0 (Windows 2000 build 2195) [Service Pack 2]

EAX = 00000000
EBX = 00b42600
ECX = 00000000
EDX = 000056c2
EBP = 02fde278
DS:ESI = 0023:020a12ca
ES:EDI = 0023:081c56c1
SS:ESP = 0023:05e3fe08
CS:EIP = 001b:004dd207
FS = 0038
GS = 0000
EFLAGS = 00010246
FPUCW = ffff027f
FPUTW = ffffffff

MM0 = 0000000000000000
MM1 = 0000000000000000
MM2 = 0000000000000000
MM3 = 0000000000000000
MM4 = 0000000000000000
MM5 = 0000000000000000
MM6 = d782600000000000
MM7 = b800000000000000

Crash reason: Access Violation

Crash context:
An out-of-bounds memory access (access violation) occurred in module 'VirtualDubMod'...

...while running thread "Dub-I/O" (thread.cpp:105).

Thread traces:

Thread 000008dc (Main thread)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\Init.cpp(320)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\Init.cpp(350)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\Init.cpp(368)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\Init.cpp(431)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\Main.cpp(307)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\Main.cpp(346)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\VideoSource.cpp(617)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\VideoSource.cpp(645)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\Main.cpp(660)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\VideoSource.cpp(1807)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\VideoSource.cpp(1828)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\Main.cpp(666)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\Main.cpp(683)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\FilterSystem.cpp(424)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\Main.cpp(721)
C:\Dvpt\VDub_1.5.x\VirtualDubMod15\VirtualDub\source\FilterSystem.cpp(560)
Thread 00000744 (Processing)
Thread 0000080c (Dub-I/O)

Thread call stack:004dd207: OGMReadStream::Read()
0041e992: VideoSourceAVI::_read()
0047c1f2: DubSource::read()
00473061: VDDubIOThread::ReadVideoFrame()
00473256: VDDubIOThread::MainAddVideoFrame()
00472d07: VDDubIOThread::ThreadRun()
0046ef05: VDThreadInitHandler()
005175b9: VDThread::StaticThreadStart()
0054f4ca: _threadstartex@4()
77e7758a: KERNEL32!SetFilePointer [77e70000+7400+18a]

-- End of report

Posted by: hamsterer Sep 16 2003, 03:24 PM
seems i found the solution myself: the videostream has already been in ogm container when i tried to mux video + audio + subtitle streams -> crash. when i save the videostream only as avi first, muxing avi+audio+subs into ogm works fine with segmented output.

Powered by Invision Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)