From owner-freebsd-multimedia@FreeBSD.ORG Mon Jun 6 14:03:48 2005 Return-Path: X-Original-To: FreeBSD-multimedia@FreeBSD.org Delivered-To: FreeBSD-multimedia@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0025816A41C for ; Mon, 6 Jun 2005 14:03:47 +0000 (GMT) (envelope-from freebsd@fadesa.es) Received: from fuego.fadesa.es (fuego.fadesa.es [195.55.55.9]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4196F43D53 for ; Mon, 6 Jun 2005 14:03:46 +0000 (GMT) (envelope-from freebsd@fadesa.es) Received: (from root@localhost) by fuego.fadesa.es (8.9.3p2/8.8.8) id QAA07355 for ; Mon, 6 Jun 2005 16:06:18 +0200 Received: from tierra.fadesa.es(195.55.55.7) by fuego.fadesa.es Mon, 6 Jun 05 16:06:04 +0200 Received: from fadesa.es (filemon.fadesa.es [195.55.55.6] (may be forged)) by tierra.fadesa.es (8.9.3p2/8.8.8) with ESMTP id QAA12340 for ; Mon, 6 Jun 2005 16:03:20 +0200 Sender: fan@fadesa.es Message-ID: <42A457A7.95A86273@fadesa.es> Date: Mon, 06 Jun 2005 16:03:19 +0200 From: "=?iso-8859-15?Q?Jos=E9?= M. =?iso-8859-15?Q?Fandi=F1o?=" Organization: Inmobiliaria FADESA X-Mailer: Mozilla 4.8 [en] (X11; U; Linux 2.4.30-ow1 i686) X-Accept-Language: gl, en, es MIME-Version: 1.0 To: FreeBSD-multimedia@FreeBSD.org Content-Type: text/plain; charset=iso-8859-15 Content-Transfer-Encoding: 7bit X-Logged: Logged by tierra.fadesa.es as QAA12340 at Mon Jun 6 16:03:20 2005 Cc: Subject: debugging transcode X-BeenThere: freebsd-multimedia@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: freebsd@fadesa.es List-Id: Multimedia discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Jun 2005 14:03:48 -0000 Hello, I was trying to convert a nuppelvideo stream to a more usable format, but transcode causes a segfault whith it. Running several tests it seems a problem with the audio processing of nuv files because "-x nuv,null" works and "-x nuv" doesn't. It's FreeBSD 5.4-RELEASE and transcode 1.0.0b3 from ports. > tcprobe -i dtv.nuv [tcprobe] NuppelVideo stream [tcprobe] summary for dtv.nuv, (*) = not default, 0 = not detected import frame size: -g 768x576 [720x576] (*) frame rate: -f 25.000 [25.000] frc=0 audio track: -a 0 [0] -e 44100,16,2 [48000,16,2] -n 0x1 [0x2000] (*) I was told by the transcode developers to get the cause of the segfault, since I'm not a programmer it's a little hard to me debug this. Until now I was able to get some stuff: > gdb /usr/local/bin/transcode ./transcode.core GNU gdb 6.1.1 [FreeBSD] Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-marcel-freebsd"... Core was generated by `transcode'. Program terminated with signal 11, Segmentation fault. Reading symbols from /usr/local/lib/libiconv.so.3...done. Loaded symbols for /usr/local/lib/libiconv.so.3 Reading symbols from /lib/libm.so.3...done. Loaded symbols for /lib/libm.so.3 Reading symbols from /lib/libz.so.2...done. Loaded symbols for /lib/libz.so.2 Reading symbols from /usr/local/lib/libxml2.so.5...done. Loaded symbols for /usr/local/lib/libxml2.so.5 Reading symbols from /usr/lib/libpthread.so.1...done. Loaded symbols for /usr/lib/libpthread.so.1 Reading symbols from /lib/libc.so.5...done. Loaded symbols for /lib/libc.so.5 Reading symbols from /usr/local/lib/transcode/import_nuv.so...done. Loaded symbols for /usr/local/lib/transcode/import_nuv.so Reading symbols from /usr/local/lib/transcode/export_lame.so...done. Loaded symbols for /usr/local/lib/transcode/export_lame.so Reading symbols from /usr/local/lib/transcode/export_ffmpeg.so...done. Loaded symbols for /usr/local/lib/transcode/export_ffmpeg.so Reading symbols from /usr/local/lib/libmp3lame.so.0...done. Loaded symbols for /usr/local/lib/libmp3lame.so.0 Reading symbols from /usr/local/lib/libavcodec.so...done. Loaded symbols for /usr/local/lib/libavcodec.so Reading symbols from /usr/local/lib/libfaac.so.0...done. Loaded symbols for /usr/local/lib/libfaac.so.0 Reading symbols from /usr/local/lib/libvorbis.so.3...done. Loaded symbols for /usr/local/lib/libvorbis.so.3 Reading symbols from /usr/local/lib/libvorbisenc.so.2...done. Loaded symbols for /usr/local/lib/libvorbisenc.so.2 Reading symbols from /usr/lib/libstdc++.so.4...done. Loaded symbols for /usr/lib/libstdc++.so.4 Reading symbols from /usr/local/lib/libmp4v2.so.0...done. Loaded symbols for /usr/local/lib/libmp4v2.so.0 Reading symbols from /usr/local/lib/libogg.so.5...done. Loaded symbols for /usr/local/lib/libogg.so.5 Reading symbols from /libexec/ld-elf.so.1...done. Loaded symbols for /libexec/ld-elf.so.1 #0 0x282ec3cb in kse_thr_interrupt () at kse_thr_interrupt.S:2 2 RSYSCALL(kse_thr_interrupt) (gdb) (gdb) where full #0 0x282ec3cb in kse_thr_interrupt () at kse_thr_interrupt.S:2 No locals. #1 0x282db340 in sig_daemon (arg=0x0) at /usr/varios/src/lib/libpthread/thread/thr_sig.c:214 i = 129 ts = {tv_sec = 30, tv_nsec = 0} set = {__bits = {0, 0, 0, 0}} curkse = (struct kse *) 0x80a0100 #2 0x282e49b2 in kse_sched_single (kmbx=0x17f) at /usr/varios/src/lib/libpthread/thread/thr_kern.c:883 curkse = (struct kse *) 0x80a0100 curthread = (struct pthread *) 0x80a6200 ts = {tv_sec = 0, tv_nsec = 0} sigmask = {__bits = {0, 0, 0, 0}} i = 134897664 sigseqno = 0 level = 383 first = 1 #3 0x00000000 in ?? () No symbol table info available. thread number 2 is suspicious: (gdb) info threads * 8 LWP 100183 0x282ec3cb in kse_thr_interrupt () at kse_thr_interrupt.S:2 7 Thread 7 (runnable) avi_update_header (AVI=0xa43d000) at avilib.c:823 6 Thread 6 (LWP 100155) 0x282ec3ab in kse_release () at kse_release.S:2 5 Thread 5 (sleeping) 0x282e42b7 in _thr_sched_switch_unlocked (curthread=0x80a6400) at pthread_md.h:232 4 Thread 4 (sleeping) 0x282e42b7 in _thr_sched_switch_unlocked (curthread=0x80a6600) at pthread_md.h:232 3 Thread 3 (sleeping) 0x282e42b7 in _thr_sched_switch_unlocked (curthread=0x80a6800) at pthread_md.h:232 2 Thread 2 (runnable) 0x283dfc08 in resample_flow (flowi=0x284616c0 "", isamp=1764, flowo=0x284de6c0 "") at resample.c:866 1 Thread 1 (runnable) _ctx_start () at /usr/varios/src/lib/libc/i386/gen/_ctx_start.S:42 (gdb) thread 2 [Switching to thread 2 (Thread 2 (runnable))]#0 0x283dfc08 in resample_flow (flowi=0x284616c0 "", isamp=1764, flowo=0x284de6c0 "") at resample.c:866 866 { Current language: auto; currently c (gdb) info args flowi = 0x284616c0 "" isamp = 1764 flowo = 0x284de6c0 "" (gdb) l resample.c:864,890 864 865 int resample_flow(char *flowi, int isamp, char *flowo) 866 { 867 short *wordp, *iword, *oword; 868 LONG irbuf[MY_BUFSIZE/2]; 869 LONG ilbuf[MY_BUFSIZE/2]; 870 int osamp, osampdef, i; 871 872 iword=(short *)flowi; 873 oword=(short *)flowo; 874 osampdef=reffp->outinfo.rate>>2; 875 wordp=iword; 876 for (i=0; iobuf, &isamp, &osamp); 882 osamp=osampdef; 883 st_resample_flow(leffp, &ilbuf, leffp->obuf, &isamp, &osamp); 884 wordp=oword; 885 for (i=0; iobuf[i]>>16); 887 wordp[i*2+1]=(int)(leffp->obuf[i]>>16); 888 } 889 return(osamp); 890 } well, now I'm not sure about that I must to do. perhaps some experienced member of the list can tell me which is the next step. Thank you.