Hi,

I'm seeing a segmentation fault when running transcode on fedora 10.

uname -a
Linux 2.6.27.12-170.2.5.fc10.x86_64 #1 SMP Wed Jan 21 01:33:24 EST 2009
x86_64 x86_64 x86_64 GNU/Linux

I was using the latest shipped binaries for fedora 10, but downloaded the
latest 1.1.0 version and compiled this and tried it too. The debug content
is therefore for 1.1.0

The segfault is actually occuring in selinux. Having search the web, I
found this:

https://bugzilla.redhat.com/show_bug.cgi?id=484595

which is very similar to the failure I'm seeing. This is the command I ran,
although I tried xvid as well and saw a similar failure.

transcode -H 10 -a 0 -x vob,null -i
/home/jmr/dvdrip-data/battlestar-gallactica-season1-disk3/vob/012 -w 900,50
-F mpeg4 -b 128,0,2 --a52_drc_off -f 25.00  -Y 40,0,40,0 -B 36,26,8 -R 1 -y
ffmpeg,null -o /dev/null 
transcode v1.1.0 (C) 2001-2003 Thomas Oestreich, 2003-2009 Transcode Team
libdvdread: Using libdvdcss version 1.2.10 for DVD access
libdvdread: Couldn't find device name.
libdvdnav:DVDOpenFilePath:findDVDFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdnav:DVDOpenFilePath:findDVDFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
libdvdread: Using libdvdcss version 1.2.10 for DVD access
libdvdread: Couldn't find device name.
libdvdnav:DVDOpenFilePath:findDVDFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdnav:DVDOpenFilePath:findDVDFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
[transcode] V: auto-probing     | /home/jmr/dvdrip-data/a/vob/012 (OK)
[transcode] V: import format    | MPEG 2 program stream in  (module=vob)
[transcode] A: auto-probing     | /home/jmr/dvdrip-data/a/vob/012 (OK)
[transcode] A: import format    | AC3 in  (module=null)
[transcode] V: AV demux/sync    | (1) sync AV at initial MPEG sequence
[transcode] V: import frame     | 720x576  1.25:1  encoded @ 16:9
[transcode] V: new aspect ratio | 512x288  1.78:1 (-B)
[transcode] V: clip frame (->)  | 512x208
[transcode] V: bits/pixel       | 0.338
[transcode] V: decoding fps,frc | 25.000,0
[transcode] V: multi-pass       | (mode=1) writing data (pass 1) to
divx4.log
[transcode] V: video format     | YUV420 (4:2:0) aka I420
[transcode] A: import format    | 0x2000  AC3          [48000,16,2]
[transcode] A: export           | disabled
[transcode] V: encoding fps,frc | 25.000,3
[transcode] A: bytes per frame  | 7680 (7680.000000)
[transcode] A: adjustment       | 0...@1000
[transcode] V: IA32/AMD64 accel | sse3 sse2 sse 3dnowext 3dnow mmxext mmx
cmove asm 
[transcode] V: video buffer     | 10 @ 720x576 [0x2]
[transcode] A: audio buffer     | 10 @ 48000x2x16
[import_null.so] v0.2.0 (2002-01-19) (video) null | (audio) null
[import_vob.so] v0.6.1 (2006-05-02) (video) MPEG-2 | (audio) MPEG/AC3/PCM |
(subtitle)
[export_null.so] v0.1.2 (2001-08-17) (video) null | (audio) null
[export_ffmpeg.so] v0.3.18 (2008-11-29) (video) Lavc51.71.0 | (audio)
MPEG/AC3/PCM
[import_vob.so] tccat -i "/home/jmr/dvdrip-data/a/vob/012" -t vob -d 0 -S 0
| tcdemux -s 0x80 -x mpeg2 -S 0 -M 1 -d 0 | tcextract -t vob -a 0 -x mpeg2
-d 0 | tcdecode -x mpeg2 -d 0 -y yuv420p
[export_ffmpeg.so] Using FFMPEG codec 'mpeg4' (FourCC 'DIVX', MPEG4
compliant video).
[export_ffmpeg.so] No profile selected
[export_ffmpeg.so] warning: Error opening configuration file ./ffmpeg.cfg:
No such file or directory
[export_ffmpeg.so] Starting 1 thread(s)
[export_ffmpeg.so] Set display aspect ratio to input
[mpeg4 @ 0x7f9de0faac60]removing common factors from framerate
[decode_mpeg2.c] libmpeg2 acceleration: 3dnow
[decoder.c] cancelling the import threads: 0:00:48,  (15| 1| 4) 

Segmentation fault

gdb trace:

[encoder.c] unloading export modules
[New Thread 0x7fffe4c78950 (LWP 8405)]
[New Thread 0x7fffe4277950 (LWP 8406)]
[New Thread 0x7fffe3876950 (LWP 8407)]
[New Thread 0x7fffe2e6d950 (LWP 8409)]
[New Thread 0x7fffe2464950 (LWP 8410)]
[New Thread 0x7fffe1a01950 (LWP 8414)]
[Thread 0x7fffe2464950 (LWP 8410) exited]
[Thread 0x7fffe2e6d950 (LWP 8409) exited]
[Thread 0x7fffe4277950 (LWP 8406) exited]
[Thread 0x7fffe3876950 (LWP 8407) exited]
[Thread 0x7fffe1a01950 (LWP 8414) exited]

Program received signal SIGSEGV, Segmentation fault.
0x000000383a41288d in ?? () from /lib64/libselinux.so.1
Missing separate debuginfos, use: debuginfo-install
e2fsprogs-libs-1.41.3-2.fc10.x86_64 faac-1.25-7.fc10.x86_64
faad2-libs-2.6.1-6.fc10.x86_64 ffmpeg-libs-0.4.9-0.55.20080908.fc10.x86_64
freeglut-2.4.0-14.fc9.x86_64 glibc-2.9-3.x86_64
gpac-libs-0.4.5-0.5.20080217cvs.fc10.x86_64 gsm-1.0.12-6.fc9.x86_64
keyutils-libs-1.2-3.fc9.x86_64 krb5-libs-1.6.3-16.fc10.x86_64
lame-libs-3.98.2-2.fc10.x86_64 libICE-1.0.4-4.fc10.x86_64
libSM-1.1.0-2.fc10.x86_64 libX11-1.1.5-4.fc10.x86_64
libXau-1.0.4-1.fc10.x86_64 libXdmcp-1.0.2-6.fc10.x86_64
libXext-1.0.4-1.fc9.x86_64 libXxf86vm-1.0.2-1.fc10.x86_64
libgcc-4.3.2-7.x86_64 libmp4v2-1.5.0.1-6.fc10.x86_64
libogg-1.1.3-9.fc9.x86_64 liboil-0.3.14-1.fc9.x86_64
libselinux-2.0.78-1.fc10.x86_64 libstdc++-4.3.2-7.x86_64
libtheora-1.0rc1-2.fc10.x86_64 libvorbis-1.2.0-5.fc10.x86_64
libxcb-1.1.91-6.fc10.x86_64 mesa-libGLU-7.2-0.15.fc10.x86_64
openssl-0.9.8g-12.fc10.x86_64 schroedinger-1.0.5-3.fc10.x86_64
x264-libs-0.0.0-0.18.20080905.fc10.x86_64 xvidcore-1.2.1-1.fc10.x86_64
zlib-1.2.3-18.fc9.x86_64
(gdb) where
#0  0x000000383a41288d in ?? () from /lib64/libselinux.so.1
#1  0x000000383a40529f in selinux_file_context_cmp () from
/lib64/libselinux.so.1
#2  0x0000000000694ec8 in ?? ()
#3  0x0000000000000000 in ?? ()
(gdb) bt full
#0  0x000000383a41288d in ?? () from /lib64/libselinux.so.1
No symbol table info available.
#1  0x000000383a40529f in selinux_file_context_cmp () from
/lib64/libselinux.so.1
No symbol table info available.
#2  0x0000000000694ec8 in ?? ()
No symbol table info available.
#3  0x0000000000000000 in ?? ()
No symbol table info available.
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x383a41286d to 0x383a4128ad:
0x000000383a41286d <setfilecon+77>:     mov    0x18(%rsp),%ebx
0x000000383a412871 <setfilecon+81>:     add    $0x28,%rsp
0x000000383a412875 <setfilecon+85>:     retq   
0x000000383a412876:     nop    
0x000000383a412877:     nop    
0x000000383a412878:     nop    
0x000000383a412879:     nop    
0x000000383a41287a:     nop    
0x000000383a41287b:     nop    
0x000000383a41287c:     nop    
0x000000383a41287d:     nop    
0x000000383a41287e:     nop    
0x000000383a41287f:     nop    
0x000000383a412880:     push   %rbx
0x000000383a412881:     lea    0x208700(%rip),%rdi        # 0x383a61af88
<selinux_file_context_cmp+2186616>
0x000000383a412888:     callq  0x383a404d00 <__tls_get_a...@plt>
0x000000383a41288d:     mov    0x88(%rax),%rdi
0x000000383a412894:     mov    %rax,%rbx
0x000000383a412897:     callq  0x383a404c50 <f...@plt>
0x000000383a41289c:     mov    0x80(%rbx),%rdi
0x000000383a4128a3:     callq  0x383a404c50 <f...@plt>
0x000000383a4128a8:     mov    0x90(%rbx),%rdi
End of assembler dump.

Configure output:

checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking whether gcc and cc understand -c and -o together... yes
checking how to run the C preprocessor... gcc -E
checking for gawk... (cached) gawk
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking whether make sets $(MAKE)... (cached) yes
checking dependency style of gcc... gcc3
checking for gawk... /bin/gawk
checking for dlopen in -ldl... yes
checking for dlopen... yes
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking how to recognize dependent libraries... pass_all
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking the maximum length of command line arguments... 1966080
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for objdir... .libs
checking for ar... ar
checking for ranlib... ranlib
checking for strip... strip
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared
libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking for shl_load... no
checking for shl_load in -ldld... no
checking for dlopen... (cached) yes
checking whether a program can dlopen itself... yes
checking whether a statically linked program can dlopen itself... no
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
configure: creating libtool
appending configuration tag "CXX" to libtool
appending configuration tag "F77" to libtool
checking for standard header files... yes
checking endian.h usability... yes
checking endian.h presence... yes
checking for endian.h... yes
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking sys/mman.h usability... yes
checking sys/mman.h presence... yes
checking for sys/mman.h... yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking whether byte ordering is bigendian... no
checking __attribute__((...)) support... yes
checking __attribute__((aligned())) support... 64
checking stdlib.h usability... yes
checking stdlib.h presence... yes
checking for stdlib.h... yes
checking for GNU libc compatible malloc... yes
checking return type of signal handlers... void
checking for getopt_long_only... yes
checking for getpagesize... yes
checking for gettimeofday... yes
checking for mmap... yes
checking for strlcat... no
checking for strlcpy... no
checking for strtof... yes
checking for vsscanf... yes
checking for sysconf(_SC_PAGESIZE)... checking for special C compiler
options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking for _LARGEFILE_SOURCE value needed for large files... no
checking for pthreads in -lpthread... yes
checking for build architecture... AMD64 architecture (AMD64)
checking if $CC groks MMX inline assembly... yes
checking if $CC groks 3DNow inline assembly... yes
checking if $CC groks SSE inline assembly... yes
checking if $CC can handle SSE2 inline asm... yes
checking if $CC groks AltiVec inline assembly... no
checking if $CC groks AltiVec C extensions... no
checking if linker needs -framework vecLib... 
checking for pkg-config... /usr/bin/pkg-config
checking for X... libraries , headers 
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for XvQueryExtension in -lXv... yes
checking for XShmQueryExtension in -lX11... yes
checking X11/Xaw/Simple.h usability... yes
checking X11/Xaw/Simple.h presence... yes
checking for X11/Xaw/Simple.h... yes
checking for XpmFreeAttributes in -lXpm... yes
checking for gzopen in -lz... yes
checking for sin in -lm... yes
checking for pkgconfig support for libavcodec... yes
checking how to determine LIBAVCODEC_CFLAGS... pkg-config
checking libavcodec/avcodec.h usability... yes
checking libavcodec/avcodec.h presence... yes
checking for libavcodec/avcodec.h... yes
checking how to determine LIBAVCODEC_LIBS... pkg-config
checking for avcodec_thread_init in -lavcodec... yes
VER=51.71.0
BUILD=3360512
checking for pkgconfig support for libavformat... yes
checking how to determine LIBAVFORMAT_CFLAGS... pkg-config
checking libavformat/avformat.h usability... yes
checking libavformat/avformat.h presence... yes
checking for libavformat/avformat.h... yes
checking how to determine LIBAVFORMAT_LIBS... pkg-config
checking for av_register_all in -lavformat... yes
VER=52.22.1
BUILD=3413505
checking for pkgconfig support for libmpeg2... no
checking how to determine LIBMPEG2_CFLAGS... default
checking mpeg2dec/mpeg2.h usability... yes
checking mpeg2dec/mpeg2.h presence... yes
checking for mpeg2dec/mpeg2.h... yes
checking how to determine LIBMPEG2_LIBS... default
checking for mpeg2_init in -lmpeg2... yes
checking enable new or experimental components... no
checking enable deprecated components... no
checking for internal static framebuffer support... yes
checking whether v4l support is requested... no
checking whether bktr support is requested... no
checking whether sunau support is requested... no
checking whether OSS support is requested... no
checking whether ALSA support is requested... no
checking encore2.h usability... no
checking encore2.h presence... no
checking for encore2.h... no
checking whether libpostproc support is requested... no
checking whether freetype2 support is requested... no
checking whether lame support is requested... yes
checking for pkgconfig support for lame... no
checking how to determine LAME_CFLAGS... default
checking how to determine LAME_LIBS... default
checking for lame_init in -lmp3lame... yes
checking lame/lame.h usability... yes
checking lame/lame.h presence... yes
checking for lame/lame.h... yes
checking lame version... 398
checking whether xvid support is requested... no
checking whether x264 support is requested... no
checking whether ogg support is requested... no
checking whether vorbis support is requested... no
checking whether theora support is requested... no
checking whether libdvdread support is requested... yes
checking for pkgconfig support for libdvdread... no
checking how to determine LIBDVDREAD_CFLAGS... default
checking how to determine LIBDVDREAD_LIBS... default
checking for DVDOpen in -ldvdread... yes
checking dvdread/dvd_reader.h usability... yes
checking dvdread/dvd_reader.h presence... yes
checking for dvdread/dvd_reader.h... yes
checking whether pvm3 support is requested... no
checking whether libdv support is requested... no
checking whether libquicktime support is requested... no
checking whether lzo support is requested... no
checking whether a52 support is requested... no
checking whether faac support is requested... no
checking whether libxml2 support is requested... no
checking whether ibp and lors support is requested... no
checking whether mjpegtools support is requested... no
checking whether sdl support is requested... no
checking whether imagemagick support is requested... no
checking whether libjpegmmx support is requested... no
checking whether libjpeg support is requested... yes
checking for pkgconfig support for libjpeg... no
checking how to determine LIBJPEG_CFLAGS... default
checking jpeglib.h usability... yes
checking jpeglib.h presence... yes
checking for jpeglib.h... yes
checking how to determine LIBJPEG_LIBS... default
checking for jpeg_CreateCompress in -ljpeg... yes
checking whether bsdav support is requested... no
checking whether iconv support is requested... yes
checking for pkgconfig support for iconv... no
checking how to determine ICONV_CFLAGS... default
checking iconv.h usability... yes
checking iconv.h presence... yes
checking for iconv.h... yes
checking how to determine ICONV_LIBS... default
checking for iconv_open in -liconv... no
checking for libiconv_open in -liconv... no
checking for iconv_open in -lc... yes
checking for PV3 support... no
checking for NuppelVideo support... no
checking if gcc supports -Wall -Wstrict-prototypes -Wmissing-prototypes -g
-O2 flags... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating aclib/Makefile
config.status: creating avilib/Makefile
config.status: creating docs/Makefile
config.status: creating docs/html/Makefile
config.status: creating docs/man/Makefile
config.status: creating docs/pvm3/Makefile
config.status: creating docs/tech/Makefile
config.status: creating docs/tech/html/Makefile
config.status: creating encode/Makefile
config.status: creating export/Makefile
config.status: creating filter/Makefile
config.status: creating filter/divxkey/Makefile
config.status: creating filter/extsub/Makefile
config.status: creating filter/preview/Makefile
config.status: creating filter/subtitler/Makefile
config.status: creating filter/tomsmocomp/Makefile
config.status: creating filter/yuvdenoise/Makefile
config.status: creating filter/stabilize/Makefile
config.status: creating import/Makefile
config.status: creating import/nuv/Makefile
config.status: creating import/v4l/Makefile
config.status: creating multiplex/Makefile
config.status: creating libdldarwin/Makefile
config.status: creating libtc/Makefile
config.status: creating libtcaudio/Makefile
config.status: creating libtcvideo/Makefile
config.status: creating pvm3/Makefile
config.status: creating src/Makefile
config.status: creating testsuite/Makefile
config.status: creating tools/Makefile
config.status: creating transcode.spec
config.status: creating filter/parse_csv.awk
config.status: creating filter/filter_list.awk
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands

----------------------------------------
Summary for transcode 1.1.0:
----------------------------------------

core options
----------------------------------------
enable experimental code       no
enable deprecated code         no
static AV-frame buffering      yes
A52 default decoder            no

ffmpeg libraries
----------------------------------------
libavcodec  build              3360512
libavcodec  version            51.71.0
libavformat build              3413505
libavformat version            52.22.1

hardware support
----------------------------------------
v4l/v4l2                       no
ALSA                           no
OSS                            no
bktr                           no
sunau                          no

optional module support
----------------------------------------
PV3                            no
NuppelVideo                    no

optional package support
----------------------------------------
IBP (libxio)                   no
X11                            yes
    Xv      extension          yes
    Xshm    extension          yes
    Xaw     library            yes
    Xpm     library            yes

libmpeg2                       yes
libpostproc                    no
freetype2                      no
lame                           yes
xvid                           no
x264                           no
ogg                            no
vorbis                         no
theora                         no
libdvdread                     yes
pvm3                           no
libdv                          no
libquicktime                   no
lzo                            no
a52                            no
faac                           no
libxml2                        no
mjpegtools                     no
sdl                            no
imagemagick                    no
libjpeg                        yes
bsdav                          no
iconv                          yes

Is this the correct place for this query? Is there anything else I can add?

thanks.

Reply via email to