[x264-devel] [Tonda Míšek <tonda.misek at post.cz>] Little compressibility test

System administration admin at via.ecp.fr
Fri Jun 24 18:02:18 CEST 2005


 The deleted attachment is at:
    <http://www.videolan.org/~admin/20050624-videolan/Entering_Doors.7z>


----- Forwarded message from Tonda Míšek <tonda.misek at post.cz> -----

From: Tonda Míšek <tonda.misek at post.cz>
Date: Fri, 24 Jun 2005 09:22:01 +0200
To: x264-devel at videolan.org
Subject: Little compressibility test
User-Agent: Mozilla Thunderbird 1.0.2 (Windows/20050317)
X-Spam-Status: No, score=-1.6 required=5.0 tests=DNS_FROM_RFC_ABUSE,
	DNS_FROM_RFC_POST,FORGED_RCVD_HELO,IN_REP_TO,RCVD_IN_ORBS 
	autolearn=failed version=3.0.3

Hi all,
I trited to compress software demostration created by recording of the 
computer screen.
(It is not my video, I found it on the internet.)
The source is in MS Video 1 format:
http://www.designautomate.com/Videos/Entering%20Doors.avi
It is attached compressed by 7-zip to 109kB.

I used x264-270-install.exe from http://x264.nl/, settings are in the 
image x264.png. I used VirtualDub 1.6.7 with internal resize (bicubic) 
filter to 1008*736.

Q0 - 2 389 738
Q1 - crash in frame 302
Q2 - 3 685 674
Q3 - 3 691 188
Q4 - 3 568 094
Q5 - 3 437 656

The results:
1. Lossless mode is better then lossy for this type of video.
2. It crash for Q1. VirtualDub message (see also crashinfo.txt):
An integer division by zero occurred in module 'x264vfw'...
...while compressing frame 302 from 04400020 to 02d40020 using codec 
"x264 - H264/AVC encoder" (VideoSequenceCompressor.cpp:618)...
...while running thread "Processing" (thread.cpp:150).

TonyMi


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

Disassembly:
0274be60: ff              db     0ffh
0274be61: ff85c97440b9    inc    dword ptr [ebp-46bf8b37]
0274be67: 0900            or     [eax], eax
0274be69: 0000            add    [eax], al
0274be6b: b801000000      mov    eax, 00000001
0274be70: ba08000000      mov    edx, 00000008
0274be75: 894c2470        mov    [esp+70h], ecx
0274be79: 8d4c247c        lea    ecx, [esp+7ch]
0274be7d: 89442474        mov    [esp+74h], eax
0274be81: b803000000      mov    eax, 00000003
0274be86: 89542478        mov    [esp+78h], edx
0274be8a: e97efdffff      jmp    0274bc0d
0274be8f: ba0b000000      mov    edx, 0000000b
0274be94: 8d4c2474        lea    ecx, [esp+74h]
0274be98: b801000000      mov    eax, 00000001
0274be9d: 89542470        mov    [esp+70h], edx
0274bea1: e900fbffff      jmp    0274b9a6
0274bea6: 85f6            test   esi, esi
0274bea8: 0f84ad000000    jz     0274bf5b
0274beae: b90a000000      mov    ecx, 0000000a
0274beb3: 31c0            xor    eax, eax
0274beb5: ba02000000      mov    edx, 00000002
0274beba: 894c2470        mov    [esp+70h], ecx
0274bebe: 8d4c2478        lea    ecx, [esp+78h]
0274bec2: 89442474        mov    [esp+74h], eax
0274bec6: 8954246c        mov    [esp+6ch], edx
0274beca: e942fdffff      jmp    0274bc11
0274becf: c1a424c0000000  shl    dword ptr [esp+c0], 08h
          08              
0274bed7: 31d2            xor    edx, edx
0274bed9: 8b8424c0000000  mov    eax, [esp+c0]
0274bee0: f77318          div    eax, dword ptr [ebx+18h]      <-- FAULT
0274bee3: 89da            mov    edx, ebx
0274bee5: 40              inc    eax
0274bee6: 89442454        mov    [esp+54h], eax
0274beea: 89e8            mov    eax, ebp
0274beec: e83ff6ffff      call   0274b530
0274bef1: 8b954c4e0000    mov    edx, [ebp+4e4c]
0274bef7: 85d2            test   edx, edx
0274bef9: 0f8582000000    jnz    0274bf81
0274beff: 8b5c2468        mov    ebx, [esp+68h]
0274bf03: 8b431c          mov    eax, [ebx+1ch]
0274bf06: 3b44244c        cmp    eax, [esp+4ch]
0274bf0a: 0f8cc2000000    jl     0274bfd2
0274bf10: 8b5c2454        mov    ebx, [esp+54h]
0274bf14: 8b7c2468        mov    edi, [esp+68h]
0274bf18: 0fafc3          imul   eax, ebx
0274bf1b: c1f808          sar    eax, 08h
0274bf1e: 89471c          mov    [edi+1ch], eax
0274bf21: e987f9ffff      jmp    0274b8ad
0274bf26: 8b8034010000    mov    eax, [eax+134]
0274bf2c: 89442464        mov    [esp+64h], eax
0274bf30: e942f8ffff      jmp    0274b777
0274bf35: 83c203          add    edx, 03h
0274bf38: e970f8ffff      jmp    0274b7ad
0274bf3d: 83bdac2b000001  cmp    dword ptr [ebp+2bac], 01h
0274bf44: 0f854cfeffff    jnz    0274bd96
0274bf4a: 8b5c2468        mov    ebx, [esp+68h]
0274bf4e: 8b33            mov    esi, [ebx]
0274bf50: 8d3cf6          lea    edi, [esi+esi*8]
0274bf53: 017b24          add    [ebx+24h], edi
0274bf56: e93bfeffff      jmp    0274bd96
0274bf5b: ba0b000000      mov    edx, 0000000b

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

EAX = 00000300
EBX = 04a2d90c
ECX = 00000001
EDX = 00000000
EBP = 00347910
ESI = 00000001
EDI = 000025e4
ESP = 04a2d65c
EIP = 0274bee0
EFLAGS = 00010246
FPUCW = ffff027f
FPUTW = ffffaaaa

Crash reason: Integer Divide-by-Zero

Crash context:
An integer division by zero occurred in module 'x264vfw'...

...while compressing frame 302 from 04400020 to 02d40020 using codec "x264 - H264/AVC encoder" (VideoSequenceCompressor.cpp:618)...

...while running thread "Processing" (thread.cpp:150).

Pointer dumps:

EBX   04a2d908: 00000000 00000001 00000001 00000001 038fa790 00000001 00000000 00000000
ESP   04a2d658: 0012f9c0 0392e330 00000430 032ae330 00000430 00000001 00000001 00000000
      04a2d678: 0000001d 00000000 00000000 00000016 00000000 00000000 00000013 00000000
      04a2d698: 00000000 00000010 00000000 00000000 0000000a 00000000 00000000 0392e330
      04a2d6b8: 032ae330 00000430 00000133 04a2d90c 00000004 00000000 00000001 00000002
EBP   00347910: 0000000f 00000001 000003f0 000002e0 00000001 00000028 00000000 00000000
      00347930: 000f4240 00004e20 00000001 000000fa 00000019 00000028 00000000 00000001
      00347950: 00000000 00000000 00000001 00000000 00000000 00000001 00000000 00000000
      00347970: 00000000 10101010 10101010 10101010 10101010 10101010 10101010 10101010

Thread call stack:
0274bee0: x264vfw!Configure [02730000+59a0+16540]
0275129c: x264vfw!Configure [02730000+59a0+1b8fc]
0274f69e: x264vfw!Configure [02730000+59a0+19cfe]
0273812d: x264vfw!Configure [02730000+59a0+278d]
0273aa3e: x264vfw!Configure [02730000+59a0+509e]
02731c33: x264vfw!00001c33
0273597c: x264vfw!DriverProc [02730000+5500+47c]
77f82a8c: ntdll!RtlExtendedMagicDivide [77f80000+2937+155]
77fcc3d5: ntdll!RtlAllocateHeap [77f80000+4c0ef+2e6]
77f82a8c: ntdll!RtlExtendedMagicDivide [77f80000+2937+155]
77fcc3d5: ntdll!RtlAllocateHeap [77f80000+4c0ef+2e6]
77fcc4c9: ntdll!RtlAllocateHeap [77f80000+4c0ef+3da]
77fcc4e0: ntdll!RtlAllocateHeap [77f80000+4c0ef+3f1]
004fc5f2: VDResamplerSeparableCubicRowStageMMX::Process()
004fc735: VDResamplerSeparableCubicColStageSSE2::Process()
004fb527: VDResamplerSeparableStage::ProcessComplex()
6a8f17f8: MSVFW32!ICSendMessage [6a8f0000+17c4+34]
6a8f4eac: MSVFW32!ICCompress [6a8f0000+4e4b+61]
004a7c95: VideoSequenceCompressor::PackFrameInternal()
004a79a6: VideoSequenceCompressor::packFrame()
004f7535: VDPixmapBltFast()
0047add7: Dubber::WriteVideoFrame()
0047a7d8: Dubber::WriteVideoFrame()
0047b423: Dubber::ThreadRun()
77f8309f: ntdll!RtlUnicodeStringToAnsiString [77f80000+3040+5f]
004d4a0c: VDThread::StaticThreadStart()
00517fef: _threadstartex at 4()
7c57b388: KERNEL32!lstrcmpiW [7c570000+b2d1+b7]

-- End of report



----- End forwarded message -----

-- 
System administration <admin at via.ecp.fr>
VIA, Ecole Centrale Paris, France

-- 
This is the x264-devel mailing-list
To unsubscribe, go to: http://developers.videolan.org/lists.html



More information about the x264-devel mailing list