SageTV Community  

Go Back   SageTV Community > SageTV Products > SageTV Software
Forum Rules FAQs Community Downloads Today's Posts Search

Notices

SageTV Software Discussion related to the SageTV application produced by SageTV. Questions, issues, problems, suggestions, etc. relating to the SageTV software application should be posted here. (Check the descriptions of the other forums; all hardware related questions go in the Hardware Support forum, etc. And, post in the customizations forum instead if any customizations are active.)

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 11-05-2017, 10:50 PM
xjim1's Avatar
xjim1 xjim1 is offline
Sage Advanced User
 
Join Date: Sep 2010
Location: colorado
Posts: 221
Not Changing Channels

Can someone tell me why Sage doesn't change channel to a Favorite recording?

I'm watching NFL Football. Not a manual or Favorite, just tuned into live tv. I have a Favorite scheduled of Star Trek Voyager at 2100. At 2055, Sage asks me if I want to change the channel. I say Yes.
At 2102 I see it is still recording NFL. I have to mark ST Voyager as manual to force it to record.

This is happening consistently now. Is there a parameter I may have inadvertently changed?

If I'm not otherwise watching live tv, recording happens as expected.

Log file attached.
Thanks for any help.
Attached Files
File Type: zip sagetv_0.zip (551.6 KB, 143 views)
Reply With Quote
  #2  
Old 11-07-2017, 07:43 PM
GoAWest's Avatar
GoAWest GoAWest is offline
Sage User
 
Join Date: Dec 2010
Location: Bay Area, CA, USA
Posts: 44
Sounds similar to the discussions in these threads:

https://forums.sagetv.com/forums/showthread.php?t=65030
https://forums.sagetv.com/forums/showthread.php?t=64290
Reply With Quote
  #3  
Old 11-08-2017, 12:32 AM
xjim1's Avatar
xjim1 xjim1 is offline
Sage Advanced User
 
Join Date: Sep 2010
Location: colorado
Posts: 221
Quote:
Originally Posted by GoAWest View Post
Yeah I looked at them. Those were both with multiple tuners, but could be related. I have a single tuner server, clicked "Yes" when prompted to change the channel, but it ignored it. With a simpler configuration, I'm hoping the log file would provide some insight. I recently upgraded to 9.1.7.

Thanks.
Reply With Quote
  #4  
Old 11-20-2017, 05:59 PM
wnjj wnjj is online now
Sage Icon
 
Join Date: Jan 2009
Posts: 1,514
So I finally had time to look through your logs from 11/5.

I think there's a hint when watching the schedule at this point:

Code:
Sun 11/5 20:00:01.389 [Scheduler@182021d] COMPLETE SCHEDULE-----**&^%&*-------COMPLETE SCHEDULE
Sun 11/5 20:00:01.389 [Scheduler@182021d] Hauppauge WinTV 418 TS Capture
Sun 11/5 20:00:01.391 [Scheduler@182021d] [A[2601046,2600889,"Star Trek: Deep Space Nine",87173@1105.20:00,60,T], A[2601047,2600892,"Star Trek: Voyager",87173@1105.21:00,60,T], A[2601019,370390,"News 5 at 10pm",51690@1105.22:00,30,T], 
.
.
.
You were expecting the channel to change at 21:00 for "Star Trek: Voyager" but according to the schedule there was already a missing "Star Trek: Deep Space Nine". Because there was a scheduled show for the 20:00-21:00 time slot, I believe it puts the live TV into "force watch" mode when you changed channels at 20:23 (during that time window) which means it has highest priority.

What doesn't make sense is the logic of asking you when you are watching in this "force" mode. The code I perused looks like saying "OK change it", merely leaves the upcoming recording in the schedule instead of removing it, but doesn't correct the priority issue.

I'm not sure I understand this well enough to explain, but in short I suspect that watching live TV during an existing favorite leads to this bad behavior.

Edit: There was also a missed recording at 19:00 that caused a conflict to log:
Code:
Sun 11/5 20:00:01.392 [Scheduler@182021d] Airing was dropped from conflict map; check for a missed recording: [A[2601045,268476,"Star Trek: The Next Generation",87173@1105.19:00,60,T]]
Sun 11/5 20:00:01.392 [Scheduler@182021d] Found missed recording for A[2601045,268476,"Star Trek: The Next Generation",87173@1105.19:00,60,T] post system message about it
Edit2: I'm now not even sure that "Deep Space Nine" is a favorite but may instead be in the schedule as an intelligent recording so my theory above may be off.

Last edited by wnjj; 11-20-2017 at 07:51 PM.
Reply With Quote
  #5  
Old 11-20-2017, 07:51 PM
xjim1's Avatar
xjim1 xjim1 is offline
Sage Advanced User
 
Join Date: Sep 2010
Location: colorado
Posts: 221
Quote:
Originally Posted by wnjj View Post
So I finally had time to look through your logs from 11/5.

I think there's a hint when watching the schedule at this point:

Code:
Sun 11/5 20:00:01.389 [Scheduler@182021d] COMPLETE SCHEDULE-----**&^%&*-------COMPLETE SCHEDULE
Sun 11/5 20:00:01.389 [Scheduler@182021d] Hauppauge WinTV 418 TS Capture
Sun 11/5 20:00:01.391 [Scheduler@182021d] [A[2601046,2600889,"Star Trek: Deep Space Nine",87173@1105.20:00,60,T], A[2601047,2600892,"Star Trek: Voyager",87173@1105.21:00,60,T], A[2601019,370390,"News 5 at 10pm",51690@1105.22:00,30,T], 
.
.
.
You were expecting the channel to change at 21:00 for "Star Trek: Voyager" but according to the schedule there was already a missing "Star Trek: Deep Space Nine". Because there was a scheduled show for the 20:00-21:00 time slot, I believe it puts the live TV into "force watch" mode when you changed channels at 20:23 (during that time window) which means it has highest priority.
Yeah I don't understand that. It's been a few weeks now, but I remember watching NFL Sunday Night Football (Oakland at Miami) as it approached 21:00. This was live tv (is that what AsyncWatch means?) on channel 5.1.

Looking through the log file it looks like up to 20:23, I was watching an NFL game (Kansas City vs Dallas) recording from earlier in the day. That's when I tuned into the Oakland game at 20:23:53:956. Deep Space Nine is not a favorite, and not scheduled. I see multiple entries between 20:00 and 21:00 that Next Record is Voyager, at 21:00

The list at 20:00 you mention contains a bunch of shows that I don't record. Don't know what that means.




Quote:
Originally Posted by wnjj View Post
What doesn't make sense is the logic of asking you when you are watching in this "force" mode. The code I perused looks like saying "OK change it", merely leaves the upcoming recording in the schedule instead of removing it, but doesn't correct the priority issue.

I'm not sure I understand this well enough to explain, but in short I suspect that watching live TV during an existing favorite leads to this bad behavior.

Edit: There was also a missed recording at 19:00 that caused a conflict to log.
At 20:55:00 there is a Channel Change Query then the Force Watch executing, then Keeping Record Just the way It Is entry.

Does that mean it's going to record Voyager or continue recording NFL football (which was live tv and not a favorite)?

I think what may be the best is to set up a test, with a fresh log file, and note the status of all scheduled recordings. I can reproduce it so I just need a free window.

Regarding the 19:00 conflict: that was a previously resolved conflict as Star Trek NG favorite was overridden by The Durrells in Corfu. That worked as expected and generated a system message.

Thanks for the help and let me know if the test setup is something you'd have time to look at.
Reply With Quote
  #6  
Old 11-20-2017, 09:29 PM
wnjj wnjj is online now
Sage Icon
 
Join Date: Jan 2009
Posts: 1,514
I had added another edit to clarify that I believe "Deep Space Nine" was an intelligent recording selection that gets tossed when there isn't a tuner. Are you running with IR on?

Asyncwatch is just the thread name for the medaplayer.

The channel change query is listed at 20:55 but a few lines later you'll see a 3 second delay to allow the popup to show up on the client so technically the answer to the question isn't available until the next pass, which happens at 20:59.59.

The thing is, forcewatch is still active which means the current live TV will take priority over the scheduled recording. I don't know what causes that forcewatch or how it goes away.

I'm happy look at log files but am still learning by looking through code so may not reach the right conclusions. Hopefully Narflex chimes in at some point though I get the feeling this code is a bit squirrely.
Reply With Quote
  #7  
Old 11-20-2017, 10:01 PM
xjim1's Avatar
xjim1 xjim1 is offline
Sage Advanced User
 
Join Date: Sep 2010
Location: colorado
Posts: 221
Quote:
Originally Posted by wnjj View Post
I had added another edit to clarify that I believe "Deep Space Nine" was an intelligent recording selection that gets tossed when there isn't a tuner. Are you running with IR on?

Asyncwatch is just the thread name for the medaplayer.

The channel change query is listed at 20:55 but a few lines later you'll see a 3 second delay to allow the popup to show up on the client so technically the answer to the question isn't available until the next pass, which happens at 20:59.59.

The thing is, forcewatch is still active which means the current live TV will take priority over the scheduled recording. I don't know what causes that forcewatch or how it goes away.

I'm happy look at log files but am still learning by looking through code so may not reach the right conclusions. Hopefully Narflex chimes in at some point though I get the feeling this code is a bit squirrely.
No IR. Just checked to make sure.
Yeah I see the 20:59:59 too. Even though Voyager is set to record, the Force Watch overrides it.

I'm going to test with a new wiz.bin and see if that changes anything. A long shot, but simpler than downgrading. But I'll post another log file if that doesn't work.

Thanks for taking a look.
Reply With Quote
  #8  
Old 11-22-2017, 10:50 PM
wnjj wnjj is online now
Sage Icon
 
Join Date: Jan 2009
Posts: 1,514
So I spent some more time pouring through the seeker code. I'm fairly convinced now that the change channel will never actually do anything when you say "yes" to the prompt. Saying "no" will cancel the recording it wanted the tuner for, however.


I ran a test on my system: With all 3 tuners available, I watched liveTV. Checking the log files confirmed what I had found in the code, that liveTV is considered a "force watch". Once that's set, even scheduled recordings are ignored for that tuner. Saying "no" only removes the upcoming show from the schedule. Saying "yes" leaves it in the "must see" list and continues showing it as the "nextRecord" in the log file.

Part of the code section that passes the "nextRecord" (scheduled) to the "newRecord" (the one that actually records) is here:
Code:
          if ((nextTTA == 0) || (defaultRecord == null))
          {
            // The new record is ready to go OR it's lead time
            // is up and there's no default. Wake up when it's over
            wakeupTime = Math.min(wakeupTime, nextRecord.getSchedulingEnd());
            newRecord = nextRecord;
          }
The issue is, below that is this code:
Code:
        if (es.forceWatch != null)
        {
.
.
.
            if (!(es.forceWatch instanceof ManualRecord.FakeAiring) || wiz.isManualRecordOK(((ManualRecord.FakeAiring) es.forceWatch).getManualRecord()))
            {
              if (Sage.DBG) System.out.println("FORCE WATCH executing clients=" +
                  es.controllingClients);
              newRecord = es.forceWatch;
            }
This is what your log file shows is happening since the "executing clients" shows up. Notice how it clobbers "newRecord".

It seems to me like a "yes" response should null out the es.forcewatch variable or at least queue it up for null when the new recording is about to start. From what I found, only "endRecord()" will null it out, which happens when you press "stop" on liveTV.

Maybe change the above code to
Code:
          if ((nextTTA == 0) || (defaultRecord == null))
          {
            // The new record is ready to go OR it's lead time
            // is up and there's no default. Wake up when it's over
            wakeupTime = Math.min(wakeupTime, nextRecord.getSchedulingEnd());
            newRecord = nextRecord;
            if (completeChanChangeAsks.contains(nextRecord) && !deniedMustSees.contains(nextRecord))
            {
              es.forceWatch = null;
              es.forceProcessed = false;
            }
          }

Last edited by wnjj; 11-23-2017 at 09:57 AM.
Reply With Quote
  #9  
Old 11-23-2017, 08:27 PM
xjim1's Avatar
xjim1 xjim1 is offline
Sage Advanced User
 
Join Date: Sep 2010
Location: colorado
Posts: 221
Wow. That's significant. And must have been a recent code change as I know this behavior wasn't always like this. I'd bet 9.1.5 didn't do that.

It may also hold implications with recordings which begin after a scheduled recording ends, for example:
Today watching a manual recording of football, and had marked a manual recording of the OT show after the game. It also chose to record the program following the OT show (Golf, lets say), even though I neither asked it to record nor was I watching live TV (it doesn't always do that). If the golf show continued and overlapped the next scheduled recording, I wonder if golf would have counted as a forcewatch.
How can I get that changed?
Thanks!
Reply With Quote
  #10  
Old 11-23-2017, 10:22 PM
wnjj wnjj is online now
Sage Icon
 
Join Date: Jan 2009
Posts: 1,514
Quote:
Originally Posted by xjim1 View Post
Wow. That's significant. And must have been a recent code change as I know this behavior wasn't always like this. I'd bet 9.1.5 didn't do that.

It may also hold implications with recordings which begin after a scheduled recording ends, for example:
Today watching a manual recording of football, and had marked a manual recording of the OT show after the game. It also chose to record the program following the OT show (Golf, lets say), even though I neither asked it to record nor was I watching live TV (it doesn't always do that). If the golf show continued and overlapped the next scheduled recording, I wonder if golf would have counted as a forcewatch.
How can I get that changed?
Thanks!
I checked the original open source release and it looked the same. Are you sure older versions of V9 worked? If so, I can't see how, unless code outside of seeker was changed and interacts in a way I don't see.

Last edited by wnjj; 11-23-2017 at 10:35 PM.
Reply With Quote
  #11  
Old 11-24-2017, 07:28 AM
wayner wayner is offline
SageTVaholic
 
Join Date: Jan 2008
Location: Toronto, ON
Posts: 7,491
Quote:
Originally Posted by wnjj View Post
So I spent some more time pouring through the seeker code. I'm fairly convinced now that the change channel will never actually do anything when you say "yes" to the prompt. Saying "no" will cancel the recording it wanted the tuner for, however.
Have you discussed this with Narflex? He should know this, inside and out.
__________________
New Server - Sage9 on unRAID 2xHD-PVR, HDHR for OTA
Old Server - Sage7 on Win7Pro-i660CPU with 4.6TB, HD-PVR, HDHR OTA, HVR-1850 OTA
Clients - 2xHD-300, 8xHD-200 Extenders, Client+2xPlaceshifter and a WHS which acts as a backup Sage server
Reply With Quote
  #12  
Old 11-24-2017, 12:21 PM
EnterNoEscape's Avatar
EnterNoEscape EnterNoEscape is offline
SageTVaholic
 
Join Date: Jun 2010
Location: Harrisburg, PA
Posts: 2,657
Quote:
Originally Posted by wnjj View Post
I checked the original open source release and it looked the same. Are you sure older versions of V9 worked? If so, I can't see how, unless code outside of seeker was changed and interacts in a way I don't see.
Quote:
Originally Posted by wayner View Post
Have you discussed this with Narflex? He should know this, inside and out.
You will also get more traction for proposed changes to the code base if you open an issue on GitHub.
__________________
SageTV v9 Server: ASRock Z97 Extreme4, Intel i7-4790K @ 4.4Ghz, 32GB RAM, 6x 3TB 7200rpm HD, 2x 5TB 7200rpm HD, 2x 6TB 7200rpm HD, 4x 256GB SSD, 4x 500GB SSD, unRAID Pro 6.7.2 (Dual Parity + SSD Cache).
Capture: 1x Ceton InfiniTV 4 (ClearQAM), 2x Ceton InfiniTV 6, 1x BM1000-HDMI, 1x BM3500-HDMI.

Clients: 1x HD300 (Living Room), 1x HD200 (Master Bedroom).
Software: OpenDCT :: WMC Live TV Tuner :: Schedules Direct EPG
Reply With Quote
  #13  
Old 11-24-2017, 01:57 PM
xjim1's Avatar
xjim1 xjim1 is offline
Sage Advanced User
 
Join Date: Sep 2010
Location: colorado
Posts: 221
Quote:
Originally Posted by wnjj View Post
I checked the original open source release and it looked the same. Are you sure older versions of V9 worked? If so, I can't see how, unless code outside of seeker was changed and interacts in a way I don't see.
Yes, this definitely used to work. If I had a recording imminent, I remember the end of the timeline(?) bar would turn red if I was time shifted. That told me it was no longer recording my live tv session and started the scheduled recording. It's a single tuner server, so I'm attentive to such things.

I'm happy to open a report on Github, but probably would need some help with that.

I can go back to 9.1.5 to test, but need the time and enough of a window not to affect recordings. Just haven't had the chance yet.

Last edited by xjim1; 11-24-2017 at 01:59 PM.
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
channels not changing on MVP pvr599 SageTV Software 26 05-01-2007 03:19 PM
STB not changing channels? Steve52 Hardware Support 0 03-31-2006 05:46 PM
Scroll through channels w/o changing channels, using arrow keys area123 SageTV Customizations 4 03-27-2006 11:56 AM
Changing channels cipher SageTV Software 6 05-21-2005 09:53 PM
Changing Channels Ericvic SageTV Software 6 04-08-2005 03:48 PM


All times are GMT -6. The time now is 10:57 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, vBulletin Solutions Inc.
Copyright 2003-2005 SageTV, LLC. All rights reserved.