#43 0.6.0 persistent decoder segfaults

open
nobody
5
2014-12-10
2007-01-20
No

Dirac decoder 0.6.0 segfaults on any of the 24 Ronja Dirac videos at
http://ronja.twibright.com/3d
for example http://ronja.twibright.com/3d/ronja.drc
I tried to compile with libefence and the decoder runs just fine and produces
a seemingly correct video. In both cases the ./configure was called without
options.

Commandline: "dirac_decoder ronja see"

Compiled on i386 Pentium M OpenBSD 4.0 with g++ (GCC) 3.3.5
When I try on Linux i386, it doesn't crash. On Linux i386 with lefence it
crashes - see later for a stack trace and a log.

This is a stack trace of "dirac_decoder ronja see":

#0 0x1c0310fb in dirac::BandCodec::DecodeCoeffBlock(dirac::CodeBlock const&, dirac::PicArray&) (this=0x7fb47a00, code_block=@0x8874c000, out_data=@0x81e50280) at band_codec.cpp:358
ypos = 0
m_pypos = 0
xbeg = 72
ybeg = 0
xend = 144
yend = 72
xpbeg = 36
ypbeg = 0
qf_idx = -4
#1 0x1c030fb3 in dirac::BandCodec::DoWorkDecode(dirac::PicArray&) (this=0x0, out_data=@0x0) at arrays.h:364
i = -2115697536
block = (dirac::CodeBlock *) 0x81e50480
j = -2115698048
#2 0x7fb47a00 in ?? ()
No symbol table info available.
#3 0x3c004c08 in vtable for dirac::BandCodec ()
No symbol table info available.
#4 0x00000006 in ?? ()
No symbol table info available.
#5 0x81e50280 in ?? ()
No symbol table info available.
#6 0x00000001 in ?? ()
No symbol table info available.
#7 0x7fb47a00 in ?? ()
No symbol table info available.
#8 0x3c004c08 in vtable for dirac::BandCodec ()
No symbol table info available.
#9 0x7fb47a00 in ?? ()
No symbol table info available.
#10 0x1c02fe00 in dirac::CompDecompressor::Decompress(dirac::ComponentByteIO*, dirac::PicArray&) (this=0xd0290481, p_component_byteio=0x83b7c1b0, pic_data=@0x30) at comp_decompress.cpp:109
subband_byteio = {<dirac::ByteIO> = {_vptr$ByteIO = 0x8fc94e41, mp_stream = 0x95da600, m_current_byte = 254 'ţ', m_current_pos = -742542850, m_num_bytes = -340391434,
m_new_stream = 218}, m_subband = @0xdb07bbb6, m_band_data_length = -8417618}
b = 2142534144
bdecoder = (class dirac::BandCodec *) 0x7fb47a00
wtransform = <incomplete type>
Previous frame inner to this frame (corrupt stack?)

I tried also dirac_decoder -v -v -v -v -v ronja see
Sometimes it produces this:

SEQUENCE : major_ver=0 minor_version=1 profile=0 level=0 width=576 height=576 ch
roma=4:2:0 chroma_width=288 chroma_height=288 frame_rate=50/1, interlace=no topf
ieldfirst=yes

Decoding frame 0 in display order
Decoding component data ...
Decoding component data ...Segmentation fault

#0 0x1c03111b in dirac::BandCodec::DecodeCoeffBlock(dirac::CodeBlock const&, dirac::PicArray&) (
this=0x7f86da00, code_block=@0x81225000, out_data=@0x7c826140) at arrays.h:339
p_out_data = (ValueType *) 0x2b3f9c04
c_out_data_1 = (ValueType *) 0x0
c_out_data_2 = (ValueType *) 0xcf7e88b8
xbeg = 36
ybeg = 0
xend = 72
yend = 36
xpbeg = 18
ypbeg = 0
qf_idx = -4
#1 0x1c030fd3 in dirac::BandCodec::DoWorkDecode(dirac::PicArray&) (this=0x0, out_data=@0x0)
at band_codec.cpp:306
i = 2088919488
block = (dirac::CodeBlock *) 0x7c8261c0
j = 2088919360
#2 0x7c8261c0 in ?? ()
No symbol table info available.

And sometimes this:

clock@kestrel:~/creat/ronja/trunk/3d$ dirac_decoder -v -v -v -v -v ronja see
SEQUENCE : major_ver=0 minor_version=1 profile=0 level=0 width=576 height=576 ch
roma=4:2:0 chroma_width=288 chroma_height=288 frame_rate=50/1, interlace=no topf
ieldfirst=yes

Decoding frame 0 in display order
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 0 available
PICTURE_AVAIL : frame_type=Intra Ref Frame frame_num=0

Decoding frame 3 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...

Decoding frame 1 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 1 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=1

Decoding frame 2 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 2 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=2

Decoding frame 6 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 3 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=3

Decoding frame 4 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 4 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=4

Decoding frame 5 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 5 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=5

Decoding frame 9 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 6 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=6

Decoding frame 7 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 7 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=7

Decoding frame 8 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 8 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=8

Decoding frame 12 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 9 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=9

Decoding frame 10 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 10 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=10

Decoding frame 11 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 11 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=11

Decoding frame 15 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 12 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=12

Decoding frame 13 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 13 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=13

Decoding frame 14 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 14 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=14

Decoding frame 18 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 15 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=15

Decoding frame 16 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 16 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=16

Decoding frame 17 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 17 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=17

Decoding frame 21 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 18 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=18

Decoding frame 19 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 19 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=19

Decoding frame 20 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 20 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=20

Decoding frame 24 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 21 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=21

Decoding frame 22 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 22 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=22

Decoding frame 23 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 23 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=23

Decoding frame 27 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 24 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=24

Decoding frame 25 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 25 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=25

Decoding frame 26 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 26 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=26

Decoding frame 30 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 27 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=27

Decoding frame 28 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 28 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=28

Decoding frame 29 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 29 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=29

Decoding frame 33 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 30 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=30

Decoding frame 31 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 31 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=31

Decoding frame 32 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 32 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=32

Decoding frame 36 in display order
Decoding component data ...Segmentation fault

#0 0x1c03111b in dirac::BandCodec::DecodeCoeffBlock(dirac::CodeBlock const&, dirac::PicArray&) (
this=0x7dd2ea00, code_block=@0x869f7000, out_data=@0x7d4f9280) at arrays.h:339
p_out_data = (ValueType *) 0x23422c04
c_out_data_1 = (ValueType *) 0x0
c_out_data_2 = (ValueType *) 0xcf7ec2a8
xbeg = 72
ybeg = 0
xend = 144
yend = 72
xpbeg = 36
ypbeg = 0
qf_idx = -4
#1 0x1c030fd3 in dirac::BandCodec::DoWorkDecode(dirac::PicArray&) (this=0x0, out_data=@0x0)
at band_codec.cpp:306
i = 2102367488
block = (dirac::CodeBlock *) 0x7d4f9500
j = 2102366848
#2 0x7d4f9500 in ?? ()

On the Linux the decoder crashes when getting here:
[...]
Decoding frame 89 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 89 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=89

Decoding frame 93 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 90 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=90

Decoding frame 91 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 91 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=91

Decoding frame 92 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 92 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=92

Decoding frame 96 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 93 available
PICTURE_AVAIL : frame_type=Inter Ref Frame frame_num=93

Decoding frame 94 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
Frame 94 available
PICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=94

Decoding frame 95 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...
Decoding component data ...
FraPICTURE_AVAIL : frame_type=Inter Non-Ref Frame frame_num=95

Decoding frame 99 in display order
Decoding motion data ...
Decoding component data ...
Decoding component data ...Segmentation fault (core dumped)

Failed to read a valid object file image from memory.
Core was generated by `./dirac_decoder -v -v -v ronja see'.
Program terminated with signal 11, Segmentation fault.
Cannot access memory at address 0xb7f2e4d4
#0 0xb7d72a8c in ?? ()
(gdb) bt full
#0 0xb7d72a8c in ?? ()
No symbol table info available.
Cannot access memory at address 0xbf62cff8
me 95 available

Discussion


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks