[mythtv] A bit more mplayer/mencoder crash information.

Martin Moeller martin at martinm-76.dk
Mon Aug 11 21:23:33 EDT 2003


I have just tried running mencoder through gdb when encoding a file it
segfaults on and surprise, surprise: It breaks down in new_demux_packet,
just like mplayer. I'm still wondering whether my breakpoint didn't work
or new_demux_packet only ever seems to get called on 'bad' files...

I will look into subscribing to the mplayer list and see if they have
any insights, but since the mythtv patch is not a standard part of
mplayer (yet?) they may not be too forthcoming..

Backtrace:

martin at monsterpc:/Multimedia/TV> gdb mencoder
GNU gdb 5.2.1
Copyright 2002 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 "i586-suse-linux"...
(gdb) handle SIGPIPE nostop
Signal        Stop      Print   Pass to program Description
SIGPIPE       No        Yes     Yes             Broken pipe
(gdb) run 1_20030810183000_20030810190000.nuv -ovc copy -oac copy -o
testing.avi
Starting program: /usr/bin/mencoder 1_20030810183000_20030810190000.nuv
-ovc copy -oac copy -o testing.avi
[New Thread 1024 (LWP 23339)]
Using GNU internationalization
Original domain: messages
Original dirname: /usr/share/locale
Current domain: mplayer
Current dirname: /usr/share/locale

MEncoder dev-CVS-030805-18:54-3.2 (C) 2000-2003 MPlayer Team

CPU: Intel  (Family: 8, Stepping: 7)
Detected cache-line size is 64 bytes
CPUflags: Type: 8 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with Runtime CPU Detection - WARNING - this is not optimal!
To get best performance, recompile MPlayer with
--disable-runtime-cpudetection
Reading /home/martin/.mplayer/codecs.conf: Can't open
'/home/martin/.mplayer/codecs.conf': Ingen sådan fil eller filkatalog
Reading /usr/etc/mplayer/codecs.conf: Can't open
'/usr/etc/mplayer/codecs.conf': Ingen sådan fil eller filkatalog
Using built-in default codecs.conf
File not found: 'frameno.avi'
Failed to open frameno.avi
Reading config file /home/martin/.mplayer/mencoder: Ingen sådan fil
eller filkatalog
success: format: 0  data: 0x0 - 0xD9B4D45
NuppelVideo file format detected.
Detected MythTV stream, reading extended format information
FOURCC: XVID
[V] filefmt:13  fourcc:0x58564944  size:384x288  fps:25,00 
ftime:=0,0400
videocodec: framecopy (384x288 24bpp fourcc=58564944)
audiocodec: framecopy (format=55 chans=2 rate=44100 bits=16 bps=16036
sample=4)
Writing AVI header...
Pos:  17,6s    439f (90%)  19fps Trem:   0min   2mb  A-V:-0,082
[1000:128]
1 duplicate frame(s)!
Pos:  18,0s    449f (90%)  19fps Trem:   0min   2mb  A-V:-0,082
[999:128]]
1 duplicate frame(s)!
Pos:  18,2s    453f (90%)  19fps Trem:   0min   2mb  A-V:-0,058
[994:128]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 23339)]
0x0811220f in new_demux_packet (len=939985889) at demuxer.h:154
154       if(len) memset(dp->buffer+len,0,8);
(gdb) thread apply all bt full

Thread 1 (Thread 1024 (LWP 23339)):
#0  0x0811220f in new_demux_packet (len=939985889) at demuxer.h:154
        __s = (void *) 0x38070be1
        dp = (struct demux_packet_st *) 0x83f72a0
#1  0x0810f427 in ds_read_packet (ds=0x83e7310, stream=0x38070be1,
len=138375840, pts=1177993.62, pos=207341255, flags=0) at demuxer.c:266
        dp = (struct demux_packet_st *) 0x507
#2  0x08126caf in demux_nuv_fill_buffer (demuxer=0x83e6aa8) at
demux_nuv.c:198
        rtjpeg_frameheader = {frametype = 65 'A', comptype = 83 'S',
keyframe = -62 'Â', filters = -96 ' ', timecode = 1177993585,
  packetlength = 939985889}
        priv = (struct _nuv_info_t *) 0x83e5718
        want_audio = 1
#3  0x0810f7cd in ds_fill_buffer (ds=0x83e7378) at demuxer.c:413
        demux = (struct demuxer_st *) 0x83e6aa8
#4  0x0810fbca in ds_get_packet (ds=0x83e7378, start=0xbfffe120) at
demuxer.c:487
No locals.
#5  0x081058b2 in video_read_frame (sh_video=0x83e7448,
frame_time_ptr=0xbfffe124, start=0xbfffe120, force_fps=0) at video.c:435
        d_video = (struct {...} *) 0x83e7378
        demuxer = (struct demuxer_st *) 0x83e6aa8
        frame_time = 1
        pts1 = 1770.47205
        pts = 0
        picture_coding_type = 0
        in_size = 138310520
#6  0x0806677a in main (argc=939985889, argv=0x38070be1) at
mencoder.c:1045
        stream = (struct stream_st *) 0x83e5750
        demuxer = (struct demuxer_st *) 0x83e6aa8
        stream2 = (struct stream_st *) 0x38070be1
        demuxer2 = (struct demuxer_st *) 0x0
        d_audio = (struct {...} *) 0x83e7310
        d_video = (struct {...} *) 0x83e7378
        d_dvdsub = (struct {...} *) 0x83e73e0
        sh_audio = (struct {...} *) 0x83e74e0
        sh_video = (struct {...} *) 0x83e7448
        file_format = 0
        i = 0
        vobsub_writer = (void *) 0x0
        ptimer_start = 4063858293
        audiorate = 23043
        videorate = 64
        audiosamples = 39
        videosamples = 454
        skippedframes = 0
        duplicatedframes = 2
        badframes = 0
        mux_a = (struct {...} *) 0x83e7990
        mux_v = (struct {...} *) 0x83e7378
        muxer_f_size = -4611723332964945032
        lame = (struct lame_global_struct *) 0xbfffe174
        v_pts_corr = -0.057914860437519818
        v_timer_corr = 4.0501356124841094e-07
        filelist = (struct m_entry_st *) 0x83e7378
        filename = 0x83e7378 "\f\r"
        decoded_frameno = 453
        next_frameno = -1
        timer_start = 4063834912
#7  0x403ba4a2 in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
-- 
Martin Moeller <martin at martinm-76.dk>



More information about the mythtv-dev mailing list