Back to Home / #mythtv / 2003 / 08 / Prev Day | Next Day
#mythtv IRC Logs for 2003-08-06

00:44-!-jhurliman [] has joined #mythtv
00:44<jhurliman>anyone available that knows a bit about mainserver.cpp and it's messages?
00:47<Captain_Murdoch>what's the question, I might be able to answer.
00:49<jhurliman>n/m i figured it out, there's two different functions with else if blocks of messages
00:49<jhurliman>i had the wrong one apparently
00:49<jhurliman>well wait, maybe not...
00:50<jhurliman>ok see, if mythfrontend uses gContext->SendReceiveStringList(strlist); the backend receives it with MainServer::ProcessRequest
00:50<Captain_Murdoch>if you want a message from the frontend to backend put your stuff in ProcessRequest and add a function to libs/libmythtv/remoteutil.cpp
00:50<jhurliman>oops, i was playing with encoderlink.cpp
00:50<jhurliman>fix time
00:51<Captain_Murdoch>encoderlink is for master <-> slave backend stuff
00:51<jhurliman>but... there has to be a isTunerLocked() function in encoderlink no?
00:51<Captain_Murdoch>yeah. and a locktuner function, right.
00:52<jhurliman>but then LockTuner() and FreeTuner() would be in remoteutil.cpp... and they share bool locked; how?
00:52<Captain_Murdoch>no, locktuner is in encoderlink also. then in remoteutil.cpp you need a function that the frontend calls to request a tuner if there is one available on the frontend's local hostname.
00:53<jhurliman>where exactly is remoteutil.cpp btw?
00:53-!-hfb [] has joined #mythtv
00:53<Captain_Murdoch>frontend calls remoteutil's GetLocalTuner() which triggers a message in mainserver.cpp's ProcessRequest which calls soem function to determine if a tuner is available and if so it locks it using encoderlink.cpp's locktuner().
00:54<jhurliman>and when remoteutil.cpp sends gContext->SendReceiveStringList(strlist); it will be received by MainServer::ProcessRequest instead of MainServer::HandleRecorderQuery?
00:54<Captain_Murdoch>you need 2 new message types. a GET_TUNER and FREE_TUNER, so 2 new functions in remoteutil.cpp
00:54<jhurliman>oops switch those two functions around
00:55<Captain_Murdoch>handlerecorderquery is called from processrequest
00:56<jhurliman>ok, i think i have it now
00:57<Captain_Murdoch>mythfrontend will call your remoteutil.cpp's new GetLocalTuner(); that uses SendReceiveStringList to get the tuner's device from the backend using the new GET_TUNER message. Processrequest receives GET_TUNER message and calls some new FindAndAllocFreeTuner() function which calls encoderlink->LockTuner() and returns the device to the frontend.
00:59<jhurliman>that's what i was missing, was the FindAndAllocFreeTuner() function. i tried sticking GET_TUNER in HandleRecorderQuery accidentally
00:59<Captain_Murdoch>when done, mythfrontend calls new remoteutil's FreeLocalTuner() which uses SendReceiveStringList to send a new FREE_TUNER message which processRequest receives and calls some new function DeAllocTuner() which calls encoderlink->UnLockTuner() and returns status message to frontend.
01:01<jhurliman>should the FREE_TUNER message be sending the name/number/something of the tuner it wants to free, or just assume we can only lock and unlock a single tuner?
01:03<jhurliman>also, if you wanted to get fancy i think additional code in HandleGetFreeRecorder could prevent locked tuners from being handed out, but that's all way beyond my needs so someone else can pick up if they need it
01:04<Captain_Murdoch>you'll need to pass that both ways, to the frontend when you alloc and to the backend when you free. you probably can pass the cardinputID or cardID as well as the videodevice and audiodevice.
01:04<jhurliman>already done, ok good
01:04<jhurliman>i dont know how to get the video device name from just a cardinputnum, which is all (i think) i have to work with
01:05<jhurliman>unless the cardinputnum is referring to it's entry in the database table capturecards
01:05<Captain_Murdoch>use the cardinput table to convert a cardinputid into a cardid then you can get the video device name from that. it may be in a object/class somewhere. I don't know about that.
01:07<Captain_Murdoch>adding to MainServer::HandleGetFreeRecorder is as easy as adding && !elink->IsTunerLocked() to the end of the two "if" statements
01:08<Captain_Murdoch>the if statements that check !elink->IsBusy()
01:08<jhurliman>ooh good call
01:09<Captain_Murdoch>are you going to add it to all places that check if (enc->isLowOnFreeSpace()) in scheduler.cpp as well? those are pretty easy also. only 3 places that just need an if statement and a "continue;"
01:10<Captain_Murdoch>also, your new functions in mainserver.cpp need to call that scheduledrecording function I mentioned to update the database so the scheduler recomputes to take the tuner out of or put it back into the rotation.
01:10<jhurliman>see, with the current idea this is only going to be scalable to single backend. it doesn't pass a hostname that the tuner is located on
01:10<jhurliman>Captain_Murdoch: done for the latter
01:11<jhurliman>Captain_Murdoch: i did it encoderlink though, should i move it?
01:11<jhurliman>*it in
01:11<Captain_Murdoch>I would probably put it in the mainserver.cpp functions.
01:13<Captain_Murdoch>elink->getHostname(); is the hostname of an encoder so you know that and pbs->getHostname(); is the name of the frontend's hostname, so you always know what host wants an encoder so you can check for a free encoder (using elink->getHostname())
01:14<jhurliman>so i should also pass back elink->getHostname() with the capturecardnum and video device name correct?
01:14<jhurliman>might as well do it right the first time..
01:14<Captain_Murdoch>really, your FindAndAllocFreeTuner() function will be similar to the top part of MainServer::HandleGetFreeRecorder() since you need to go through the list of encoders findind a free one on the same host as the pbs->getHostname()
01:14<Captain_Murdoch>no, the frontend already knows its hostname, no need to pass it.
01:15<jhurliman>ohh, only on the same host as pbs->getHostname() ok
01:15<Captain_Murdoch>frontend basically says "give me a free local tuner if you have one" and backend says "/dev/video0" or "sorry, nothing free"
01:15<jhurliman>i thought it was going to query all servers for a free tuner, and pass back the device name + hostname
01:15<Captain_Murdoch>well, a remote tuner won't do any good to things like tvtime or xawtv
01:16<jhurliman>true, and i'll never use it so it's not going in!
01:16<Captain_Murdoch>doesn't even need to query servers, just loop through encoderList map like MainServer::HandleGetFreeRecorder does.
01:20<jhurliman>and use if (elink->isLocal())
01:21<Captain_Murdoch>nah, just search for elink->isConnected() && !elink->IsBusy && !elink->IsTunerLocked() && elink->getHostname() == pbs->getHostname()
01:22<Captain_Murdoch>so the tuner's backend is up (isConnected()) and the tuner isn't busy and isn't locked and the tuner's hostname = the hostname of the frontend needing a tuner.
01:24-!-hfb [] has quit ["Client exiting"]
01:24* blinegoes insane
01:25<jhurliman>ok, i thought that's what the isLocal() function was for but either way
01:25<Chutt>bline, take a break and figure out why it's not detecting the file type properly =)
01:25<Captain_Murdoch>I think isLocal checks to see if the tuner is local to the master but it doesnt' compare it to the frontend
01:25<jhurliman>oooh, ok will do the other way then
01:26<Captain_Murdoch>Peterson already saw my -dev message and fixed the sorting bug I found. :)
01:27<bline>Chutt: which libavcodec file does the detection?
01:27<Chutt>it's in libavformat/
01:28<Chutt>what's it output when you run things?
01:28<Chutt>the video file information bit at the top?
01:29<bline>a bunch of header errors and then
01:30<bline>unknown header 0
01:30<bline>Input #0, mpeg, from '/home/media/video//1045_20030805120000_20030805130000.nuv':
01:30<bline> Stream #0.0: Video: mpegvideo (hq), 480x480, 29.97 fps, 7000 kb/s
01:30<bline> Stream #0.1: Audio: rv10, 800 kb/s
01:30<Captain_Murdoch>Chutt, can you think of any other places a tuner would need to be excluded if it's been locked for non-Myth use other than MainServer::HandleGetFreeRecorder() and in the scheduler everwhere that it checks to see if ti has enough free space?
01:30<Chutt>can you send me the first meg or so of it?
01:30<bline>the errors?
01:31<Chutt>no, the file
01:31<bline>ok, one sec
01:31<jhurliman>Captain_Murdoch: i haven't grepped yet, what are the other instances that your free space check takes care of?
01:31<Captain_Murdoch>jhurliman: those are to make the scheduler ignore tuners on backends that don't have enough free space.
01:32<Captain_Murdoch>there are 3 places I think that it needs to check so you'll have to put in 3 if statements to check your encoderlink->IsTunerLocked()
01:33<jhurliman>i'll find them in a second, i was just wondering why 3? what other instances outside of the scheduler occur, other than HandleGetFreeRecorder()
01:34<bline>Well, I atleast know the problem with the lirc focus issue
01:34<Captain_Murdoch>handlegetfreerecorder isn't part of the scheduler. the scheduler does a bunch of work assigning jobs to tuners and shifting things around so just the way it works out there are 3 places that a show can be assigned to a tuner so it has to check in those 3 places.
01:35<bline>I wish there was a way to control the event mask Qt sends to X
01:35<jhurliman>ahh they are all inside the scheduling thread, thats what i was wondering
01:36<Captain_Murdoch>jhurliman: all 3 places have different ways of referring to the encoderlink object, so make sure you don't just cut-and-paste the "if" statement. :) that bit me when I first wrote the freespace patch.
01:39<Chutt>bline, uh, you need to do a make clean
01:39<Chutt>and it'll be fixed :p
01:42<Captain_Murdoch>jhurliman: just noticed something about isLocal. if the encoder is local, then elink->getHostname() is emtpy, that's why MainServer::HandleGetFreeRecorder does the check for isLocal() then calls gContext->GetHostName() if it's local. so you'll have to do similar.
01:43<bline>Chutt: ok, I'll try it
01:43<Chutt>bline, seriously, that's all it is
01:43<Chutt>there's an enum that's one off from what it should be
01:44<Chutt>bad dependency somewhere, something didn't get recompiled
01:44<bline>you feel like helping me with some Qt event structure problems? =)
01:45<jhurliman>Captain_Murdoch: ok thanks for the lookout
01:45<Chutt>not right now, no :p
01:45<Chutt>i'm trying to fix up xvmc support
01:45<jhurliman>Captain_Murdoch: wait, can i just say && elink->getHostname() == "" ?
01:45<bline>I've had my nose in the Qt source most of the night heh
01:45<Captain_Murdoch>jhurliman: don't think so or else it would be done in MainServer::HandleGetFreeRecorder. :)
01:46<bline>starting to think sending X events isn't such a bad idea
01:46<Captain_Murdoch>you should just copy the MainServer::HandleGetFreeRecorder function and hack out the stuff you don't need.
01:47<Chutt>bline, aside from it not working =)
01:47<Chutt>well, outside of x
01:47<bline>that or reimplementing all the Qt widgets
01:47<Chutt>can't it figure out what the focus widget is?
01:47<jhurliman>Captain_Murdoch: done. ;-p
01:49<mikegrb>jhurliman: congrats
01:50<jhurliman>mikegrb: on?
01:51<bline>windowActivationChange() called for every widget object when a QEvent::WindowDeactivate event is fired, which is in a X LeaveNotify event happens, that is why all the widgets that we use from Qt are disabled
01:51<jhurliman>mikegrb: getting this patch almost working? :)
01:51<mikegrb>completion? "Captain_Murdoch: done. ;-p"
01:52<bline>Qt needs something like QApplication::disableMouseEvents()
01:52<mikegrb>I've been working off and on on getting tvtime to access myth libraries (a wrapper for c access) so it can use the OSD and guide data
01:53<bigguy>bline still hacking on the lirc stuff?
01:53<jhurliman>mikegrb: now THAT would be interesting :)
01:53<bline>bigguy: yeah and it's painful
01:53<mikegrb>goes with what you are working on
01:53<bigguy>bline: I could tell
01:54<Chutt>mikegrb, you know there's a xine processing plugin based on tvtime, right?
01:54<bline>I could fix this easily in the Qt source :p
01:54<Captain_Murdoch>jhurliman: also, you'll notice that retval has in it the cardid of the tuner it found so that is already being passed as the first item in the strlist, you just need to add the devices.
01:54<mikegrb>Chutt: xine is c++?
01:54<Chutt>no, but what has that to do with anything?
01:54<mikegrb>I dunno <g>
01:55<Chutt>be easier to integrate something like that into mythtv..
01:55<mikegrb>I didn't want the processing so much as the higher quality due to not encoding and decoding for live tv
01:55<mikegrb>give up time shifting
01:55<Chutt>ah well
01:56<Chutt>it'd take all of a couple hours to make a straight capture/display thingie
01:56<Chutt>it's not exactly difficult :p
01:56<mikegrb>well humff
01:56<mikegrb>you know it would be a lot easier for sure
01:56<bline>Chutt: thanks, that fixed it.
01:57* blinecrawls under a rock
01:57<Chutt>post a followup to the list :p
01:57<bline>already did
01:57<Chutt>thanks =)
01:58<bline>Captain_Murdoch: you ever work with Qt event filters?
01:58-!-bigguy [] has quit ["leaving"]
01:59<Captain_Murdoch>I hadn't touched QT at all until I started working on myth, but no.
01:59<jhurliman>Captain_Murdoch: yes saw that, i'm setting retval in my function to the capturecardnum returned from my function in encoderlink.cpp, just because i made it return an int and might as well use it. same number though
02:00<Captain_Murdoch>ok, cool.
02:00<jhurliman>here's the question of the day though..
02:01-!-bigguy [] has joined #mythtv
02:01<jhurliman>i'm new to QMap, if i have the capturecardnum (pulled from the db) how do i correlate that to an EncoderLink object?
02:02<Chutt>is it QMap<int, EncoderLink *>?
02:02<jhurliman>nice, thanks
02:02<bline>QMap's are nice
02:03<Chutt>they're just like map<>
02:03<Captain_Murdoch>the encoderlist's keys are the cardid's
02:03<bline>ok, I should say templates are nice
02:06<jhurliman>ok, compiling. lets see how this works out
02:09* jhurlimanwill brb
02:21<mikegrb>I used procmail... but haven't in about 5 years
02:26<jhurliman>mainserver.cpp:1128: cannot convert `QMap<int, EncoderLink*>' to `EncoderLink*'
02:26<jhurliman> in assignment
02:26-!-phar0e [] has joined #mythtv
02:27<Captain_Murdoch>did you do EncoderLink *elink =;
02:27<phar0e>I cannot transcode due to "aborted because of cutlist update" I was messing around with the database and restarting it before the show ended, but the full recording seems to be there, just can't transcode
02:28<jhurliman>encoder = encoderList[query.value(0).toInt()];
02:28<Captain_Murdoch>put a .data() before the ;
02:28<Captain_Murdoch>I think.
02:29-!-bigguy [] has quit [Read error: 113 (No route to host)]
02:29-!-bigguy [] has joined #mythtv
02:30<jhurliman>->data() did it.mainserver.cpp:1127: no matching function for call to `QMap<int, EncoderLink*>
02:30<jhurliman> ::data()'
02:30<jhurliman>oops, umm disregard that part about "->data() did it."
02:31<jhurliman>.data() is for iterators, i need to look up the docs on this QMap business
02:32-!-_kch_ [] has joined #mythtv
02:33<Captain_Murdoch>try encoder = (*encoderList)[query.value(0).toInt()]; that's an example from scheduler.cpp
02:33<Captain_Murdoch>that may be wrong also actually. brain freeze..
02:34<Captain_Murdoch>actually, it does look correct. encoderList is a pointer same as tvList
02:34<Chutt>it's not a good idea to blindly look in the map like that
02:35<Chutt>should use a find first
02:36<Captain_Murdoch>and find returns the iterator which can use .data(). makes sense.
02:36<Captain_Murdoch>I shouldnt' give advice at 2:40am. :)
02:37<jhurliman>east coast?
02:39<jhurliman>encoder = encoderList->find(query.value(0).toInt()).data();
02:39<jhurliman>that did the trick
02:40<Chutt>you have to test against encoderList->end()
02:40<Captain_Murdoch>probably need to check the result of find.
02:40<jhurliman>Chutt: ?
02:40<Chutt>you don't know that that exists.
02:40<jhurliman>well i did an if(encoder) does that work?
02:40<Captain_Murdoch>jhurliman: look for "as a remote ringbuffer" in mainserver.cpp and go down 3-4 lines to see how to do it.
02:43<Captain_Murdoch>make sure you lock around ScheduledRecording::signalChange(m_db); as well with dblock.lock(); and dblock.unlock(); an example of that is just a few lines above the "as a remote ringbuffer" line.
02:44<Chutt>ah well
02:44<Chutt>i think i'll check this in
02:44<Chutt>it's mostly ifdef'd out =)
02:45<Captain_Murdoch>the xvmc stuff?
02:45<Chutt>doesn't work at all, basically
02:45<Chutt>well, it runs
02:45<Chutt>but it has problems
02:46<jhurliman>Chutt: what's xvmc?
02:46<Chutt>crappy api to some mpeg2 decoding accel
02:46<Chutt>basically only supported on gf4+ cards
02:46<Chutt>in X, at least
02:47<jhurliman>oh yeah i was wondering about Qt/Embedded, it seems nvidia's acceleration is all written for X, so would you lose all that with directfb?
02:47<Chutt>unless you're using a g400 or so
02:47<Chutt>directfb isn't for you =)
02:48<Chutt>really, that's the only thing that's supported well
02:49<Chutt>the nvidia stuff's partially there
02:49<jhurliman>i'd start using g400 cards in a heartbeat if micro-atx boards didnt already have onboard video
02:49<jhurliman>why use them or why not?
02:49<Chutt>why use em?
02:50<Chutt>i dunno, it's just that if you're going to be doing video stuff, you've _got_ the cpu for any tiny little X overhead
02:50<jhurliman>g400 has tv-out, with a dongle for s-video and rca. they have great linux support, and still have a head for breaking out into RGBHV or converting to some other hidef signal
02:51<Chutt>nvidia cards are actually supported by the company that makes em, though
02:51<jhurliman>custom mplayer drivers, although i havent tried them so i cant say if it makes a difference at all or not. x is kind of funky for switching resolutions, although i have it roughly hacked in with xrandr
02:51<jhurliman>im very happy with the nvidia drivers
02:52<Chutt>14 minutes to sync 350MB of data to the neuros
02:52<Chutt>really needs the usb2 upgrade :(
02:57<jhurliman>anyone using a pinnacle pctv pro?
02:58<jhurliman>man, i think that is the worst tv card ever constructed. in a windows machine the signal is bad, in linux with old bttv it freezes. with new bttv it's a horrendously awful signal
03:00<jhurliman>well it looks like this locktuner business works
03:02<Captain_Murdoch>you have the frontend stuff done as well? or how are you testing locking/unlocking?
03:02<jhurliman>mikegrb: i replaced it, now it's lying in wait for some unlucky eBayer that didnt do his homework on tv cards
03:02<jhurliman>Captain_Murdoch: it's all done, right now i have a system(QString("watchtv %1).arg(videodevice)); hard-coded in
03:03<jhurliman>and i threw a bash script in my path. this needs to be a setting but i've written enough gui code this week so im putting it off :)
03:04<mikegrb>jhurliman: settings are easy <g> if you haven't done it tommorow I can submit a patch for that after it makes it into cvs
03:04<mikegrb>*really* easy if you haven't added any settings before you might should look at them, you might be suprised
03:05<jhurliman>added? gah, the first module i wrote was a replacement for all the settings in mythtv
03:06<mikegrb>oh... good job then
03:06<Captain_Murdoch>would be nice to test by putting a PrintList() somewhere in the scheduler so that you could see that when it reschedules all future recordings are set to not record since there's no tuner free, then when you unlock it will reschedule and show you they are scheduled on the now-free tuner.
03:06<jhurliman>then i converted over to using standard MythWindow or whatever it is
03:07<mikegrb>oh perhaps I misunderstood you
03:07* Captain_Murdochthinks there's a little confusion going on right now.
03:08<mikegrb>jhurliman: I was refering to how stuff is setup for the setup screens... eg globalsettings.cpp (I think that's it)
03:08<jhurliman>i made a module called MythSettings that only includes the things you HAVE to set up, targeted at the "i dont know how to program my vcr" demographic
03:09<jhurliman>mikegrb: i wrote MythSettings using the settings wizard class(es), then switched over to using standard mythtv windows since i wanted to do some funky stuff with it
03:09<Captain_Murdoch>jhurliman: after the line with "Found changes in the todo list." in scheduler.cpp, temporarility add a PrintList(); for debugging to see that the scheduler won't use the locked tuners.
03:09<Chutt>jhurliman, i like how you've contributed that back
03:10<jhurliman>Chutt: it's not done yet!
03:10<phar0e>so no one knows why I am getting that error when I try to transcode?
03:10<Chutt>phar0e, transcoding isn't reliable yet.
03:10<Chutt>it's a 'don't use unless you're willing to go figure out the code' type feature for now
03:10<jhurliman>i'm fixing bugs in it right now along with this business, if you want buggy code:
03:11<bline>and doesn't work on pvr-250 mpegs
03:11<phar0e>it has always worked before, I think because the database shutdown before the show was done had something to do with it.. does it do something special on the database to say "this show is complete" or something to that affect?
03:11<jhurliman>oops wrong url, hold on
03:12<Chutt>phar0e, don't try to rephrase your question :p
03:12<jhurliman> and
03:13<jhurliman>(URLs subject to radical code modifications without versioning or changelog)
03:13<Chutt>i'm not going to look at it right now
03:14<jhurliman>when i get things tested and working i'm going to post it and the other modules to the mailing list, but i'm not doing version control or anything right now so it would be a mess for me to release now
03:16<jhurliman>back to tuner locking, Captain_Murdoch: won't the scheduler be using locked tuners? but inside the scheduling thread it cancels individuals recordings when the tuner is locked?
03:17<FryGuy>is there any way to tell which options are being used for the bttv modules after it's inserted?
03:18<Captain_Murdoch>jhurliman: no, the scheduler won't use a locked tuner if you added those "if (blah->isTunerLocked()) continue;" checks. I don't know what cardid will show up in the PrintList though if you only have 1 card. they mght all show up as conflicts but with cardid = 1;
03:19<jhurliman>hmm lets find out
03:20<Captain_Murdoch>first number after the date in the printlist output indicates if that item is a conflict or not.
03:22<jhurliman>well if this is going to go in to cvs we should talk about user interface for a second. right now i added a button to tvmenu.xml with text "Passthrough Mode", any other suggestions?
03:23<jhurliman>the generic term would be "Launch External TV Command"...
03:25<jhurliman>--- print list start ---
03:25<jhurliman>Title Chan ChID StartTime S I C -- C R D S Rank
03:25<jhurliman>--- print list end ---
03:25<Captain_Murdoch>I wonder if it's just best to add an EXECTV action like EXEC. EXECTV would do your QString.arg() thing so I could have something like this in my mainmenu.xml file <action>EXECTV tvtime %1</action> where the %1 gets replaced by the video device. this would allow mutiple items.
03:26<jhurliman>that would be the best way to do it i think
03:27<Captain_Murdoch>so printlist didn't print anything once the tuner was locked?
03:27<jhurliman>Captain_Murdoch: oh, umm i guess i should schedule a recording then try that printlist... hold on
03:27<jhurliman>its getting late for me
03:28<Captain_Murdoch>ditto, I need to go soon, my wife was just calling for me earlier telling me what time it is. :)
03:28<Captain_Murdoch>curious to know if it works though.
03:28<Captain_Murdoch>(the patch, not her calling)
03:31<jhurliman>--- print list start ---
03:31<jhurliman>Title Chan ChID StartTime S I C -- C R D S Rank
03:31<jhurliman>Channel 3 KAYU 3 1003 "Wed Aug 6 00:38:00 2003" 1 1 1 -- 0 1 0 0 0
03:31<jhurliman>--- print list end ---
03:31<jhurliman>it's working except my freetuner function is failing for some reason, gotta check that out
03:31<Captain_Murdoch>so what did it look like after it locked?
03:31<Captain_Murdoch>did it show as a conflict?
03:32<jhurliman>recompiling hold on just a sec
03:33<jhurliman>i think it was the same ouput, im testing again
03:33<Captain_Murdoch>also might want to see if you can think of a way to show a dialog or something if there's no free tuner to use.
03:34<jhurliman>yeah same output :-\
03:38<Captain_Murdoch>if you look in scheduler.cpp around line 1196 or so, you'll see another check for nexttv->isLowOnFreeSpace()). you probably shoudl add another if statement there checking if (recording && nexttv->IsTunerLocked()) and print out a message saying why the recording was skipped. just copy that block and change the IF statement and the message printed. that will suppress any recordings if you only have one tuner and the scheduler
03:38<Captain_Murdoch>dule around a locked tuner.
03:39<jhurliman>Captain_Murdoch: got that one
03:40<jhurliman>so if there's less than 35 seconds left it will print out a suppressed message
03:40<jhurliman>i'll do that MythPopupBox tomorrow though
03:40<Captain_Murdoch>yeah. that's there to catch single-tuner systems since all shows get scheduled on the first tuner.
03:40<jhurliman>so should i clean the patch up and submit it tonight, or add the gui and submit tomorrow?
03:44-!-mikegrb [] has quit []
03:44-!-jfm_ [] has quit []
03:44-!-sc00p [] has quit []
03:44-!-Edgan [] has quit []
03:44-!-ca1vin [] has quit []
03:44-!-KikoV [] has quit []
03:44-!-bigguy [] has quit []
03:44-!-FryGuy [] has quit []
03:44-!-Viddy [] has quit []
03:44-!-fulbert_ [] has quit []
03:44-!-term [] has quit []
03:44-!-_kch_ [] has quit []
03:44-!-phar0e [] has quit []
03:44-!-jhurliman [] has quit []
03:44-!-bline [] has quit []
03:44-!-rkulagow__ [] has quit []
03:44-!-Justin_ [] has quit []
03:44-!-_moegreen [] has quit []
03:44-!-jkolb_ [] has quit []
03:44-!-rizzi [] has quit []
03:44-!-mdz [] has quit []
03:44-!-rkulagow [] has quit []
03:44-!-Captain_Murdoch [] has quit []
03:44-!-merf [] has quit []
03:44-!-GreyFoxx [] has quit []
03:44-!-radsaq [] has quit []
03:44-!-yebyen [] has quit []
03:44-!-ahbritto [] has quit []
03:44-!-poptix [] has quit []
03:45-!-rkulagow__ [] has joined #mythtv
03:45-!-mikegrb [] has joined #mythtv
03:45-!-bigguy [] has joined #mythtv
03:45-!-FryGuy [] has joined #mythtv
03:45-!-fulbert_ [] has joined #mythtv
03:45-!-term [] has joined #mythtv
03:45-!-ca1vin [] has joined #mythtv
03:45-!-Edgan [] has joined #mythtv
03:45-!-jfm_ [] has joined #mythtv
03:45-!-sc00p [] has joined #mythtv
03:45-!-Viddy [] has joined #mythtv
03:45-!-KikoV [] has joined #mythtv
03:47-!-_kch_ [] has joined #mythtv
03:47-!-phar0e [] has joined #mythtv
03:47-!-bline [] has joined #mythtv
03:47-!-rkulagow [] has joined #mythtv
03:47-!-Justin_ [] has joined #mythtv
03:47-!-_moegreen [] has joined #mythtv
03:47-!-jkolb_ [] has joined #mythtv
03:47-!-rizzi [] has joined #mythtv
03:47-!-GreyFoxx [] has joined #mythtv
03:47-!-merf [] has joined #mythtv
03:47-!-ahbritto [] has joined #mythtv
03:47-!-radsaq [] has joined #mythtv
03:47-!-yebyen [] has joined #mythtv
03:47-!-Captain_Murdoch [] has joined #mythtv
03:47-!-poptix [poptix@2001:470:1f00:623:0:0:0:2] has joined #mythtv
03:47-!-mdz [] has joined #mythtv
03:49-!-choenig [] has joined #mythtv
03:51-!-rkulagow__ [] has quit [Killed by ()]
03:51-!-rkulagow__ [] has joined #mythtv
04:02<-- phar0ehas quit ()
04:13-!-mikegrb [] has quit []
04:13-!-mikegrb [] has joined #mythtv
04:14-!-sc00p [] has quit []
04:14-!-jfm_ [] has quit []
04:14-!-Edgan [] has quit []
04:14-!-ca1vin [] has quit []
04:14-!-KikoV [] has quit []
04:14-!-rkulagow__ [] has quit []
04:14-!-Viddy [] has quit []
04:14-!-term [] has quit []
04:14-!-fulbert_ [] has quit []
04:14-!-FryGuy [] has quit []
04:14-!-bigguy [] has quit []
04:14-!-rkulagow__ [] has joined #mythtv
04:14-!-bigguy [] has joined #mythtv
04:14-!-FryGuy [] has joined #mythtv
04:14-!-KikoV [] has joined #mythtv
04:14-!-Viddy [] has joined #mythtv
04:14-!-sc00p [] has joined #mythtv
04:14-!-jfm_ [] has joined #mythtv
04:14-!-Edgan [] has joined #mythtv
04:14-!-ca1vin [] has joined #mythtv
04:14-!-term [] has joined #mythtv
04:14-!-fulbert_ [] has joined #mythtv
04:15-!-choenig [] has quit [Remote closed the connection]
04:49-!-mikegrb [] has quit []
04:50-!-jfm_ [] has quit []
04:50-!-sc00p [] has quit []
04:50-!-Edgan [] has quit []
04:50-!-ca1vin [] has quit []
04:50-!-KikoV [] has quit []
04:50-!-rkulagow__ [] has quit []
04:50-!-Viddy [] has quit []
04:50-!-fulbert_ [] has quit []
04:50-!-term [] has quit []
04:50-!-FryGuy [] has quit []
04:50-!-bigguy [] has quit []
04:50-!-rizzi [] has quit []
04:50-!-jkolb_ [] has quit []
04:50-!-_moegreen [] has quit []
04:50-!-bline [] has quit []
04:50-!-Justin_ [] has quit []
04:50-!-_kch_ [] has quit []
04:50-!-mdz [] has quit []
04:50-!-Captain_Murdoch [] has quit []
04:50-!-rkulagow [] has quit []
04:50-!-merf [] has quit []
04:50-!-yebyen [] has quit []
04:50-!-radsaq [] has quit []
04:50-!-GreyFoxx [] has quit []
04:50-!-ahbritto [] has quit []
04:50-!-poptix [] has quit []
04:50-!-mikegrb [] has joined #mythtv
04:50-!-fulbert_ [] has joined #mythtv
04:50-!-term [] has joined #mythtv
04:50-!-ca1vin [] has joined #mythtv
04:50-!-Edgan [] has joined #mythtv
04:50-!-jfm_ [] has joined #mythtv
04:50-!-sc00p [] has joined #mythtv
04:50-!-Viddy [] has joined #mythtv
04:50-!-KikoV [] has joined #mythtv
04:50-!-FryGuy [] has joined #mythtv
04:50-!-bigguy [] has joined #mythtv
04:50-!-rkulagow__ [] has joined #mythtv
04:50-!-mdz [] has joined #mythtv
04:50-!-poptix [poptix@2001:470:1f00:623:0:0:0:2] has joined #mythtv
04:50-!-Captain_Murdoch [] has joined #mythtv
04:50-!-yebyen [] has joined #mythtv
04:50-!-radsaq [] has joined #mythtv
04:50-!-ahbritto [] has joined #mythtv
04:50-!-merf [] has joined #mythtv
04:50-!-GreyFoxx [] has joined #mythtv
04:50-!-rizzi [] has joined #mythtv
04:50-!-jkolb_ [] has joined #mythtv
04:50-!-_moegreen [] has joined #mythtv
04:50-!-Justin_ [] has joined #mythtv
04:50-!-rkulagow [] has joined #mythtv
04:50-!-bline [] has joined #mythtv
04:50-!-_kch_ [] has joined #mythtv
05:07-!-sfr [] has joined #mythtv
05:12-!-sfr [] has quit ["Leaving"]
05:13-!-Aridhol [] has joined #mythtv
05:13<Aridhol>are there any capture cards that will work with mythTV and direct TV
05:42-!-KikoV is now known as KikoV|work
07:10-!-_kch_ [] has quit ["Terminando cliente"]
07:17-!-FryGuy [] has quit [" HydraIRC rocks! -> <-"]
07:18-!-_moegreen [] has quit [Read error: 60 (Operation timed out)]
07:20-!-_kch_ [] has joined #mythtv
07:51-!-jkolb [] has joined #mythtv
08:02-!-_moegreen [] has joined #mythtv
09:43-!-Aridhol [] has quit []
09:43-!-_moegreen [] has quit [Read error: 104 (Connection reset by peer)]
09:43-!-jkolb [] has quit [Read error: 104 (Connection reset by peer)]
09:44-!-Aridhol [] has joined #mythtv
10:02-!-jkolb [] has joined #mythtv
10:02-!-_moegreen [] has joined #mythtv
10:06-!-choenig [] has joined #mythtv
10:28-!-_kch_ [] has quit ["Terminando cliente"]
10:42-!-choenig [] has quit [Remote closed the connection]
10:45-!-Captain_Murdoch_ [] has joined #mythtv
11:06-!-schultmc [] has joined #mythtv
11:22-!-hfb [] has joined #mythtv
11:30-!-dopez [] has joined #mythtv
11:32-!-mecraw [~mecraw@] has joined #mythtv
11:52-!-Drikus [] has joined #mythtv
12:34-!-PeteCool [] has joined #mythtv
12:34-!-jkolb [] has quit [Read error: 104 (Connection reset by peer)]
12:56-!-choenig [] has joined #mythtv
13:01-!-keturn [] has joined #mythtv
13:02-!-PeteCool [] has quit ["Leaving"]
13:03-!-robertj [] has joined #mythtv
13:05<robertj>hey all. I'v got hitching audio that only gets worse when I set it to uncompressed. hdparm -d /dev/hda is done, any other ideas?
13:09<robertj>do I need to renice stuff?
13:25-!-choenig [] has quit [Remote closed the connection]
13:26-!-sideshow [] has joined #mythtv
13:30-!-choenig [] has joined #mythtv
13:31<robertj>hrmm, my myth recording is in fast-forward when I play it back
13:31<Chutt>you're dropping frames.
13:32<robertj>don't see any whining in mythbackend
13:32<Chutt>it doesn't.
13:32<robertj>it stutters during live playback though
13:33<Chutt>probably because you're dropping frames :p
13:33<robertj>not sure why
13:33<robertj>I've got a 2400+ with 512 megs of ram
13:33<robertj>what settings would you advise I use?
13:33<Chutt>slow disk?
13:33<robertj>Chutt: possibility. how can I measure that?
13:33<Chutt>hdparm -tT /dev/hda
13:33<Chutt>or whatnot
13:34<Chutt>did you touch the video settings at all?
13:34<robertj>Chutt: yeah, I got little hitches no matter what
13:34<robertj> Timing buffer-cache reads: 128 MB in 0.41 seconds =312.20 MB/sec
13:34<robertj> Timing buffered disk reads: 64 MB in 2.27 seconds = 28.19 MB/sec
13:34<robertj>is that acceptable?
13:34<Chutt>yeah, that's fine
13:35<robertj>480x480, mpeg4, bitrate 2200 max quality 2 min quality 15 max quality diff 3. Scale for frame size. 44100 MP3 quality 7
13:35<robertj>cpu pushes 35
13:35<Chutt>yeah, should be perfectly fine with that
13:36<robertj>Chutt: does myth .9 support native alsa?
13:36<robertj>I think I might try cvs then
13:36<Chutt>why are you using the native alsa stuff?
13:37<Chutt>that's not really guaranteed to work that well
13:37<robertj>i'd like to try it just in case
13:37<robertj>i want to run CVS anyway probably because I want mythdvd and mythweb2
13:38<robertj>maby I should get this fixed first though
13:38<robertj>I dunno
13:38<Chutt>well, it's worth a try
13:38<Chutt>i have no idea what the problem could be
13:39<robertj>is there any way I can fool myth into running without sound?
13:41<robertj>I'm thinking it's probably a driver problem
13:41<robertj>but im running the latest alsa driver
13:41<Chutt>eh, i dunno
13:42<Chutt>how much are you sharing irqs?
13:42<robertj>a good bit
13:42<Chutt>that might be something to try and change
13:42<robertj>The most telltale sign is that every program has sound keep playig the last bit whenever the sound cuts out
13:42<Chutt>get stuff on its own irq
13:42<Chutt>what soundcard?
13:43<robertj>8233a actualy
13:43<Chutt>crap, basically? =)
13:43<robertj>onboard 5.1
13:43<robertj>which is important when you have a mono tv card
13:43<Chutt>i had a lot of problems with that driver on my epia-m, but they're sorta fixed with cvs alsa and a module option
13:43<robertj>ogle doesn't do that
13:44<robertj>but xmms, kde's start sound, and myth music do
13:44<Chutt>that's weird.
13:45<robertj>does that sound like an irq problem to you?
13:46<Chutt>it _may_ be, but i do agree that it's most likely a driver problem
13:47<robertj>and what's really a pain is that noone has authorized or denied my posting to alsa-user
13:47<robertj>I need to just join an post to alsa-dev probably, even though I shouldn't have too
13:47<Chutt>i do that on the mythtv lists
13:47-!-hfb [] has quit []
13:47-!-jkolb_ [] has quit []
13:47-!-rizzi [] has quit []
13:47-!-bline [] has quit []
13:47-!-Justin_ [] has quit []
13:48<Chutt>i get too much spam on them to wade through the legitimate postings
13:48<Chutt>and it's nice to make sure that the person's subscribed so they can respond and i don't have to authorize it again
13:50-!-hfb [] has joined #mythtv
13:50-!-bline [] has joined #mythtv
13:50-!-Justin_ [] has joined #mythtv
13:50-!-rizzi [] has joined #mythtv
13:50-!-jkolb_ [] has joined #mythtv
13:50-!-chmod_700 [] has joined #mythtv
13:50-!-irish [] has joined #mythtv
13:51<chmod_700>is isaac around? this is trey having the recording probs from the user list
13:51<Chutt>that's me
13:51<chmod_700>thanks for the lightning fast replies
13:51<Snow-Man>And the lightning fast list!
13:51<robertj>What does the default recording settings do anyway
13:52<chmod_700>i hope i don't sound like a dick, but why isn't there more verbose logging options? mythbackend is one of the quietest servers i've ever run
13:52<Chutt>chmod_700, so, just to verify, can you put in a 'cout << "recording list size: " << recordingList.size() << endl;
13:52<chmod_700>Chutt: will do brb
13:52* robertjwaits for the submit a patch message ;)
13:52<Chutt>chmod_700, i never bothered to add more debug statements
13:53<chmod_700>Chutt: where should i insert that line?
13:53<Chutt>before the if (recordingList.size() > 0)
13:53<Chutt>same place
13:54<irish>anyone using hwmjpeg and recent CVS?
13:54<Chutt>irish, doubtful. i haven't touched that code in about 6 months.
13:56<irish>mines gone weird since getting the latest, about 9 child processes and massive CPU
13:56<Chutt>first thing to do would be to see what's using all the cpu
13:57<irish>it's one of the backends, not sure if it's the parent of the or not tho
13:57<Chutt>right, but what's it doing in there.
13:57<Chutt>easiest thing to do is just compile for debugging, run the backend in gdb
13:57<irish>err, u'r gonna ask me for a gdb trace aren't you?
13:57<Chutt>get it to do that
13:57<robertj>Chutt: the video size doesn't make any difference but it goes from unwatchable to a hitch every 5 seconds or so when goging from 44100 to 32000
13:57<robertj>can I knock it down one more step to sample manually?
13:58<Chutt>then break and look at what that thread is doing
13:58<Chutt>so, yeah, i'm going to ask for a gdb trace =)
13:58<Chutt>robertj, naw -- the code doesn't work well for < 32000
13:58<robertj>Chutt: not well or not at all?
13:58<irish>ok, I'm just recompiling an older CVS at the minute to see if I could find when it started
13:58<Chutt>not well at all
13:58<Chutt>irish, ah, ok, that works too
14:01<robertj>why would cutting down from 44100 to 32000 matter?
14:01<Chutt>doing less
14:01<Chutt>but, it shouldn't matter at all with that speed cpu
14:01<robertj>but its better at 640x480 with 3200 than 320x240 at 44100
14:01<Chutt>try the irq stuff
14:02<Chutt>see if that helps
14:02<Chutt>generally easy to do
14:02<robertj>Chutt: can i just set irq=blah in modules.conf or something?
14:02-!-jkolb [] has joined #mythtv
14:02<Chutt>mess around in the bios =)
14:02<chmod_700>Chutt: still compiling (i did a make clean to be sure)
14:02<robertj>I think I lookd there and didn't see anything. I'll look again
14:03<mdz_>depends on your bios; some let you manually set the irq for every onboard and PCI device, others don't let you do anything
14:03<mdz_>don't buy the latter
14:04<Chutt>there's generally something that spreads things out a bit
14:04<Chutt>especially if you turn off on-board crap that's not being used
14:05<mdz_>that helps too
14:05<mdz_>and toggling whatever "plug and play" options happen to be present
14:05<mdz_>not that they ever do the same thing in two different bioses
14:05<mdz_>I hate PC hardware
14:05<mdz_>nothing works anymore
14:06<irish>if the bios option say "plug and play OS" it should be off, it's a fudge for windows
14:06<chmod_700>so does anyone have everything working well on Gentoo?
14:06<Chutt>chmod_700, oh, can you email me (off list) your channel table and like 20 lines of your program table?
14:06<chmod_700>Chutt: sure thing
14:07<robertj>Chutt: also there is a major delay whenver I change channels, like 5 seconds
14:07<chmod_700>i should mention that the first run of xmltv grabbed 2 channel 19's
14:07<robertj>i think its that same problem with sound continuing to paly for osme reason
14:07<chmod_700>i commented one out in the xmltv config file
14:07<Chutt>robertj, yeah, that's the sound.
14:08<robertj>and now everything is in super slow mo after I changed channels
14:09<robertj>and there is absolutely no sound
14:11<robertj>Chutt: what output should I send to the list that could be helpful?
14:11<Chutt>nothing, really.
14:12<robertj>I just wonder if it is an irq issue why it would only have problems whenever a stream was cut off
14:12<robertj>well major problems anyway
14:12<robertj>like mythmusic transitions from one track to another without a hitch
14:13-!-kja [] has joined #mythtv
14:16<Chutt>robertj, well, mythmusic does gapless playback -- it's not waiting on the soundcard for anything
14:16-!-keturn [] has quit [Read error: 110 (Connection timed out)]
14:18<chmod_700>Chutt: i sent you the requested DB tables
14:19-!-bigguy [] has quit ["bbiaf"]
14:19-!-bigguy [] has joined #mythtv
14:24<chmod_700>Chutt: will you be on this evening? I have to take my woman to doctor
14:26<chmod_700>let me know if i'm pestering you, I'm just eager to get to the bottom of this
14:27<Chutt>naw, you're fine so far
14:27<Chutt>if i were annoyed, you'd know :p
14:27<chmod_700>do you know of anyone else using gentoo?
14:27<Chutt>quite a few people
14:27<chmod_700>ok good
14:28<chmod_700>you've got quite a cool project going here, I'd like to offer some of my skills at some point (mostly perl/php/mysql/html/css)
14:28<chmod_700>and i know enough C++ to get me into trouble
14:32<chmod_700>uh oh
14:32<chmod_700>can i post a compiler error here?
14:32<chmod_700>make[2]: Entering directory `/usr/local/src/cvs-mythtv/mythtv/programs/mythfrontend'
14:32<chmod_700>g++ -c -pipe -Wall -W -O3 -march=athlon -fomit-frame-pointer -D_REENTRANT -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr/local\" -DMMX -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/usr/qt/3/mkspecs/linux-g++ -I. -I../../libs/libmythtv -I../../libs -I../../libs/libmyth -I../../../../../include -I/usr/qt/3/include -o playbackbox.o playbackbox.cpp
14:32<chmod_700>playbackbox.cpp: In member function `void PlaybackBox::updateVideo(QPainter*)':
14:32<chmod_700>playbackbox.cpp:478: `VideoFrame' undeclared (first use this function)
14:33<chmod_700>playbackbox.cpp:478: (Each undeclared identifier is reported only once for each
14:33<chmod_700> function it appears in.)
14:33<chmod_700>playbackbox.cpp:478: `frame' undeclared (first use this function)
14:33<chmod_700>make[2]: *** [playbackbox.o] Error 1
14:33<chmod_700>make[2]: Leaving directory `/usr/local/src/cvs-mythtv/mythtv/programs/mythfrontend'
14:33<chmod_700>make[1]: *** [sub-mythfrontend] Error 2
14:33<chmod_700>make[1]: Leaving directory `/usr/local/src/cvs-mythtv/mythtv/programs'
14:33<chmod_700>make: *** [sub-programs] Error 2
14:33<chmod_700>this right now CVS
14:33<Chutt>just the error.
14:33<Chutt>fixed by adding an #include "frame.h" to the top?
14:34-!-Aridhol [] has quit []
14:34<Chutt>dunno then
14:34<Chutt>compiles fine here
14:34<chmod_700>i added #include "frame.h" to playbackbox.cpp
14:36<kja>isaac has been working on that part lately, sure your build is clean?
14:37<chmod_700>yea i just made clean, and cvs update'd
14:38<chmod_700>ill try deleteing the whole source tree and remaking it later on
14:38<kja>cvs -fdC;make distclean;make install ?
14:38<chmod_700>do i do that inside the mythtv cvs dir?
14:38<irish>Chutt: I have a pretty large backtrace for this mjpeg thing now
14:38<Chutt>email it to me
14:39<kja>yup, will clear out anything you have changed tho..
14:39<chmod_700>what does "P" mean when cvs updating?
14:39<chmod_700>i see
14:40<chmod_700>i gotta go, bbiab
14:40* chmod_700is away: doctor
14:41<Chutt>irish, try turning off teletext in the setup program, first
14:42<Chutt>and, which thread was taking cpu?
14:45<irish>it seems to be a random slave?
14:45<Chutt>which thread #?
14:45<Chutt>in that backtrace?
14:46<irish>erm, donno, how do I find out?
14:46<Chutt>you were supposed to look at top or whatnot before interrupting the program =)
14:47<irish>oh, oops
14:48<irish>oh dear, I've wasted your time, looks like my fault
14:49<irish>I got an error saying can't find dev/vbi0, so I just symliked it to dev/null
14:49<irish>doh, sorry
14:49<Chutt>so it was in a loop reading from that
14:49<Chutt>since it could do so constantly
14:49<irish>yup, I guess so
14:50<irish>thanks for your help :)
14:50<Chutt>works now?
14:50<irish>yeah, like a charm :)
14:52-!-Aridhol [] has joined #mythtv
14:52<Chutt>uh, didn't i respond to this exact message kevin bowen sent last night?
15:05-!-bline [] has quit ["Client exiting"]
15:20-!-kja [] has quit [Remote closed the connection]
15:20-!-sideshow [] has quit [Read error: 104 (Connection reset by peer)]
15:24-!-jkolb_ [] has quit []
15:24-!-rizzi [] has quit []
15:24-!-Justin_ [] has quit []
15:24-!-hfb [] has quit []
15:24-!-Aridhol [] has quit []
15:24-!-mdz [] has quit []
15:24-!-jkolb [] has quit []
15:24-!-Drikus [] has quit []
15:24-!-mecraw [] has quit []
15:24-!-schultmc [] has quit []
15:24-!-Captain_Murdoch_ [] has quit []
15:24-!-_moegreen [] has quit []
15:24-!-rkulagow [] has quit []
15:24-!-radsaq [] has quit []
15:24-!-Captain_Murdoch [] has quit []
15:24-!-yebyen [] has quit []
15:24-!-merf [] has quit []
15:24-!-GreyFoxx [] has quit []
15:24-!-ahbritto [] has quit []
15:24-!-poptix [] has quit []
15:25-!-Aridhol [] has joined #mythtv
15:25-!-jkolb [] has joined #mythtv
15:25-!-Drikus [] has joined #mythtv
15:25-!-mecraw [~mecraw@] has joined #mythtv
15:25-!-schultmc [] has joined #mythtv
15:25-!-Captain_Murdoch_ [] has joined #mythtv
15:25-!-_moegreen [] has joined #mythtv
15:25-!-rkulagow [] has joined #mythtv
15:25-!-Captain_Murdoch [] has joined #mythtv
15:25-!-yebyen [] has joined #mythtv
15:25-!-radsaq [] has joined #mythtv
15:25-!-ahbritto [] has joined #mythtv
15:25-!-merf [] has joined #mythtv
15:25-!-GreyFoxx [] has joined #mythtv
15:25-!-rkulagow__ [] has quit [Killed by ()]
15:25-!-rkulagow__ [] has joined #mythtv
15:26-!-hfb [] has joined #mythtv
15:26-!-Justin_ [] has joined #mythtv
15:26-!-rizzi [] has joined #mythtv
15:26-!-jkolb_ [] has joined #mythtv
15:26-!-mdz [] has joined #mythtv
15:26-!-poptix [poptix@2001:470:1f00:623:0:0:0:2] has joined #mythtv
15:26-!-ChanServ sets mode +s #mythtv
15:30-!-sideshow [] has joined #mythtv
15:38-!-kja [] has joined #mythtv
15:41-!-bline [] has joined #mythtv
15:44-!-keturn [] has joined #mythtv
15:54-!-ahbritto [] has quit [Client Quit]
15:56-!-dopez [] has quit [".."]
15:56-!-jkolb [] has quit [Read error: 110 (Connection timed out)]
15:59-!-dopez [] has joined #mythtv
16:14-!-kja [] has quit [Remote closed the connection]
16:14-!-sideshow [] has quit [Read error: 104 (Connection reset by peer)]
16:15-!-kja [] has joined #mythtv
16:19-!-Drikus [] has quit ["toedeledoki"]
16:33<bline>Chutt: you see that patch for lirc stuff?
16:34<Chutt>that anduin withers sent?
16:36-!-Aridhol [] has quit []
16:36-!-Aridhol [] has joined #mythtv
16:41<chmod_700>Chutt: you around?
16:43<chmod_700>heh where is he?
16:45<chmod_700>he told me to stick this: cout << "recording list size: " << recordingList.size() << endl; in scheduler.cpp
16:45<chmod_700>so i did, i recompiled and then scheduled some shows, and then ran mythbackend --printsched with this returned...
16:46<chmod_700>tv mythtv # mythbackend --printsched
16:46<chmod_700>recording list size: 0
16:46<chmod_700>--- print list start ---
16:46<chmod_700>Title Chan ChID StartTime S I C -- C R D S Rank Total
16:46<chmod_700>--- print list end ---
16:47-!-brtb [] has joined #mythtv
16:47* chmod_700is back (gone 02:07:54)
16:55<bline>chmod_700: I wasn't talking to you
16:55<chmod_700>bline: oops
16:55<chmod_700>i figure that out too late
16:58<Chutt>chmod_700, libs/libmythtv/scheduledrecording.cpp
16:59<Chutt>line 234 starts a big ole mysql query
16:59<Chutt>it's failing for some reason..
16:59<chmod_700>want me to run it against the DB manually?
16:59<Chutt>if you can
16:59<chmod_700>i eat mysql for breakfast
16:59<Chutt>there's 4 little substitutions
16:59<Chutt>that you can find the definitions for the constants in the matching header file
17:00<chmod_700>got it
17:00<chmod_700>thanks man
17:15-!-kja [] has quit [Remote closed the connection]
17:16-!-kja [] has joined #mythtv
17:31-!-kja [] has quit [Remote closed the connection]
17:31-!-kja [] has joined #mythtv
17:46-!-kja [] has quit [Remote closed the connection]
17:47-!-kja [] has joined #mythtv
17:49<-- Captain_Murdoch_has quit ()
17:51<chmod_700>im onto something
17:51<chmod_700>tv web # mythbackend --printsched
17:51<chmod_700>recording list size: 1
17:51<chmod_700>--- print list start ---
17:51<chmod_700>Title Chan ChID StartTime S I C -- C R D S Rank Total
17:51<chmod_700>Late Night With Conan 56 1056 Aug 06 05:00pm 1 1 1 -- 0 1 0 0 0 0
17:51<chmod_700>--- print list end ---
17:52<chmod_700>looks like it was a mysql error with the tmp parition
17:52<chmod_700>the program is marked for recording, and should start in the next 10 minutes
17:52<chmod_700>ill let you know
18:03<-- kjahas quit ()
18:10-!-jhurliman [] has joined #mythtv
18:14-!-TheAsp [] has joined #mythtv
18:15<TheAsp>myth using 20% cpu on pause is driving me batty :P
18:16<jhurliman>just curious how are you benchmarking? running top through an ssh connection?
18:16<TheAsp>top, yes...
18:16<jhurliman>i want to look at cpu usage on my own myth box and wasn't sure of the best way
18:16<TheAsp>not over an ssh connection
18:16<TheAsp>which would be fine though...
18:25-!-jkolb [] has joined #mythtv
18:41-!-mecraw [] has quit ["Trillian ("]
18:50-!-jhurliman [] has quit ["Signing off"]
18:58-!-schultmc [] has quit ["Client exiting"]
19:02-!-choenig [] has quit [Read error: 104 (Connection reset by peer)]
19:03-!-hadees [] has joined #mythtv
19:18-!-alkern [] has joined #mythtv
19:23<-- alkern( has left #mythtv
19:26<chmod_700>Chutt: it worked!
19:27<chmod_700>problem appears to have been with mysql not being able to make a temporary table for the joins in that query
19:27<chmod_700>i let the mysql user have permissions in /tmp and it started working
19:27<chmod_700>maybe something for the FAQ? Gentoo advises to limit /tmp severely in its security guide
19:32-!-alkern [] has joined #mythtv
19:36-!-jkolb [] has quit [Read error: 110 (Connection timed out)]
19:37-!-courtlr [~trillian@] has joined #mythtv
19:51<-- courtlr(~trillian@ has left #mythtv
20:00-!-Ripp [] has joined #mythtv
20:02-!-hfb [] has quit ["Client exiting"]
20:31-!-Timon [] has joined #mythtv
20:31-!-brtb [] has quit [Read error: 104 (Connection reset by peer)]
20:35-!-ahbritto [] has joined #mythtv
20:39-!-sc00p [] has quit [Remote closed the connection]
20:54-!-Aridhol [] has quit []
20:56-!-Aridhol [] has joined #mythtv
21:00-!-bline [] has quit ["Client exiting"]
21:09-!-jkolb [] has joined #mythtv
21:35-!-jhurliman [] has joined #mythtv
21:35<jhurliman>i must be running the most unstable cvs checkout of mythtv created :-\
21:36<TheAsp>doubt it
21:36<TheAsp>there were 2 weeks where it would randomly delete a recording when you tried to delete one
21:37<jhurliman>i can't delete recordings, if that counts
21:37<TheAsp>oh, i have that now
21:37<TheAsp>but im not complaining, as its not doing the above
21:37<jhurliman>mythfrontend freezes on the popup box to delete a recording, and after recording a show the tuner never unlocks
21:37<TheAsp>(try deleting them while watching, works for me)
21:38<jhurliman>the not unlocking could be the fault of my code, but i need to try a clean checkout first to see if its my fault
21:47<jhurliman>to beat all, the cable guy came and "fixed" the television, i got an overamplified signal for about a day then lost channels 32-70. not lost as in static, but i get a blue screen. over analog cable, wtf
21:47<Chutt>deleting's working fine here
21:47<Chutt>i just got rid of a bunch of stuff the other day :(
21:47<jhurliman>ok i'm upgrading for sure then
21:48<Chutt>all the stuff i've committed recently _should_ be completely stable and working
21:48<jhurliman>just curious, what happens when you are watching livetv now and a scheduled recording is about to happen?
21:48<Chutt>aside from xvmc mode, but that has to be turned on manually
21:49<Chutt>asks if it can record it
21:49<mikegrb>Chutt: saw your change, makes since... stupid me didn't install the new binary since I didn't want to restart the backend and this afternoon had the problem again... could have had a change to see it in action :/
21:49<jhurliman>Chutt: so the same three options? ok good, that's a pretty nice feature
21:49<Chutt>jhurliman, should be, yeah
21:49<Chutt>it _acts_ differently, though
21:50<Chutt>it basically dumps you out of live-tv mode and plays the recording back
21:50<Chutt>then once that's done, restarts live-tv mode
21:50<jhurliman>well this EXECTV business /should/ be working fine now, i'm going to do a bit more testing before submitting it though
21:50<jhurliman>it would be nice to get it in to 0.11, mythtv + tvtime can be fun
21:51<Chutt>we'll see
21:51<Chutt>i've been breakin stuff left and right, though, so i don't see why not
21:51<Chutt>unless it's a db change, since i told mdz i wouldn't change that anymore
21:52<Chutt>post 0.11, automatic db updates
21:52<Chutt>are going to happen
21:52<TheAsp>Chutt: so is no one else crying about myth using way more cpu while paused?
21:52<Chutt>i think it's time =)
21:52<TheAsp>i forget if you said yes last time
21:52<Chutt>theasp, it gets mentioned every now and then
21:52<Chutt>just make it slow down the display
21:52<Chutt>add a bigger delay to the loop or whatnot
21:52<jhurliman>TheAsp: it's a feature! warming up the cpu to get it ready for live video playback...
21:52<Chutt>well, not that, but maybe make it only draw every X times
21:53<Chutt>it's due to the OSD blending
21:53<TheAsp>heh, it causes framedrops when im recording sometimes
21:53<TheAsp>*nod* figured as much
21:53<jhurliman>does cvs diff take -r option or anything to recurse in to directories?
21:53<TheAsp>it recurses by default
21:54<TheAsp>maybe i could rig it so the osd disapears after a few seconds while paused
21:55<mikegrb>TheAsp: recently if you seeked one way then back the paused display would go away
21:55<mikegrb>haven't done it recenty
21:55<mikegrb>er recently
21:56<jhurliman>you mean more recently?
21:56<TheAsp>ok, i can make it go away doing that, but it still eats cpu
21:56<mikegrb>I haven't tried or noticed recently
21:56<mikegrb>sorry I'm confusing, didn't sleep last night
21:57<mikegrb>Got called in just as I was getting ready to go to sleep :-/
21:57<Captain_Murdoch>jhurliman: did you get my email about the audio and vbi devices?
22:06<jhurliman>Captain_Murdoch: yeah, added it
22:06<jhurliman>testing out this QString business right now with EXECTV
22:10-!-Edgan [] has quit ["Client exiting"]
22:12<Captain_Murdoch>ok, good. so it should work ok for multi-tuner setups as well.
22:13-!-Edgan [] has joined #mythtv
22:16<jhurliman>Captain_Murdoch: yeah i think all this stuff is working but my current mythtv installation is so wrecked i'm pulling the patch out, updating to current cvs testing, patching and retesting
22:22<jhurliman>so do these new DVB cards record high definition television, is that their purpose?
22:23<Chutt>dvb is digital satellite
22:23<jhurliman>ohh, not digital cable? :(
22:23<Chutt>and digital cable and digital broadcast tv
22:24<Chutt>but it's not here in the us =)
22:24<jhurliman>i have digital cable
22:24<hadees>so anyone making any new packages?
22:24<jhurliman>you mean the us version of dvb cards don't support digital cable correct?
22:24<jhurliman>hadees: what do you want? i have a some
22:24<Chutt>there _aren't_ any us versions of dvb cards
22:25<Chutt>to my knowledge
22:25<hadees>just wondering what people are coding
22:25<hadees>that hasn't been in the mythtv news yet
22:25<jhurliman>play with this:
22:26<hadees>what is it?
22:26<jhurliman>requires scsi support in your kernel, support for the generic scsi interface, and ide-scsi plus hdX=ide-scsi if you want to transfer from your cd/dvd drive
22:27<jhurliman>queries external devices, such as usb removable storage, flash cards, and cd/dvd drives and lets you transfer files to and from your local mythtv directory
22:28<jhurliman>a whole slew of things are hard-coded in there, but if you're handy with c++ and have sg-utils installed it could work
22:32<mdz>Chutt: I think you broke multiple inputs
22:32<mdz>live tv, switch inputs, exit, go back into live tv, and it thinks it's on the second input but is displaying video from the first
22:32<mdz>likewise for recording
22:33<Chutt>mdz, would you happen to have time to look into that?
22:33<mdz>my second input has an external channel command, and it calls it, but then records the wrong input
22:33<mdz>Chutt: what changed, so I know where to look?
22:33<Chutt>i honestly don't know
22:33<mdz>I thought it always set the input
22:33<mdz>even if it was on the same input before
22:33<Chutt>if i had an idea of what was wrong..
22:33<Chutt>i don't think it did
22:34<Chutt>that'd be an easy thing to check, though
22:34<Chutt>think it's in channelbase.cpp
22:34<mdz>I asked because you asked me the other day if you broke multiple inputs, so I figured you had done something which might have broken it :-)
22:34<Chutt>no, i asked because someone was bitching about it on the mailing lists, and i know you have multiple inputs
22:36<Chutt>and you know how to debug stuff, so =)
22:37<jhurliman>Captain_Murdoch: available for assistance?
22:38<Captain_Murdoch>waiting for my "cvs update && make" to finish. :)
22:39<jhurliman>inside the for loop, there are two if statements. what is the purpose of the 2nd?
22:39<jhurliman>if (retval == -1 && elink->isConnected() && !elink->IsBusy() && !elink->isTunerLocked())
22:39<Captain_Murdoch>that sees if the encoder/tuner is local the frontend that requested one.
22:39<Captain_Murdoch>enchost is the encoder's host, pbshost is the frontend's host.
22:39<Captain_Murdoch>oh, the 3rd if.
22:40<jhurliman>oops yeah
22:41<Captain_Murdoch>that finds the first non-busy tuner that's not on the frontend but it doesn't exit the loop in case it later finds a tuner available on the frontend that is requesting one.
22:41<jhurliman>oooh tricky
22:42<Captain_Murdoch>acutally, strip out "first" out of my reply. it finds any tuner not not on the frontend requesting one so it keeps overwriting what it found last.
22:42<Captain_Murdoch>so when you finish the loop, you either are looking at the last free tuner not on the frontend or the first free one on the frontend it looks like.
22:43<jhurliman>but it sets retval, and checks retval for -1, so wouldnt that mean the first remote tuner if none are available locally?
22:43<Captain_Murdoch>ahh, right. :)
22:43<Captain_Murdoch>that's either mdz's or chutt's code so I'm trying to interpret on the fly. :)
22:43<jhurliman>yeah i had to sit down and think about it when i first saw it
22:44<Captain_Murdoch>I figured if I described it way wrong that one of them would chime in. :)
22:44<Captain_Murdoch>so really you don't need that whole 3rd "if" since you only want local a local tuner.
22:44<jhurliman>Captain_Murdoch: want to test this patch?
22:45<Captain_Murdoch>sure, I'll give it a shot.
22:46<jhurliman>it was working, now i have no idea what's going on so worst case you can point out a bug
22:46<Captain_Murdoch>so test == debug?
22:46<Captain_Murdoch>no problem. I was getting ready to upgrade all my systems to current cvs anyway.
22:46<jhurliman>well, confirm that my mythtv really is wrecked :)
22:47-!-FryGuy [] has joined #mythtv
22:52<jhurliman>chances in DCC sending through my firewall... slim to none
22:52<Captain_Murdoch>chances of it getting in through mine... none.
22:53<Captain_Murdoch>can you put it in a reply to that email I sent earlier today?
22:53<Captain_Murdoch>try dcc again for kicks.
22:54<jhurliman>or it's here:
22:54<Captain_Murdoch>yeah. refused.
22:54<Captain_Murdoch>didn't click the right button the first time so I wanted to test.
22:55-!-bline [] has joined #mythtv
22:59<bline>guess I should spend more time learning Qt before I send any more patches in
23:00<Captain_Murdoch>jhurliman: you need to pass the cardid to the frontend as well since the videodevice could be the same across multiple backends. then the frontend can send "FREE_TUNER cardid". cardid is guaranteed to be unique, videodevice is not. that eliminates the need for your "select cardid" in HandleFreeTuner as well. also need to set locked = false in the constructors for the encoderlink class.
23:00<Chutt>bline, bah, you did good =)
23:00<jhurliman>Captain_Murdoch: but since we're only dealing with the one backend, it can't have multiple videodevices with the same name?
23:01<jhurliman>but it makes the HandleFreeTuner code nicer so i'm ok with it
23:01<bline>I spent all night trying to fix that stuff that Anduin fixed with a few lines of code
23:01<Captain_Murdoch>all communication goes through the master backend, so it can deal out a tuner from any backend so videodevice could be non-unique.
23:02<Chutt>bline, and if you had fixed it, it'd probably have been extremely similar code
23:03<bline>naw, I was way off in left field
23:03-!-Edgan [] has quit [Read error: 104 (Connection reset by peer)]
23:03<bline>I still want to finish my keymapping stuff though
23:03<Captain_Murdoch>cardid will be much cleaner, but a workaround would be to change the select cardid query to "select cardid from capturecard where videodevice = %1 and hostname = pbs->getHostname()"
23:04-!-Edgan [] has joined #mythtv
23:04<jhurliman>Captain_Murdoch: if it's gotten than far in the if block with a remote tuner, something went very wrong with if (gContext->GetHostName() == pbshost)
23:04<jhurliman>but i already changed it
23:05<mdz>who's responsible for all these confusing variable names in the channel code?
23:05<Captain_Murdoch>jhurliman: but still, videodevice is not guaranteed to be unique across backends, so the select in your patch would return multiple rows.
23:05<jhurliman>does cardid start at 0 or 1?
23:06<Chutt>it doesn't start at anything
23:06<jhurliman>so -1 is a safe false value then
23:06<Captain_Murdoch>not guaranteed. return -1 on error.
23:07<Captain_Murdoch>so frontend just looks for -1 to indicate no free tuners right.
23:08<jhurliman>it will in a second...
23:09<hadees>is the mythtv lcd stuff usefull yet?
23:09<Captain_Murdoch>looks good other than that I think. not sure if we want to create a button by default though. maybe leave it commented out in the .xml file. ask Chutt about that one.
23:09<hadees>i thought i heard some one say they were working on it
23:09<jhurliman>i'm using -1 for no free tuners and -2 for tuner already locked
23:09<Captain_Murdoch>someone was working on making LED's turn on/off to indicate which tuners were being used to record.
23:09<Chutt>they sent in a patch
23:10<jhurliman>Captain_Murdoch: i don't even know what to call it, i just included it in that patch so you could play with it
23:10<Captain_Murdoch>might be good to have a commented-out example EXECTV button in the xml though if Chutt doesn't mind.
23:10<jhurliman>and an addition to the docs
23:11<Captain_Murdoch>yeah and 100 replies to the mailing list over the next couple months.
23:11-!-courtlr [] has joined #mythtv
23:11<courtlr>Any idea as to when .11 will be out? Will it include the mythchannels patch?
23:12<mdz>I can't follow this code at all. where is the input and channel state kept between live tv invocations?
23:13-!-bline [] has quit [Read error: 104 (Connection reset by peer)]
23:13<Chutt>channelbase.cpp and channel.cpp
23:13<Chutt>blame the broken dvb crap
23:14-!-bline [] has joined #mythtv
23:14-!-courtlr [] has quit [Client Quit]
23:14<mdz>is it the ChannelBase instance in tv_rec?
23:15<bline>ack, ivtv just locked my system
23:22<jhurliman>Captain_Murdoch: the only thing i haven't tested yet is how the QString %1 %2 %3 is handled
23:22<jhurliman>but from the earlier run it looked like it should... err might, be fine as is
23:23-!-jkolb [] has quit [Read error: 110 (Connection timed out)]
23:26<Captain_Murdoch>what happens if they don't put in a %3 in the .xml file?
23:26<Chutt>qt bitches
23:26<Captain_Murdoch>I don't know enough qt to know how it handles that.
23:26<Chutt>it doesn't die or anything, though
23:27<jhurliman>i was using %1 and %2 and it seemed to be out, qt spits out an error to the console and chugs along
23:27<jhurliman>chugs along, as in fills in %1 and %2 properly, from my limited test
23:34<jhurliman>oh bad
23:34<jhurliman>no it doesnt
23:34<jhurliman>it appends " %3" to your QString
23:35<jhurliman>so i end up passing an audio device and vbi device to -dspdev
23:36<bline>I ran into this with mythvideo, I fixed it with QString::sprintf
23:36<jhurliman>ok, im not seeing it in the qstring documentation...
23:37<bline>it mentions it
23:37<bline>it says .arg is not good for data that may contain a %
23:37-!-TheAsp [] has quit [Remote closed the connection]
23:39<jhurliman>what is all this %d %2d %3d?
23:39<jhurliman>oh i want %s
23:43<mdz>../libavcodec/xvmc_render.h:21: syntax error before `*'
23:43<mdz> XvMCMacroBlock * mv_blocks;
23:44<bline>augg, I spoke too soon, that patch does not fix focus issues
23:44<mdz>I have no idea how this is supposed to work, I can't compile CVS anymore, and I have no development system to test on
23:44<bline>So I guess I do still have work to do
23:44<mdz>I think the odds of me fixing this tonight are pretty slim
23:45<jhurliman>ioctl: VIDIOC_OVERLAY(int=1): Invalid argument
23:45<jhurliman>damn xawtv
23:50<jhurliman>alright, my setup is back to a sane state and i cant find anything wrong so far. im running the last test and calling it done
23:50<jhurliman>Captain_Murdoch: any last suggestions?
23:55<Chutt>mdz, heh, sorry
23:55<Chutt>i'll make that more optional
23:55<bline>Chutt: you see my email?
23:56<Chutt>that's probably the right way to go about doing it
23:57<bline>but it does not fix things, the only way I can think of doing it is to make subclasses for every widget we use
23:57<bline>MythButton etc..
23:57<bline>It would be a lot of changes
23:57<mdz>QStrings are such a pain in the ass in gdb
23:57<bline>not hard, but a lot of changes
23:59<bline>wow, native lirc support makes things a lot smoother with the remote
23:59<mdz>Chutt: you mentioned a way other than calling .ascii() which worked even if .ascii is inlined...what was it?
23:59<jhurliman>Chutt: one thing i noticed is if myth cant open your audio device when going into livetv it locks up mythfrontend. i realize it's not going to work right without access to /dev/dsp or whatever, but couldnt it just drop back to the menu instead of locking the frontend up with a black screen?