[mythtv-commits] Ticket #1568: backend crash when opening mythweb recordings screen (seeking related problem)

MythTV mythtv at cvs.mythtv.org
Wed Mar 22 18:54:34 UTC 2006

#1568: backend crash when opening mythweb recordings screen (seeking related
 Reporter:  visit0r  |       Owner:  ijr 
     Type:  defect   |      Status:  new 
 Priority:  major    |   Milestone:      
Component:  mythtv   |     Version:  0.19
 Severity:  high     |  
 The backend segfaults when I open the recordings screen in mythweb. It
 seems to be connected
 to seeking, as I get also a frontend crash when I try to fast forward the
 video. Playing the
 video in normal fashion does not crash anything. I haven't tried the HEAD
 yet, but the last
 time I tried (a week ago or so) the crash was occuring there too.

 I can provide a piece of the test video if requested (copyrighted stuff).

 Here's the interesting portion of the backtrace:
 Thread 1 (process 2770):
 ---Type <return> to continue, or q <return> to quit---
 #0  0xb74386f9 in mpeg_field_start (s=0x81e4bf0) at mpeg12.c:2494
 #1  0xb743a031 in mpeg_decode_frame (avctx=0x81adcc0, data=0xaf62bb88,
 data_size=0xaf62bc88, buf=0xadaae008 "",
     buf_size=146540) at mpeg12.c:3207
 #2  0xb7379c73 in avcodec_decode_video (avctx=0x81adcc0,
 picture=0x8189e2c, got_picture_ptr=0xaf62bc88,
     buf=0x8189e2c " \220Œ­ À­ LÄ­\201\vëÆÀ\002",
 buf_size=146540) at utils.c:947
 #3  0xb7aabc6f in AvFormatDecoder::GetFrame (this=0x818dff8, onlyvideo=1)
 at avformatdecoder.cpp:2514
 #4  0xb7a71d95 in NuppelVideoPlayer::GetFrameNormal (this=0x8206ee8,
 onlyvideo=135831084) at NuppelVideoPlayer.cpp:979
 #5  0xb7a72195 in NuppelVideoPlayer::GetFrame (this=0x8206ee8,
 onlyvideo=135831084, unsafe=false)
     at NuppelVideoPlayer.cpp:1057
 #6  0xb7a7ec45 in NuppelVideoPlayer::GetScreenGrab (this=0x8206ee8,
 secondsin=240, bufflen=@0xaf62c160, vw=@0xaf62c15c,
     vh=@0xaf62c158, ar=@0xaf62c154) at NuppelVideoPlayer.cpp:4221
 #7  0xb7d40845 in PreviewGenerator::GetScreenGrab (pginfo=0x8189e2c,
 filename=@0xaf62c164, secondsin=135831084,
     bufferlen=@0xaf62c160, video_width=@0x8189e2c,
 video_height=@0x8189e2c, video_aspect=@0x8189e2c)
     at previewgenerator.cpp:399
 #8  0x080649bb in EncoderLink::GetScreenGrab (this=0x8189e2c,
 pginfo=0x8189e2c, filename=@0x8189e2c, secondsin=135831084,
     bufferlen=@0x8189e2c, video_width=@0x8189e2c, video_height=@0x8189e2c,
 video_aspect=@0x8189e2c) at encoderlink.cpp:903
 #9  0x08090208 in MainServer::HandleGenPreviewPixmap (this=0x81473c8,
 slist=@0x8189e2c, pbs=0x8189e2c)
     at mainserver.cpp:3151
 #10 0x0809ad4d in MainServer::ProcessRequestWork (this=0x81473c8,
 sock=0x818fd78) at mainserver.cpp:437
 #11 0x080a0f83 in ProcessRequestThread::run (this=0x8146d20) at
 #12 0xb6841806 in QThreadInstance::start () from /usr/lib/libqt-mt.so.3
 #13 0xb64ae341 in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
 #14 0xb634252e in clone () from /lib/tls/i686/cmov/libc.so.6

 Other threads were sleeping in a syscall, for example:

 Thread 2 (process 2769):
 #0  0xffffe410 in __kernel_vsyscall ()
 #1  0xb64b0c76 in pthread_cond_wait@@GLIBC_2.3.2 () from

 Here's the backend log (default logging switches used, ask if you need
 some specific ones) before

 2006-03-22 12:26:10.494 Using runtime prefix = /usr/local/stow/mythtv-0
 2006-03-22 12:26:10.653 New DB connection, total: 1
 2006-03-22 12:26:10.750 Connected to database 'mythconverg' at host:
 2006-03-22 12:26:10.757 Current Schema Version: 1128
 2006-03-22 12:26:10.758 Newest Schema Version : 1123
 2006-03-22 12:26:10.759 New DB connection, total: 2
 2006-03-22 12:26:10.761 Connected to database 'mythconverg' at host:
 2006-03-22 12:26:10.762 Setting Lock for Database Schema upgrade. If you
 see a long pause here it means the Schema is already locked and is being
 upgraded by another Myth process.
 2006-03-22 12:26:10.764 New DB connection, total: 3
 2006-03-22 12:26:10.765 Connected to database 'mythconverg' at host:
 2006-03-22 12:26:10.766 Database Schema upgrade complete, unlocking.
 Starting up as the master server.
 2006-03-22 12:26:10.857 DVB#0 Using DVB card 0, with frontend 'VLSI
 VES1820 DVB-C'.
 2006-03-22 12:26:10.948 DVB#1 Using DVB card 1, with frontend 'VLSI
 VES1820 DVB-C'.
 2006-03-22 12:26:10.953 New DB scheduler connection
 2006-03-22 12:26:10.954 Connected to database 'mythconverg' at host:
 2006-03-22 12:26:11.059 mythbackend version: 0.19.20060121-2
 2006-03-22 12:26:11.059 Enabled verbose msgs:  important general
 2006-03-22 12:26:11.059 AutoExpire: Found 2 recorders w/max rate of 277
 2006-03-22 12:26:11.060 AutoExpire: Required Free Space: 2.2 GB w/freq: 5
 2006-03-22 12:26:13.056 Reschedule requested for id -1.
 2006-03-22 12:26:13.682 Scheduled 20 items in 0.6 = 0.16 match + 0.46
 2006-03-22 12:26:13.687 Seem to be woken up by USER
 2006-03-22 12:26:19.208 MainServer::HandleAnnounce Monitor
 2006-03-22 12:26:19.208 adding: aslanov as a client (events: 0)
 2006-03-22 12:26:21.638 MainServer::HandleAnnounce Monitor
 2006-03-22 12:26:21.638 adding: aslanov as a client (events: 0)
 0: start_time: 5472.197 duration: 177.872
 1: start_time: 5472.149 duration: 177.885
 2: start_time: 5472.149 duration: 177.921
 3: start_time: 5472.149 duration: 177.921
 stream: start_time: 60801.653 duration: 1976.899 bitrate=4118 kb/s
 2006-03-22 12:26:22.529 AFD: Opened codec 0x81adcc0, id(MPEG2VIDEO)
 2006-03-22 12:26:22.553 AFD: Opened codec 0x820db90, id(MP3) type(Audio)
 2006-03-22 12:26:22.553 AFD: Opened codec 0x818f4e0, id(DVB_SUBTITLE)
 2006-03-22 12:26:22.553 AFD: Opened codec 0x81e3440, id(DVB_SUBTITLE)
 Segmentation fault (core dumped)

 It seems to detect the stream properties incorrectly, as the channel that
 sends the program
 in question does not support DVB subtitles, AFAIK.

 Attached is a log when ran it under valgrind.

 I'm available at irc.freenode.net and through e-mail pekka.jaaskelainen
 gmail com, if you have
 ideas for fixes to try out.

Ticket URL: <http://svn.mythtv.org/trac/ticket/1568>
MythTV <http://www.mythtv.org/>

More information about the mythtv-commits mailing list