[mythtv] Commercial flagging stopped working for me sometime after rev 9287

Daniel A Segel mythtv-dev at archer-segel.com
Fri Mar 17 16:13:39 UTC 2006


I spent several hours last night cleaning everything out and recompiling 
and installing, but mythcommflag still crashes for me immediately after 
printing "Finding Logo" if i run it manually, and it is apparently 
crashing when run by the job queue as well. Here's some gdb output of a 
manual run I just did. How do I get Symbol information included? Or is 
that not necessary? At this point I'm thinking there's something wrong 
with the files themselves, although it crashes on every recording.

I've tried to figure this out on my own to the best of my abilities, but 
I'm not really able to follow the code well enough to know where to look 
next. Any help would be appreciated.


GNU gdb 6.4
Copyright 2005 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 "i686-pc-linux-gnu"...Using host libthread_db 
library "/lib/libthread_db.so.1".

[Thread debugging using libthread_db enabled]
[New Thread 16384 (LWP 18985)]
2006-03-17 07:57:50.429 Using runtime prefix = /usr/local
2006-03-17 07:57:50.525 New DB connection, total: 1
2006-03-17 07:57:50.532 mythcommflag version: 0.19.20060226-1 www.mythtv.org
2006-03-17 07:57:50.532 Enabled verbose msgs: important

MythTV Commercial Flagger, started at Fri Mar 17 07:57:50 2006
Flagging commercial breaks for:
ChanID  Start Time      Title                                      Breaks
------  --------------  -----------------------------------------  ------
2006-03-17 07:57:50.547 New DB connection, total: 2
1182    20060315180000  MythBusters                                
2006-03-17 07:57:51.236 Using protocol version 27
[New Thread 32769 (LWP 18994)]
[New Thread 16386 (LWP 18995)]
[mpeg @ 0xb75a5520]Parser not found for Codec Id: 94210 !
0: start_time: 0.036 duration: 323.660
1: start_time: 2445.322 duration: 323.718
2: start_time: 0.026 duration: 323.644
stream: start_time: 0.289 duration: 30766.816 bitrate=587 kb/s
Finding Logo
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 18985)]
0xb6176b07 in memset () from /lib/libc.so.6

Thread 3 (Thread 16386 (LWP 18995)):
#0  0xb6195396 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 18994)):
#0  0xb61bb298 in poll () from /lib/libc.so.6
No symbol table info available.
#1  0xb6312c75 in __pthread_manager () from /lib/libpthread.so.0
No symbol table info available.
#2  0xb6312f79 in __pthread_manager_event () from /lib/libpthread.so.0
No symbol table info available.
#3  0xb61c3aaa in clone () from /lib/libc.so.6
No symbol table info available.

Thread 1 (Thread 16384 (LWP 18985)):
#0  0xb6176b07 in memset () from /lib/libc.so.6
No symbol table info available.
#1  0x08101490 in ?? ()
No symbol table info available.
#2  0xb7a8c768 in NuppelVideoPlayer::AddTextData (this=0x80c1568, 
buffer=0x8101820 "\017\003\002", len=11, timecode=8018, type=67 'C') at 
NuppelVideoPlayer.cpp:1102
No locals.
#3  0xb7954d10 in CCDecoder::BufferCC (this=0x8101490, mode=0, len=11, 
clr=0) at ccdecoder.cpp:589
        tmpbuf = <incomplete type>
        f = 0 '\0'
        bp = (unsigned char *) 0x8101826 "HOME."
#4  0xb795443f in CCDecoder::FormatCCField (this=0x8101490, tc=8018, 
field=0, data=44436) at ccdecoder.cpp:386
        newccmode = 0
        newtxtmode = 0
        b1 = 20
        b2 = 45
        len = 5
        x = 0
        mode = 0
        dup_text_fudge = 4
        dup_ctrl_fudge = 29
#5  0xb7ad5841 in AvFormatDecoder::ProcessVBIDataPacket (this=0x8100b88, 
stream=0x810b550, pkt=0x80aa3d8) at avformatdecoder.cpp:1834
        data = 44436
        line = 21
        field = 0
        id2 = 4
        i = 15
        buf = (const uint8_t *) 0x8248a0b "\004\224?", '?' <repeats 40 
times>, "\004\200\200", '?' <repeats 40 times>
        linemask = 8589967360
        utc = 8018888
        min_blank = 6
#6  0xb7ad8ff5 in AvFormatDecoder::GetFrame (this=0x8100b88, 
onlyvideo=1) at avformatdecoder.cpp:2375
        curstream = (AVStream *) 0x810b550
        ctype = 1
        audIdx = 1
        subIdx = 0
        pkt = (AVPacket *) 0x80aa3d8
        len = 99
        ret = 0
        ptr = (unsigned char *) 0x8248a00 "tv0"
        data_size = 0
        pts = 27177993
        firstloop = false
        have_err = false
        allowedquit = false
        storevideoframes = false
        skipaudio = false
#7  0xb7a8c918 in NuppelVideoPlayer::GetFrameNormal (this=0x80c1568, 
onlyvideo=1) at NuppelVideoPlayer.cpp:1134
No locals.
#8  0xb7a8d5ad in NuppelVideoPlayer::GetFrame (this=0x80c1568, 
onlyvideo=1, unsafe=true) at NuppelVideoPlayer.cpp:1212
        ret = false
#9  0xb7aa2148 in NuppelVideoPlayer::GetRawVideoFrame (this=0x80c1568, 
frameNumber=236) at NuppelVideoPlayer.cpp:4754
No locals.
#10 0x080798f1 in ClassicCommDetector::SearchForLogo (this=0x80fb740) at 
ClassicCommDetector.cpp:2513
        vf = (VideoFrame *) 0x8248f30
        pixelsInMask = 0
        seekIncrement = 59
        seekFrame = 236
        loops = 3
        maxLoops = 240
        edgeCounts = (ClassicCommDetector::edgemaskentry *) 0xb336f008
        pos = -1238336608
        i = 0
        x = -1078882744
        y = -1078879084
        dx = 134785744
        dy = -1238353100
        edgeDiffs = {5, 7, 10, 15, 20, 30, 40, 50, 60, 0}
#11 0x08064616 in ClassicCommDetector::go (this=0x80fb740) at 
ClassicCommDetector.cpp:301
        requiredBuffer = 7
        requiredHeadStart = 487
        wereRecording = false
        secsSince = 136671
        flagTime = {ds = 3056695226}
        myTotalFrames = -5192316148752857512
        flagFPS = -2.64447453e-06
        currentFrameNumber = -5322645300635928322
        aspect = -2.25208737e-06
        newAspect = -1.3871851
#12 0x0805506d in DoFlagCommercials (showPercentage=true, 
fullSpeed=true, inJobQueue=false, nvp=0x80c1568, commDetectMethod=255) 
at main.cpp:448
        factory = {<No data fields>}
        cer = {<> = {<No data fields>}, static metaObj = 0x0, fp = 
0x8053ae4 <incomingCustomEvent(QCustomEvent*)>}
        a = {<> = {<No data fields>}, static metaObj = 0x80fc320, 
fp_qstring = 0, fp_void = 0x80532c0 <commDetectorBreathe()>}
        b = {<> = {<No data fields>}, static metaObj = 0x80fc320, 
fp_qstring = 0x805342c <commDetectorStatusUpdate(QString const&)>, 
fp_void = 0}
        c = {<> = {<No data fields>}, static metaObj = 0x80fc320, 
fp_qstring = 0, fp_void = 0x805349c 
<commDetectorGotNewCommercialBreakList()>}
        message = {static null = {static null = <same as static member 
of an already seen type>, d = 0x808ddd0, static shared_null = 
0x808ddd0}, d = 0x80f32e0, static shared_null = 0x808ddd0}
        result = 191
        comms_found = -1239275008
#13 0x0805729b in FlagCommercials (chanid={static null = {static null = 
<same as static member of an already seen type>, d = 0x808ddd0, static 
shared_null = 0x808ddd0}, d = 0x80b8ef0, static shared_null = 
0x808ddd0}, starttime={static null = {static null = <same as static 
member of an already seen type>, d = 0x808ddd0, static shared_null = 
0x808ddd0}, d = 0x80b85e0, static shared_null = 0x808ddd0}) at main.cpp:623
        breaksFound = 0
        blanks = {sh = 0x80b84e8}
        filename = {static null = {static null = <same as static member 
of an already seen type>, d = 0x808ddd0, static shared_null = 
0x808ddd0}, d = 0x80b8cc0, static shared_null = 0x808ddd0}
        tmprbuf = (RingBuffer *) 0x80be630
        nvp = (class NuppelVideoPlayer *) 0x80c1568
        fakeJobID = 1243
#14 0x0805c4d6 in main (argc=4, argv=0xbfb19c94) at main.cpp:1077
        a = <incomplete type>
        argpos = 4
        isVideo = false
        result = 0
        filename = {static null = {static null = <same as static member 
of an already seen type>, d = 0x808ddd0, static shared_null = 
0x808ddd0}, d = 0x808ddd0, static shared_null = 0x808ddd0}
        chanid = {static null = {static null = <same as static member of 
an already seen type>, d = 0x808ddd0, static shared_null = 0x808ddd0}, d 
= 0x80b8ef0, static shared_null = 0x808ddd0}
        starttime = {static null = {static null = <same as static member 
of an already seen type>, d = 0x808ddd0, static shared_null = 
0x808ddd0}, d = 0x80b85e0, static shared_null = 0x808ddd0}
        allStart = {static null = {static null = <same as static member 
of an already seen type>, d = 0x808ddd0, static shared_null = 
0x808ddd0}, d = 0x80a8190, static shared_null = 0x808ddd0}
        allEnd = {static null = {static null = <same as static member of 
an already seen type>, d = 0x808ddd0, static shared_null = 0x808ddd0}, d 
= 0x80a8230, static shared_null = 0x808ddd0}
        jobID = -1
        jobType = 0
        fullfile = <incomplete type>
        time_now = 1142611070
        allRecorded = false
        queueJobInstead = false
        copyToCutlist = false
        clearCutlist = false
        getCutlist = false
        getSkipList = false
        newCutList = {static null = {static null = <same as static 
member of an already seen type>, d = 0x808ddd0, static shared_null = 
0x808ddd0}, d = 0x80a82a8, static shared_null = 0x808ddd0}
        settingsOverride = {sh = 0x80a8248}
        finfo = {fn = {static null = {static null = <same as static 
member of an already seen type>, d = 0x808ddd0, static shared_null = 
0x808ddd0}, d = 0x80a8258, static shared_null = 0x808ddd0}, fic = 0x0, 
cache = true, symLink = false}
        binname = {static null = {static null = <same as static member 
of an already seen type>, d = 0x808ddd0, static shared_null = 
0x808ddd0}, d = 0x80a8280, static shared_null = 0x808ddd0}


More information about the mythtv-dev mailing list