[mythtv] Problems with v4l LiveTV in current svn

David Maher dm at netsol.com.au
Thu Sep 29 06:14:07 UTC 2005


I am seeing similar results with SVN 7347 I get the "should have gotten a lock" message every time I change channel, on both my analogue saa7134 card and on my two dvb vp3020 cards. After I press Ok, the message goes and everything continues to work. The OSD reports: signal 87% LAM (lock)
 
Cheers
 
David Maher
 
PS: the channel changes are so fast now, I'm prepared to put up with this minor inconvenience!

-----Original Message-----
From: mythtv-dev-bounces at mythtv.org [mailto:mythtv-dev-bounces at mythtv.org]On Behalf Of Wendy Seltzer
Sent: Thursday, 29 September 2005 2:30 PM
To: Development of mythtv
Subject: [mythtv] Problems with v4l LiveTV in current svn


If I switch to "watch live tv" with a WinTV v4l card configured first, current svn gives the pop-up "You should have gotten a channel lock by now..."  even while the channel is playing fine.  It then fails to change to a different channel on the same card, giving first a blank screen, then "Error was encountered while displaying video," then a segfault.  

If I hit "R" to start recording on the WinTV, it starts that recording, but instead of sending me back to watch the recording, it shows a channel from the atsc card. 

The HD-3000 is working well, though.

Here's a bit of backend log -v siparser,channel,record

2005-09-29 00:15:09.070 MainServer::HandleAnnounce Playback
2005-09-29 00:15:09.070 adding: chinch as a client (events: 0)
2005-09-29 00:15:09.093 Getting next free recorder after : -1
2005-09-29 00:15:09.095 Card 1 is local.
2005-09-29 00:15:09.124 MainServer::HandleAnnounce Playback
2005-09-29 00:15:09.124 adding: chinch as a client (events: 1)
2005-09-29 00:15:09.152 MainServer::HandleAnnounce Playback
2005-09-29 00:15:09.152 adding: chinch as a client (events: 0)
2005-09-29 00:15:09.400 MainServer::HandleAnnounce Playback
2005-09-29 00:15:09.400 adding: chinch as a client (events: 0)
2005-09-29 00:15:09.407 adding: chinch as a remote ringbuffer
2005-09-29 00:15:09.419 TVRec(1): Changing from None to WatchingLiveTV
2005-09-29 00:15:09.419 TVRec(1): ClearFlags(FrontendReady,CancelNextRecording,) -> RunMainLoop,
2005-09-29 00:15:09.419 TVRec(1): SetFlags(AskAllowRecording,) -> RunMainLoop,AskAllowRecording,
2005-09-29 00:15:09.419 TVRec(1): Request: Program(no) channel() input() flags(LiveTV,)
2005-09-29 00:15:09.419 TVRec(1): ClearFlags(WaitingForSIParser,SIParserRunning,) -> RunMainLoop,AskAllowRecording,
2005-09-29 00:15:09.420 TVRec(1): ClearFlags(WaitingForSignal,SignalMonitorRunning,) -> RunMainLoop,AskAllowRecording,
2005-09-29 00:15:09.469 Channel(/dev/video0)::SwitchToInput(in 0)
2005-09-29 00:15:09.505 Channel(/dev/video0)::SwitchToInput() setting video mode to NTSC
2005-09-29 00:15:09.577 Channel(/dev/video0)::SetChannelByString(54)
2005-09-29 00:15:09.578 ChannelBase(/dev/video0)::SetCachedATSCInfo(): RESET
2005-09-29 00:15:09.595 External channel change: /usr/local/bin/myth-change-chan.sh 54
2005-09-29 00:15:09.612 Waiting for External Tuning program to exit
2005-09-29 00:15:10.614 ret_pid(0) child(22539) status(0x0)
2005-09-29 00:15:11.617 ret_pid(22539) child(22539) status(0x0)
2005-09-29 00:15:11.617 External Tuning program no longer running
2005-09-29 00:15:11.617 External Tuning program exited with no error
2005-09-29 00:15:11.618 ChannelBase(/dev/video0)::SetCachedATSCInfo(54): 5_4
2005-09-29 00:15:11.622 TVRec(1): SetFlags(NeedToStartRecorder,) -> RunMainLoop,AskAllowRecording,NeedToStartRecorder,
2005-09-29 00:15:11.622 TVRec(1): Starting Recorder
2005-09-29 00:15:11.640 TVRec(1): Using profile 'Live TV' to record
2005-09-29 00:15:11.650 Unknown video codec
2005-09-29 00:15:11.650 Please go into the TV Settings, Recording Profiles and
2005-09-29 00:15:11.651 setup the four 'Software Encoders' profiles.
2005-09-29 00:15:11.651 Assuming RTjpeg for now.
2005-09-29 00:15:11.651 NVR: Error, unknown audio codec
2005-09-29 00:15:11.656 SetRecording(0x0)
2005-09-29 00:15:11.794 TVRec(1): SetFlags(RecorderRunning,) -> RunMainLoop,AskAllowRecording,NeedToStartRecorder,RecorderRunning,
2005-09-29 00:15:11.794 TVRec(1): ClearFlags(NeedToStartRecorder,) -> RunMainLoop,AskAllowRecording,RecorderRunning,
2005-09-29 00:15:12.539 TVRec(1): SetFlags(FrontendReady,) -> FrontendReady,RunMainLoop,AskAllowRecording,RecorderRunning,
2005-09-29 00:15:24.326 TVRec(1): ClearFlags(0x40000000) -> FrontendReady,RunMainLoop,AskAllowRecording,RecorderRunning,
2005-09-29 00:15:24.327 TVRec(1): Request: Program(no) channel(55) input() flags(LiveTV,)
2005-09-29 00:15:24.327 TVRec(1): ClearFlags(WaitingForSIParser,SIParserRunning,) -> FrontendReady,RunMainLoop,AskAllowRecording,RecorderRunning,
2005-09-29 00:15:24.327 TVRec(1): ClearFlags(WaitingForSignal,SignalMonitorRunning,) -> FrontendReady,RunMainLoop,AskAllowRecording,RecorderRunning,
2005-09-29 00:15:24.327 TVRec(1): SetFlags(WaitingForRecPause,) -> FrontendReady,RunMainLoop,AskAllowRecording,WaitingForRecPause,RecorderRunning,
free(): invalid pointer 0x80ada80!
2005-09-29 00:15:59.346 RingBuffer: Couldn't read data from the capture card in 15 seconds. Stopping.
Segmentation fault



in gdb: 
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1393939536 (LWP 23975)]
0xb67d7546 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3

(gdb) thread apply all bt full

Thread 18 (Thread -1410716752 (LWP 23977)):
#0  0xb6483440 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#1  0xb6a73190 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0xb7c11ba3 in NuppelVideoRecorder::doVbiThread (this=0xaebca008)
    at NuppelVideoRecorder.cpp:3146
        tv = {tv_sec = 4, tv_usec = 967000}
        rdset = {fds_bits = {4194304, 0 <repeats 31 times>}}
        vbi = (vbi *) 0x0
        cc = (cc *) 0x8355c60
        vbifd = 22
        vbicallbackdata = {nvr = 0xaebca008, teletextpage = {pgno = 0,
    subno = 0, lang = 0, flags = 0, errors = 0, lines = 0, data = {
      '\0' <repeats 39 times> <repeats 25 times>}, flof = 0, link = {{
        pgno = 0, subno = 0}, {pgno = 0, subno = 0}, {pgno = 0, subno = 0}, {
        pgno = 0, subno = 0}, {pgno = 0, subno = 0}, {pgno = 0, subno = 0}}},
  foundteletextpage = false}
#3  0xb7c0c603 in NuppelVideoRecorder::VbiThread (param=0xaebca008)
    at NuppelVideoRecorder.cpp:2082
        nvr = (NuppelVideoRecorder *) 0xaebca008
---Type <return> to continue, or q <return> to quit---
#4  0xb6480b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb633718a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 17 (Thread -1402328144 (LWP 23976)):
#0  0xb6483440 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#1  0xb6a73190 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0xb7c0d6d5 in NuppelVideoRecorder::doAudioThread (this=0xaebca008)
    at NuppelVideoRecorder.cpp:2176
        afmt = 16
        trigger = 1
        afd = 20
        act = 431
        lastread = 4096
        frag = 524298
        blocksize = 4096
        buffer = (
    unsigned char *) 0x8354c58 "\uffff\001\002\002'\0020\002S\002d\002}\002\215\002\022\003 \003H\003Y\003g\003}\003i\003~\003T\003d\0033\003?\003\003\003\020\003\uffff---Type <return> to continue, or q <return> to quit---
\002\uffff\002\217\002\236\002^\002o\002K\002X\002D\002S\002r\002\206\002\215\002\233\002\221\002\uffff\002\204\002\226\002n\002}\002@\002L\002\uffff\001\t\002\uffff\001\uffff\001\211\001\226\001c\001o\001W\001`\001\uffff\001\uffff\001\uffff\001\uffff\001\036\002(\002P\002Z\002u\002\200\002\216\002\232\002\234\002\uffff\002\uffff\002\uffff\002\227\002\uffff\002\201\002\224\002m\002o\002\213\001\220\001\024\001&\001\uffff" 
        ispace = {fragments = 0, fragstotal = 8, fragsize = 1024, bytes = 954}
        anow = {tv_sec = 1127967720, tv_usec = 868936}
#3  0xb7c0c5d5 in NuppelVideoRecorder::AudioThread (param=0xaebca008)
    at NuppelVideoRecorder.cpp:2073
        nvr = (NuppelVideoRecorder *) 0xaebca008
#4  0xb6480b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb633718a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 16 (Thread -1393939536 (LWP 23975)):
#0  0xb67d7546 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#1  0xb67d7354 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0xb7d0face in RecorderBase::RecorderPaused (this=0xaebca008)
    at moc_recorderbase.cpp:86
No locals.
---Type <return> to continue, or q <return> to quit---
#3  0xb7c11dc2 in NuppelVideoRecorder::doWriteThread (this=0xaebca008)
    at NuppelVideoRecorder.cpp:3213
        action = ACTION_NONE
        firsttimecode = -1
#4  0xb7c0c5a7 in NuppelVideoRecorder::WriteThread (param=0xaebca008)
    at NuppelVideoRecorder.cpp:2064
        nvr = (NuppelVideoRecorder *) 0xaebca008
#5  0xb6480b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#6  0xb633718a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 15 (Thread -1383240784 (LWP 23974)):
#0  0xb6483440 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#1  0xb6a73190 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0xb7c078c0 in NuppelVideoRecorder::StartRecording (this=0xaebca008)
    at NuppelVideoRecorder.cpp:1112
        vc = {name = "BT878 video (Hauppauge (bt878))", type = 171,
  channels = 4, audios = 1, maxwidth = 768, maxheight = 480, minwidth = 48,
  minheight = 32}
---Type <return> to continue, or q <return> to quit---
        mm = {frame = 1, height = 480, width = 480, format = 15}
        vm = {size = 17039360, frames = 8, offsets = {0, 2129920, 4259840,
    6389760, 8519680, 10649600, 12779520, 14909440, 0 <repeats 24 times>}}
        vchan = {channel = 0, name = "Television", '\0' <repeats 21 times>,
  tuners = 1, flags = 3, type = 1, norm = 1}
        va = {audio = 0, volume = 58981, bass = 32768, treble = 32768,
  flags = 30, name = "Television\000\000\000\000\000", mode = 1,
  balance = 32768, step = 0}
        vt = {tuner = 0, name = '\0' <repeats 31 times>, rangelow = 0,
  rangehigh = 0, flags = 0, mode = 0, signal = 0}
        channelinput = 0
        frame = 1
        buf = (
    unsigned char *) 0xaa663000 "\030\024\021\020\021\026\024\024\020\026\022\025\030\022\020\026\026\033\037\037\020\020\026\021\021\025\020\023\037%15!\020\020\020\020\021 \036\025\026\033\032\031\032\033\037\026\020\024\027\027\021\020\027\035\035\020\020\034\033\030\025\027\032\032\032\030\032\026\022\031\026\027\026\022\031\027\032\037\032\027\020\027\033\030\025\020\022\036),\034\025\036#\035\020\021\020\020\023\021\030\034\033\020\020\024\037 \034\037/&!\032\020\020\020\020\0363/\034\022\020\020\032%'!\020\020\020\020\020\030#\035\034\027\026\025\020\026*!\027\031 \034\022\023\020\021\022\020\020\025\036\035\034\"\033\021\030\032\027\021\020\034\033\036\026\024\021\021\023\031\030\035%$\032\032$\026\027\"\025\020\020\020\025\025\026\023\020"...
---Type <return> to continue, or q <return> to quit---
        syncerrors = 0
#3  0xb7ba8220 in TVRec::RecorderThread (param=0xaebca008) at tv_rec.cpp:1094
        recorder = (class RecorderBase *) 0xaebca008
#4  0xb6480b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb633718a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 14 (Thread -1353847888 (LWP 23964)):
#0  0xb6483440 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#1  0xb6a73190 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0xb7942cc6 in ThreadedFileWriter::SyncLoop (this=0x8161908)
    at ThreadedFileWriter.cpp:231
No locals.
#3  0xb7941b55 in ThreadedFileWriter::boot_syncer (wotsit=0x8161908)
    at ThreadedFileWriter.cpp:65
        fw = (ThreadedFileWriter *) 0x8161908
#4  0xb6480b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb633718a in clone () from /lib/tls/libc.so.6
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 13 (Thread -1345459280 (LWP 23963)):
#0  0xb6483440 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#1  0xb6a73190 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0xb7942d79 in ThreadedFileWriter::DiskLoop (this=0x8161908)
    at ThreadedFileWriter.cpp:252
        size = 0
        written = 72
#3  0xb7941b27 in ThreadedFileWriter::boot_writer (wotsit=0x8161908)
    at ThreadedFileWriter.cpp:58
        fw = (ThreadedFileWriter *) 0x8161908
#4  0xb6480b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb633718a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 12 (Thread -1334875216 (LWP 23961)):
#0  0xb6485436 in __lll_mutex_lock_wait () from /lib/tls/libpthread.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#1  0xb6487394 in _L_mutex_cond_lock_26 () from /lib/tls/libpthread.so.0
No symbol table info available.
#2  0xb06f639c in ?? ()
No symbol table info available.
#3  0x07f6468f in ?? ()
No symbol table info available.
#4  0xb7f32ba0 in ?? ()
No symbol table info available.
#5  0x00005d99 in ?? ()
No symbol table info available.
#6  0x0810d878 in ?? ()
No symbol table info available.
#7  0x00000000 in ?? ()
No symbol table info available.
#8  0xb06f6328 in ?? ()
No symbol table info available.
#9  0xb64832e8 in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#10 0xb6a731e9 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
Previous frame inner to this frame (corrupt stack?)
#0  0xb67d7546 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
(gdb)


Hope this is helpful.  System was working very well with svn from a few days ago (so of course, I had to mess with it :)
Let me know if you need other logs / tests.

--Wendy
-- 
Wendy Seltzer
http://wendy.seltzer.org/blog/ 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mythtv.org/pipermail/mythtv-dev/attachments/20050929/92d360b4/attachment.htm


More information about the mythtv-dev mailing list