[mythtv] Segfault in frontend in mpeg decoder (backtrace attached)

Ed Wildgoose edward.wildgoose at frmhedge.com
Fri Dec 26 17:05:29 EST 2003


Hi, seems like there is a lot to record on tv at the moment.  Must be a 
holiday or something....

I have one file which may have a glitched frame in it.  It causes a 
crash in the mpeg decoder on latest CVS.  Could someone please take a 
look at the backtrace for me? (Is this related to the viaslice thread?)  
The source of the mpeg stream was a DVB card.

Thanks all



-------------- next part --------------
[mpeg2video @ 0x85c5d98]ac-tex damaged at 18 28
[mpeg2video @ 0x85c5d98]concealing errors
[mpeg2video @ 0x85c5d98]Warning MVs not available
[mpeg2video @ 0x85c5d98]slice below image (137 >= 36)
[mpeg2video @ 0x85c5d98]concealing errors

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 229379 (LWP 704)]
0x082c3258 in mpeg_decode_slice (avctx=0x85c5d98, pict=0x42d7e8ac,
    start_code=1, buf=0x42d7e7c4, buf_size=0) at mpeg12.c:2226
2226    mpeg12.c: No such file or directory.
        in mpeg12.c
Current language:  auto; currently c
(gdb)
(gdb) thread apply all bt full

Thread 19 (Thread 278534 (LWP 707)):
#0  0x40c36566 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1  0x00000001 in ?? ()
No symbol table info available.
#2  0x081057cf in NuppelVideoPlayer::OldAVSync() (this=0x8788608)
    at NuppelVideoPlayer.cpp:1362
        buffer = (VideoFrame *) 0x8843b78
#3  0x08106274 in NuppelVideoPlayer::OutputVideoLoop() (
    this=0x8788608) at NuppelVideoPlayer.cpp:1530
        frame = (VideoFrame *) 0x8843b78
#4  0x08106568 in NuppelVideoPlayer::kickoffOutputVideoLoop(void*) (
    player=0x8788608) at NuppelVideoPlayer.cpp:1614
        nvp = (NuppelVideoPlayer *) 0x8788608
#5  0x40a6caf9 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#6  0x40a6cbf4 in pthread_start_thread_event ()
   from /lib/libpthread.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---

Thread 18 (Thread 262149 (LWP 706)):
#0  0x40c36566 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1  0x00000000 in ?? ()
No symbol table info available.

Thread 17 (Thread 245764 (LWP 705)):
#0  0x40c36566 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1  0x00000000 in ?? ()
No symbol table info available.

Thread 16 (Thread 229379 (LWP 704)):
#0  0x082c3258 in mpeg_decode_slice (avctx=0x85c5d98,
    pict=0x42d7e8ac, start_code=1, buf=0x42d7e7c4, buf_size=0)
    at mpeg12.c:2226
        xy = 277
        motion_for_top_x = 142775200
        motion_for_bottom_y = 0
---Type <return> to continue, or q <return> to quit---
        motion_for_top_y = 0
        motion_back_top_x = 0
        motion_back_bottom_x = 0
        wrap = 92
        motion_back_top_y = 0
        motion_for_bottom_x = 0
        motion_back_bottom_y = 0
        s1 = (Mpeg1Context *) 0x5c
        s = (MpegEncContext *) 0x88293a0
        ret = 0
        field_pic = 0
#1  0x082c3fd6 in mpeg_decode_frame (avctx=0x85c5d98,
    data=0x42d7e8ac, data_size=0x42d7e8a8, buf=0x87ae2a0 "",
    buf_size=27605) at mpeg12.c:2694
        s = (Mpeg1Context *) 0x88293a0
        buf_end = (uint8_t *) 0x87b4e75 ""
        buf_ptr = (
    uint8_t *) 0x87ae42c "R7ðý£F\214\212Ç£F\215\030akFÌ\0320¤;\215D4a<\215\032$¨Ã\rÍ18Å\206\032\032x\006-ûßjõ?;\217\220X³\205ð «\r&¤R\020¸\220(S\200\205ÎL¥0\230&~ëbÅ£æN\006\vÑ\213F\226\t\r\201ä;Ú¦\03224Öh­\2---Type <return> to continue, or q <return> to quit---
06\233þ°Ý`É\034°\ahÅ\213\f4\022\221\203;\026l¯*Î?ó8çWãâôì\026Ô0¡FLkÌ;,Ëì\f\r\0370\226Ì\224u\222¹\206÷qZnÝÇP\r\203R\204\227·Eé"
        ret = 258
        start_code = 258
        input_size = 27209
        picture = (AVFrame *) 0x42d7e8ac
        s2 = (MpegEncContext *) 0x88293a0
#2  0x0822f0b6 in avcodec_decode_video (avctx=0x85c5d98,
    picture=0x0, got_picture_ptr=0x42d7e8a8, buf=0x0, buf_size=0)
    at utils.c:451
        ret = 0
#3  0x081b4ec0 in AvFormatDecoder::GetFrame(int) (this=0x88234c0,
    onlyvideo=0) at avformatdecoder.cpp:1147
        context = (AVCodecContext *) 0x85c5d98
        mpa_pic = {data = {
    0x449b5000 '\020' <repeats 96 times>, "\017\t\f\026\025\v\a\v\005\022\020\v\024\025\021\n\006\016\022\017\020\023\025\022\004\t\r\f\020\023\020\f\016\t\a\017\023\r\t\024\024\022\r\r\023\031\027\022\023\021\r\r\016\n\020 \034\032\017\004\005\017\030\024\005\b\021\022\022\031\027\023\023\n\t\025\e\026\017\t\025\f\023\030\021\v\020\025\023\02---Type <return> to continue, or q <return> to quit---
0\020\020\021\021\017\r\r\r\021\023\017\016\020\020"...,
    0x44a1a400 '\200' <repeats 48 times>, "\206\200{~\205\212\204{\177x|\206\212\204{~xuy~\201}{\201}z|\177\200zv|\177\200\201\205\201|~\177||~\177\177\177\177\177~\177\177\177\177\177\177{\177\177\177\177\177\177{|\177\177\177\177\177\177}|\201\202\202\202\202\202\202~~}|~\177\177\177\177}}\177\177\177\177\177\177\177~\177~\177~\177~", '\177' <repeats 16 times>, "}\177\201\202\204\204\200~|~\177\177\177\177\177\177|~\177\177\177\177\177\177{||}}}}}"...,
    0x44a33900 '\200' <repeats 48 times>, '\177' <repeats 15 times>, "\200\200}{}\177\177\201\202\200}{}\177\177\201\202\177\177\206\206\206\204\201\200\204\203\177\177\200\200\200\200\177\177\200\200\200\200\200\210\177\200\200\200\200\200\210\207\177\200\200\200\200\200\204\210\177\177\200\200\200\200\200\210~~~\177\177\177\177\177~", '\177' <repeats 15 times>, "\200\200\200\200\200\200\200\200\200\177\200\177\200\177\200\177\177~|\200\203\203\202\200\203\177\177\200\200\200\200\200\203\177\177\200\200\200\200\200\210\207\206\204\202\202\202\202"..., 0x0}, linesize = {720, 360, 360, 0}, base = {0x0, 0x0, 0x0,
    0x0}, key_frame = 0, pict_type = 2, pts = 0,
  coded_picture_number = 850, display_picture_number = 0,
  quality = 0, age = 1073741824, reference = 3,
---Type <return> to continue, or q <return> to quit---
  qscale_table = 0x44c1dab0 "\f\f\f\f\f\f\016\016\f\016\016\016\016\016\016\016 \020\034\022\022\016\016\016", '\f' <repeats 12 times>, "\016\016\016\016\016\016\016\016\016", qstride = 46,
  mbskip_table = 0x44c1d430 "", motion_val = {0x0, 0x0},
  mb_type = 0x44c1e1ec, motion_subsample_log2 = 0 '\0',
  opaque = 0x8843bf8, error = {0, 0, 0, 0}, type = 2,
  repeat_pict = 0, qscale_type = 1, interlaced_frame = 1,
  top_field_first = 1, pan_scan = 0x44c00f30,
  palette_has_changed = 0, buffer_hints = 0}
        gotpicture = 0
        temppts = 7741482
        frame_delay = 40
        picframe = (VideoFrame *) 0x8843bf8
        curstream = (AVStream *) 0x85c5d90
        pkt = (AVPacket *) 0x8886750
        len = 27605
        ret = 768
        ptr = (unsigned char *) 0x87ae2a0 ""
        samples = {-950, -900, -1043, -1034, -1057, -1162, -1062,
  -1193, -1120, -1257, -1179, -1385, -1246, -1471, -1311, -1565,
---Type <return> to continue, or q <return> to quit---
  -1312, -1658, -1307, -1666, -1359, -1704, -1383, -1804, -1364,
  -1823, -1382, -1808, -1414, -1860, -1420, -1900, -1414, -1902,
  -1385, -1892, -1348, -1845, -1343, -1809, -1329, -1810, -1294,
  -1771, -1274, -1725, -1241, -1717, -1171, -1650, -1114, -1533,
  -1084, -1473, -1057, -1431, -1033, -1365, -998, -1320, -940,
  -1246, -899, -1130, -883, -1079, -847, -1041, -786, -930, -734,
  -839, -709, -769, -698, -666, -672, -619, -619, -580, -570, -446,
  -534, -355, -494, -331, -469, -248, -446, -179, -383, -132, -317,
  -7, -287, 63, -242, 66, -186, 170, -154, 268, -89, 301, 5, 421,
  43, 522, 76, 522, 172, 605, 263, 715, 306, 732, 325, 775, 351,
  820, 427, 817, 491, 885, 470, 933, 481, 879, 560, 890, 573, 933,
  565, 896, 615, 894, 610, 904, 572, 833, 602, 811, 605, 820, 564,
  739, 568, 686, 538, 673, 462, 569, 436, 463, 390, 418, 303, 324,
  266, 227, 205, 174, 87, 54, 11, -98, -67, -197, -197, -329, -319,
  -500, -464, -643, -613, -804, -694, -962, -820, -1057, -1004,
  -1188, -1092, -1365, -1163, -1472, -1317, -1568, -1419, -1709,
  -1490, -1809, -1650, -1916, -1783, -2068, -1833, -2136, -1915,
  -2156...}
        data_size = 4608
        pts = 43533154
---Type <return> to continue, or q <return> to quit---
        firstloop = true
        allowedquit = false
        storevideoframes = false
#4  0x0810348f in NuppelVideoPlayer::GetFrame(int, bool) (
    this=0x8788608, onlyvideo=0, unsafe=false)
    at NuppelVideoPlayer.cpp:624
No locals.
#5  0x0810715f in NuppelVideoPlayer::StartPlaying() (this=0x8788608)
    at NuppelVideoPlayer.cpp:1831
        output_video = 278534
        pausecheck = 0
#6  0x0818d231 in SpawnDecode(void*) (param=0x8788608)
    at tv_play.cpp:140
        nvp = (NuppelVideoPlayer *) 0x8788608
#7  0x40a6caf9 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#8  0x40a6cbf4 in pthread_start_thread_event ()
   from /lib/libpthread.so.0
No symbol table info available.

---Type <return> to continue, or q <return> to quit---
Thread 15 (Thread 212994 (LWP 703)):
#0  0x40c36566 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1  0x00000000 in ?? ()
No symbol table info available.

Thread 2 (Thread 32769 (LWP 690)):
#0  0x40c5b1b3 in poll () from /lib/libc.so.6
No symbol table info available.
#1  0x40a6c71f in __pthread_manager () from /lib/libpthread.so.0
No symbol table info available.
#2  0x40a6c960 in __pthread_manager_event ()
   from /lib/libpthread.so.0
No symbol table info available.

Thread 1 (Thread 16384 (LWP 660)):
#0  0x40c36566 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1  0x00000000 in ?? ()
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
0x082c3258      2226    in mpeg12.c


More information about the mythtv-dev mailing list