Yes, it's definitely dying in xvid code, but could
transcode be using its API incorrectly? Here is my gdb run:
$ gdb -q
/home/alsnider/tst/build/bin/transcode
Using host libthread_db library
"/lib/libthread_db.so.1".
(gdb) run -H 10 -a 0 -x vob -i vob/001/ -w
1800,50 -b 192,0,0 -s 1.450 --a52_drc_off -f 24,1 -M 2 -Z 720x408 -R 2
-y xvid4 -m avi/001/tst-0.ogm -o avi/001/tst.ogm -q 2
Starting program:
/home/alsnider/tst/build/bin/transcode -H 10 -a 0 -x vob -i vob/001/ -w
1800,50 -b 192,0,0 -s 1.450 --a52_drc_off -f 24,1 -M 2 -Z 720x408 -R 2
-y xvid4 -m avi/001/tst-0.ogm -o avi/001/tst.ogm -q 2
[Thread debugging using libthread_db enabled]
[New Thread -1208404304 (LWP 23918)]
[New Thread -1208407136 (LWP 23921)]
transcode v1.0.2 (C) 2001-2003 Thomas Oestreich,
2003-2004 T. Bitterberg
[tcprobe] MPEG program stream (PS)
att0=201, att1=268
[transcode] (probe) suggested AV correction -D 0
(0 ms) | AV 0 ms | 0 ms
(probe.c) V magic=0x0, A magic=0x0, V
codec=0x10000, A codec=0x2000
(probe.c) V magic=, A magic=, V codec=MPEG-2, A
codec=AC3
[transcode] auto-probing source vob/001/ (ok)
[transcode] V: import format | MPEG-2
(V=vob|A=vob)
[transcode] V: AV demux/sync | (2) initial
MPEG sequence / enforce frame rate
[transcode] V: import frame | 720x480
1.50:1 encoded @ 16:9
[transcode] V: zoom | 720x408 1.76:1
(Lanczos3)
[transcode] V: bits/pixel | 0.256
[transcode] V: decoding fps,frc | 23.976,1
[transcode] V: multi-pass | (mode=2)
reading data (pass2) from divx4.log
[transcode] V: Y'CbCr | YV12/I420
[transcode] A: import format | 0x2000
AC3 [48000,16,2] 448 kbps
[transcode] A: export format | 0x55 MPEG
layer-3 [48000,16,2] 192 kbps
[transcode] V: encoding fps,frc | 23.976,1
[transcode] A: bytes per frame | 8008
(8008.000000)
[transcode] A: adjustment | [EMAIL PROTECTED]
[transcode] A: rescale stream | 1.450
[transcode] V: IA32/AMD64 accel | sse (sse
3dnowext 3dnow mmxext mmx asm C)
tc_memcpy: using sse for memcpy
[transcode] encoder delay = decode=40000
encode=40000 usec
[transcode] V: video buffer | 10 @ 720x480
[transcode] allocating 10 framebuffer (static)
loading audio import module
/home/alsnider/tst/build/lib/transcode/import_vob.so
loading video import module
/home/alsnider/tst/build/lib/transcode/import_vob.so
[import_vob.so] v0.6.0 (2003-10-02) (video)
MPEG-2 | (audio) MPEG/AC3/PCM | (subtitle)
Audio capability flag 0x2f | 0x1
Video capability flag 0x2f | 0x2
loading audio export module
/home/alsnider/tst/build/lib/transcode/export_xvid4.so
loading video export module
/home/alsnider/tst/build/lib/transcode/export_xvid4.so
[export_xvid4.so] v0.0.5 (2003-12-05) (video)
XviD 1.0.x series (aka API 4.0) | (audio) MPEG/AC3/PCM
(encoder.c) audio capability flag 0x21f | 0x1
(encoder.c) video capability flag 0x21f | 0x2
[transcode] starting 1 frame processing thread(s)
[New Thread -1246868576 (LWP 23923)]
[transcode] starting 1 frame processing thread(s)
[New Thread -1255261280 (LWP 23924)]
[import_vob.so] AC3->PCM
[import_vob.so] tccat -i "vob/001/" -t vob -d 3
-S 0 | tcdemux -a 0 -x ac3 -S 0 -M 2 -d 3 | tcextract -t vob -a 0 -x
ac3 -d 3 | tcdecode -x ac3 -d 3 -s 1.000000,1.000000,1.000000 -A 1
[import_vob.so] tccat -i "vob/001/" -t vob -d 3
-S 0 | tcdemux -s 0x80 -x mpeg2 -S 0 -M 2 -f 23.976024 -P
/tmp/fileCQRHJB -d 3 | tcextract -t vob -a 0 -x mpeg2 -d 3 | tcdecode
-x mpeg2 -d 3 -y yv12
(iodump.c) scanning directory "vob/001/"
(iodump.c) MPEG program stream (PS)
[packets.c] allocating 16384 framebuffer (static)
tc_memcpy: using sse for memcpy
[tcextract] (pid=23931) starting, doing mpeg2
(iodump.c) scanning directory "vob/001/"
(iodump.c) MPEG program stream (PS)
tc_memcpy: using sse for memcpy
[tcextract] (pid=23933) starting, doing ac3
[decode_mpeg2.c] libmpeg2 0.4.0b loop decoder
[decode_mpeg2.c] libmpeg2 acceleration: 3dnow
(clone.c) reading video frame sync data from
/tmp/fileCQRHJB
[New Thread -1265734752 (LWP 23936)]
[New Thread -1274127456 (LWP 23937)]
(decoder.c) audio thread id=-1274127456
[New Thread -1282520160 (LWP 23938)]
[export_xvid4.so] Trying to load shared lib
/home/alsnider/tst/build/lib/transcode/libxvidcore.so.4
[export_xvid4.so] Trying to load shared lib
libxvidcore.so.4
[export_xvid4.so] Loaded libxvidcore.so.4
[export_xvid4.so] Neither './xvid4.cfg' nor
'~/.transcode/xvid4.cfg'
[export_xvid4.so] found. Default settings will be
used instead.
[export_xvid4.so]
[export_xvid4.so] Feature settings
[export_xvid4.so]
----------------------------------------
[export_xvid4.so] quant_type = h263
[export_xvid4.so] motion = 6
[export_xvid4.so] chromame = 1
[export_xvid4.so] vhq = 1
[export_xvid4.so] max_bframes = 1
[export_xvid4.so] bquant_ratio = 150
[export_xvid4.so] bquant_offset = 100
[export_xvid4.so] bframe_threshold = 0
[export_xvid4.so] quarterpel = 0
[export_xvid4.so] gmc = 0
[export_xvid4.so] trellis = 0
[export_xvid4.so] packed = 0
[export_xvid4.so] closed_gop = 1
[export_xvid4.so] interlaced = 0
[export_xvid4.so] cartoon = 0
[export_xvid4.so] hqacpred = 1
[export_xvid4.so] frame_drop_ratio = 0
[export_xvid4.so] stats = 0
[export_xvid4.so] greyscale = 0
[export_xvid4.so] turbo = 0
[export_xvid4.so]
[export_xvid4.so] Quantizer settings
[export_xvid4.so]
----------------------------------------
[export_xvid4.so] min_iquant = 0
[export_xvid4.so] max_iquant = 0
[export_xvid4.so] min_pquant = 0
[export_xvid4.so] max_pquant = 0
[export_xvid4.so] min_bquant = 0
[export_xvid4.so] max_bquant = 0
[export_xvid4.so] #quant_intra_matrix =
[export_xvid4.so] #quant_inter_matrix =
[export_xvid4.so]
[export_xvid4.so] CBR settings
[export_xvid4.so]
----------------------------------------
[export_xvid4.so] reaction_delay_factor = 0
[export_xvid4.so] averaging_period = 0
[export_xvid4.so] buffer = 0
[export_xvid4.so]
[export_xvid4.so] VBR settings
[export_xvid4.so]
----------------------------------------
[export_xvid4.so] keyframe_boost = 0
[export_xvid4.so] curve_compression_high = 0
[export_xvid4.so] curve_compression_low = 0
[export_xvid4.so] overflow_control_strength = 0
[export_xvid4.so] max_overflow_improvement = 0
[export_xvid4.so] max_overflow_degradation = 0
[export_xvid4.so] kfreduction = 0
[export_xvid4.so] kfthreshold = 0
[export_xvid4.so] container_frame_overhead = 0
(aud_aux.c) Debug: Audio submodule in=0x1 out=0x55
Audio: using new version
Audio: using lame-3.96.1
(aud_aux.c) Debug: Lame config: PCM -> MP3
(aud_aux.c) Debug: bitrate :
192 kbit/s
(aud_aux.c) Debug: ouput samplerate:
48000 Hz
[export_xvid4.so] Using AVI output
(aud_aux.c) Debug: Sending audio output to
avi/001/tst-0.ogm
(decoder.c) video thread id=-1282520160
(seqinfo.c) open /tmp/fileCQRHJB for frame sync
information
[demuxer.c] (pid=23930) MPEG sequence start code
in packet 000000 for PU [0]
[demuxer.c] (pid=23930) processing PU [0], on at
PTS=0.2806 sec
[demuxer.c] (pid=23930) AV sync established for
PU [0] at PTS=0.2806 (0.0000)
[demuxer.c] AV fine-tuning: 64 ms
[demuxer.c] (pid=23928) MPEG sequence start code
in packet 000000 for PU [0]
[demuxer.c] (pid=23928) processing PU [0], on at
PTS=0.2806 sec
(demuxer.c) new initial PTS=0.280633
[demuxer.c] (pid=23928) AV sync established for
PU [0] at PTS=0.2806 (0.0000)
[demuxer.c] AV fine-tuning: 64 ms
[libac3] 5.1 Mode 48.0 KHz 448 kbps Complete Main
Audio Service
Program received signal SIGSEGV, Segmentation
fault.
[Switching to Thread -1208404304 (LWP 23918)]
0x432ff1a6 in xvid_plugin_psnr () from
/usr/lib/libxvidcore.so.4
(gdb) where
#0 0x432ff1a6 in xvid_plugin_psnr () from
/usr/lib/libxvidcore.so.4
#1 0x4330ece8 in ?? () from
/usr/lib/libxvidcore.so.4
#2 0x00000008 in ?? ()
#3 0x4330ece8 in ?? () from
/usr/lib/libxvidcore.so.4
#4 0x432ff140 in xvid_plugin_psnr () from
/usr/lib/libxvidcore.so.4
#5 0x432dd649 in xvid_plugin_psnr () from
/usr/lib/libxvidcore.so.4
#6 0xbfffd7c0 in ?? ()
#7 0xbfffdb40 in ?? ()
#8 0x00000002 in ?? ()
#9 0x00000008 in ?? ()
#10 0x080b4c40 in ?? ()
#11 0x00000000 in ?? ()
(gdb) bt full
#0 0x432ff1a6 in xvid_plugin_psnr () from
/usr/lib/libxvidcore.so.4
No symbol table info available.
#1 0x4330ece8 in ?? () from
/usr/lib/libxvidcore.so.4
No symbol table info available.
#2 0x00000008 in ?? ()
No symbol table info available.
#3 0x4330ece8 in ?? () from
/usr/lib/libxvidcore.so.4
No symbol table info available.
#4 0x432ff140 in xvid_plugin_psnr () from
/usr/lib/libxvidcore.so.4
No symbol table info available.
#5 0x432dd649 in xvid_plugin_psnr () from
/usr/lib/libxvidcore.so.4
No symbol table info available.
#6 0xbfffd7c0 in ?? ()
No symbol table info available.
#7 0xbfffdb40 in ?? ()
No symbol table info available.
#8 0x00000002 in ?? ()
No symbol table info available.
#9 0x00000008 in ?? ()
No symbol table info available.
#10 0x080b4c40 in ?? ()
No symbol table info available.
#11 0x00000000 in ?? ()
No symbol table info available.
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x432ff186 to
0x432ff1c6:
0x432ff186 <xvid_plugin_psnr+146950>: nop
0x432ff187 <xvid_plugin_psnr+146951>: nop
0x432ff188 <xvid_plugin_psnr+146952>:
movq 0x10(%ecx),%mm4
0x432ff18d <xvid_plugin_psnr+146957>:
pmaxsw %mm0,%mm1
0x432ff190 <xvid_plugin_psnr+146960>:
movq 0x18(%ecx),%mm6
0x432ff195 <xvid_plugin_psnr+146965>:
pmaxsw %mm2,%mm3
0x432ff198 <xvid_plugin_psnr+146968>:
psraw $0xf,%mm0
0x432ff19c <xvid_plugin_psnr+146972>:
psraw $0xf,%mm2
0x432ff1a0 <xvid_plugin_psnr+146976>:
pmulhw (%esi),%mm1
0x432ff1a3 <xvid_plugin_psnr+146979>:
pmulhw (%esi),%mm3
0x432ff1a6 <xvid_plugin_psnr+146982>:
movq (%ebx),%mm5
0x432ff1a9 <xvid_plugin_psnr+146985>:
movq (%ebx),%mm7
0x432ff1ac <xvid_plugin_psnr+146988>: nop
0x432ff1ad <xvid_plugin_psnr+146989>: nop
0x432ff1ae <xvid_plugin_psnr+146990>:
pxor %mm0,%mm1
0x432ff1b1 <xvid_plugin_psnr+146993>:
pxor %mm2,%mm3
0x432ff1b4 <xvid_plugin_psnr+146996>:
psubw %mm4,%mm5
0x432ff1b7 <xvid_plugin_psnr+146999>:
psubw %mm6,%mm7
0x432ff1ba <xvid_plugin_psnr+147002>:
psubw %mm0,%mm1
0x432ff1bd <xvid_plugin_psnr+147005>:
psubw %mm2,%mm3
0x432ff1c0 <xvid_plugin_psnr+147008>:
movq 0x20(%ecx),%mm0
0x432ff1c5 <xvid_plugin_psnr+147013>:
pmaxsw %mm4,%mm5
End of assembler dump.
(gdb) quit
The program is running. Exit anyway? (y or n) y
$ exit
Francesco Romani wrote:
On Tue, 26 Sep 2006 18:02:52 +0200 (CEST)
<[EMAIL PROTECTED]> wrote:
[...]
PS: backtrace not complete, but for anyone to get an idea..
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1211070800 (LWP 18065)]
0xa506f616 in quant_h263_intra_3dne () from /usr/lib/libxvidcore.so.4
(gdb) bt
#0 0xa506f616 in quant_h263_intra_3dne () from /usr/lib/libxvidcore.so.4
#1 0xa507e728 in ?? () from /usr/lib/libxvidcore.so.4
#2 0x00000008 in ?? ()
#3 0xa507e728 in ?? () from /usr/lib/libxvidcore.so.4
#4 0xa506f5b0 in dequant_h263_inter_sse2.endfunc () from
/usr/lib/libxvidcore.so.4#5 0xa504d639 in MBTransQuantIntra ()
from /usr/lib/libxvidcore.so.4 #6 0x08166ec0 in ?? ()
#7 0x00000000 in ?? ()
Yup, looks like an xvid problem.
|