[mythtv] DVB: playback and live TV

Neil Symington neilsym_mythtv at blueyonder.co.uk
Sun Aug 24 02:56:50 EDT 2003


Hi Kenneth

My problem might have disappeared! Not sure why though. Here's what I did:

On Friday 22 Aug 2003 5:16 pm, Kenneth Aafloy wrote:

> Which version of QT are you using?
> The recomended is 3.2 as it contains a lot of fixes.

I downloaded qt version 3.2.0 but I haven't been able to fully compile it. The 
standard version is OK, but I can't get the multithreaded version to compile 
and link without errors. I'll keep trying, but for the moment I'm using 
version 3.1.1 supplied with Mandrake 9.1. I haven't been able to locate any 
3.2 rpms. 

> What happens if you try to wait a little longer here?
> "Backend Stuffed up in....."?

No, when it fails when it fails to start up, it just sits there and does 
nothing. But the times when it succeeds in showing the video, if I start 
changing channels it will fail, and then I get:
Backend stuffed up in RequestRingBufferBlock

> A missing message: 'filtering pids: <Same numbers as SetPID>'
> Indicates that the card is not feeding data to the backend.

The backtraces were with a previously recorded file. For live TV, I'll get 
messages like this:

Changing from None to WatchingLiveTV
[New Thread 196621 (LWP 7883)]
filtering pids: 600 601
Videostream: ASPECT: 16:9  Size = 720x576  FRate: 25 fps  BRate: 15.00 Mbit/s
Audiostream: Layer: 2  BRate: 256 kb/s  Freq: 48.0 kHz

I managed to get slightly more informative (I think) backtraces than before 
from mythfrontend. I've put two on the end of this email (one from live TV, 
one from a recording).

I applied the patch you sent but it didn't seem to make any difference - I 
couldn't play back recordings, and usually couldn't watch live TV. I don't 
understand what the patch is supposed to do, but I notice it deals with the 
PID selection. I took a look at my database, and my card was setup with 
use_ts=0. I tried setting that to 1, and it made a difference. Firstly, live 
TV no longer hung the frontend - I can change channels as many times as I 
want and I don't get the fault. Unfortunately, the picture was dreadful - it 
looks as if the computer can't keep up with the processing, and I get lots of 
error messages printed out. Watching recorded programs was perfect though. I 
then set use_ts back to 0, expecting the old problems to come back, but they 
haven't! With use_ts=0, live TV works perfectly (it plays at full speed), and 
so do recordings! :-)

I don't understand what has happened. ??? I don't think I changed anything, 
apart from use_ts. It doesn't matter whether I use your patched version or 
the CVS version of dvbchannels - the video works both ways. Could temporarily 
changing use_ts make some sort of other change to the setup?

I'm scared to change anything else now in case the problems come back.

Neil

*********************************
Playing back a recording in mythfrontend (screen is black):

Thread 2 (Thread 32769 (LWP 7879)):
#0  0x40bc6537 in poll () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x409c896e in __pthread_manager () from /lib/i686/libpthread.so.0
No symbol table info available.
#2  0x409c8bbb in __pthread_manager_event () from /lib/i686/libpthread.so.0
No symbol table info available.

Thread 1 (Thread 16384 (LWP 7856)):
#0  0x40b9ebe6 in nanosleep () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x00000001 in ?? ()
No symbol table info available.
#2  0x081634f1 in TV::Init(bool) (this=0x87e0ce8, createWindow=true)
    at tv_play.cpp:151
No locals.
#3  0x08081bdd in PlaybackBox::play(ProgramInfo*) (this=0xbfffeab0,
    rec=0x8558cf8) at playbackbox.cpp:1262
        tvrec = (ProgramInfo *) 0x87e1318
        db = (struct QSqlDatabase *) 0x84dc0d0
        tv = (class TV *) 0x87e0ce8
        doremove = 191
        doprompt = 255
#4  0x080819c0 in PlaybackBox::selected() (this=0xbfffeab0)
    at playbackbox.cpp:1236
No locals.
#5  0x080850b3 in PlaybackBox::keyPressEvent(QKeyEvent*) (this=0xbfffeab0,
    e=0xbfffe6d0) at playbackbox.cpp:1783
        handled = true
#6  0x405e6945 in QWidget::event(QEvent*) ()
   from /usr/lib/qt3/lib/libqt-mt.so.3

************************************************
mythfrontend while watching live (screen is black):

Thread 3 (Thread 16386 (LWP 8033)):
#0  0x40bc7ef1 in select () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x409b7024 in typeinfo for QMotifStyle ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.

Thread 2 (Thread 32769 (LWP 8032)):
#0  0x40bc6537 in poll () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x409c896e in __pthread_manager () from /lib/i686/libpthread.so.0
No symbol table info available.
#2  0x409c8bbb in __pthread_manager_event () from /lib/i686/libpthread.so.0
No symbol table info available.

Thread 1 (Thread 16384 (LWP 8027)):
#0  0x40b9ebe6 in nanosleep () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x00000001 in ?? ()
No symbol table info available.
#2  0x0806cfac in startTV() () at main.cpp:191
        db = (struct QSqlDatabase *) 0x84dc0d0
        tv = (class TV *) 0x85160f8
        timeout = {d = {jd = 2452875}, t = {ds = 83108794}}
        tryTV = false
        tryRecorder = false
        quitAll = false
        showDialogs = true
#3  0x0806d043 in TVMenuCallback(void*, QString&) (data=0x84cc558,
    selection=@0x8522410) at main.cpp:213
        sel = {static null = {
    static null = <same as static member of an already seen type>,
    d = 0x8437eb0, static shared_null = 0x8437eb0}, d = 0x85378d0,
  static shared_null = 0x8437eb0}
#4  0x400d9e41 in ThemedMenu::handleAction(QString&) (this=0x85222c0,
    action=@0x854bb1c) at themedmenu.cpp:1801
No locals.
#5  0x400d8a1c in ThemedMenu::keyPressEvent(QKeyEvent*) (this=0x85222c0,
    e=0xbffff2e0) at themedmenu.cpp:1649
        handled = false
        lastbutton = (ThemedButton *) 0x854bae0
        oldrow = 0

********************


More information about the mythtv-dev mailing list