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.)

View Poll Results: Where would YOU put Sage's improvement priorities?
Develop and implement a more advanced recording system to eliminate the 'pause' on show-chage. 77 24.14%
Develop a flashier, more graphically intensive UI. 117 36.68%
Implement a CableCard capable DRM option to enable a simpler cable-based setup. 126 39.50%
Improve the BluRay playback capabilities (PC client playback, add title selection capabilities) 75 23.51%
Improve the music/video library system. 110 34.48%
Complete the 'Server-on-a-stick' initiative, making a more 'off-the-shelf' friendly system. 31 9.72%
Create an official plugin installer system, and online plugin catalog. 100 31.35%
Improve International EPG configuration/sourcing. 19 5.96%
Other needs - comment below. 31 9.72%
Multiple Choice Poll. Voters: 319. You may not vote on this poll

Reply
 
Thread Tools Search this Thread Display Modes
  #141  
Old 12-23-2010, 07:21 AM
Skirge01's Avatar
Skirge01 Skirge01 is offline
SageTVaholic
 
Join Date: Jun 2007
Location: New Jersey
Posts: 2,599
Quote:
Originally Posted by tmiranda View Post
Lesser graphics capability is certainly one issue. The other is that all extenders and placeshifters share the same JVM while each SageClient has its own JVM. Placeshifters and extenders also "run" on the Sage server while SageClients run on a totally separate machine. This means that all custom data needed (i.e. data your plugin needs and is not native to the Sage core) must be sent over the network. There are lots of "developer" plugins out there that help (that's why there are all of those library plugins out there that say "no need to install this directly") but it's still a PITA.

Consider this simple example. Let's say you want to create a music plugin that displays lyrics while a song is playing. Assume the lyrics are either embedded in the MP3 or are stored in a .lyrics file. All of this data is stored on the Sage server, not on the SageClient so you need to create a way (probably a java method) to get those lyrics so you can display them in the STV. Your java code (which is called from within the STV) needs to look like this:

Code:
if (running on a SageClient) {
  use some other method to get the lyrics from the Sage server
} else {
  get the lyrics from the machine you're running on (which will be the Sage server)
}
None of this is news to Sage or to any Plugin developers, it's just the way it is.
Thanks for taking the time to explain that. I do have some (very basic) programming experience (VBA mostly), so I do understand that. Does that mean that every data call needs to be an IF-THEN-ELSE (or similar) statement to determine whether the call needs to be made to the server or the client itself?
__________________
Server: XP, SuperMicro X9SAE-V, i7 3770T, Thermalright Archon SB-E, 32GB Corsair DDR3, 2 x IBM M1015, Corsair HX1000W PSU, CoolerMaster CM Storm Stryker case
Storage: 2 x Addonics 5-in-3 3.5" bays, 1 x Addonics 4-in-1 2.5" bay, 24TB
Client: Windows 7 64-bit, Foxconn G9657MA-8EKRS2H, Core2Duo E6600, Zalman CNPS7500, 2GB Corsair, 320GB, HIS ATI 4650, Antec Fusion
Tuners: 2 x HD-PVR (HTTP tuning), 2 x HDHR, USB-UIRT
Software: SageTV 7
Reply With Quote
  #142  
Old 12-23-2010, 10:21 AM
Fuzzy's Avatar
Fuzzy Fuzzy is offline
SageTVaholic
 
Join Date: Sep 2005
Location: Jurupa Valley, CA
Posts: 9,957
Quote:
Originally Posted by Skirge01 View Post
Thanks for taking the time to explain that. I do have some (very basic) programming experience (VBA mostly), so I do understand that. Does that mean that every data call needs to be an IF-THEN-ELSE (or similar) statement to determine whether the call needs to be made to the server or the client itself?
No, the API pretty much takes care of that.
__________________
Buy Fuzzy a beer! (Fuzzy likes beer)

unRAID Server: i7-6700, 32GB RAM, Dual 128GB SSD cache and 13TB pool, with SageTVv9, openDCT, Logitech Media Server and Plex Media Server each in Dockers.
Sources: HRHR Prime with Charter CableCard. HDHR-US for OTA.
Primary Client: HD-300 through XBoxOne in Living Room, Samsung HLT-6189S
Other Clients: Mi Box in Master Bedroom, HD-200 in kids room
Reply With Quote
  #143  
Old 12-23-2010, 10:29 AM
Skirge01's Avatar
Skirge01 Skirge01 is offline
SageTVaholic
 
Join Date: Jun 2007
Location: New Jersey
Posts: 2,599
Hehe... then it shouldn't be a big deal. j/k guys.
__________________
Server: XP, SuperMicro X9SAE-V, i7 3770T, Thermalright Archon SB-E, 32GB Corsair DDR3, 2 x IBM M1015, Corsair HX1000W PSU, CoolerMaster CM Storm Stryker case
Storage: 2 x Addonics 5-in-3 3.5" bays, 1 x Addonics 4-in-1 2.5" bay, 24TB
Client: Windows 7 64-bit, Foxconn G9657MA-8EKRS2H, Core2Duo E6600, Zalman CNPS7500, 2GB Corsair, 320GB, HIS ATI 4650, Antec Fusion
Tuners: 2 x HD-PVR (HTTP tuning), 2 x HDHR, USB-UIRT
Software: SageTV 7
Reply With Quote
  #144  
Old 12-23-2010, 11:19 AM
Fuzzy's Avatar
Fuzzy Fuzzy is offline
SageTVaholic
 
Join Date: Sep 2005
Location: Jurupa Valley, CA
Posts: 9,957
toms example wouldn't be the way i'd do it though - it would make more sense to have a server side process that adds the lyrics to the sage database (custom metadata, or even a user record), then it can be accessed from any client side plugin in the same way.
__________________
Buy Fuzzy a beer! (Fuzzy likes beer)

unRAID Server: i7-6700, 32GB RAM, Dual 128GB SSD cache and 13TB pool, with SageTVv9, openDCT, Logitech Media Server and Plex Media Server each in Dockers.
Sources: HRHR Prime with Charter CableCard. HDHR-US for OTA.
Primary Client: HD-300 through XBoxOne in Living Room, Samsung HLT-6189S
Other Clients: Mi Box in Master Bedroom, HD-200 in kids room
Reply With Quote
  #145  
Old 12-23-2010, 02:17 PM
tmiranda's Avatar
tmiranda tmiranda is offline
SageTVaholic
 
Join Date: Jul 2005
Location: Central Florida, USA
Posts: 5,851
Quote:
Originally Posted by Fuzzy View Post
toms example wouldn't be the way i'd do it though - it would make more sense to have a server side process that adds the lyrics to the sage database (custom metadata, or even a user record), then it can be accessed from any client side plugin in the same way.
I didn't say I'd do it that way, I just said it was an example to show the issues of dealing with extenders.
__________________

Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders.
Reply With Quote
  #146  
Old 12-23-2010, 03:08 PM
stanger89's Avatar
stanger89 stanger89 is offline
SageTVaholic
 
Join Date: May 2003
Location: Marion, IA
Posts: 15,188
FWIW, the two best examples of the difficulties of dealing with Clients are DVD/BD playback, and Comskip imports. If you use extenders, these things "just work", the server can see everything and everything is great.

With clients, you have to make sure the client can see the same paths the server can, otherwise neither works because the client asks the server for file locations and the server only knows what it sees.
Reply With Quote
  #147  
Old 12-23-2010, 03:46 PM
Fuzzy's Avatar
Fuzzy Fuzzy is offline
SageTVaholic
 
Join Date: Sep 2005
Location: Jurupa Valley, CA
Posts: 9,957
Keep in mind, this is also really a result of the current way the comskip plugin is written, and is basically a legacy method from 7 years ago, before sage implemented most of the current database api's. A comskip plugin could just as easily be created that could store the skip points in the sage database, and this would work perfectly fine regardless of ui context.
__________________
Buy Fuzzy a beer! (Fuzzy likes beer)

unRAID Server: i7-6700, 32GB RAM, Dual 128GB SSD cache and 13TB pool, with SageTVv9, openDCT, Logitech Media Server and Plex Media Server each in Dockers.
Sources: HRHR Prime with Charter CableCard. HDHR-US for OTA.
Primary Client: HD-300 through XBoxOne in Living Room, Samsung HLT-6189S
Other Clients: Mi Box in Master Bedroom, HD-200 in kids room
Reply With Quote
  #148  
Old 12-23-2010, 03:49 PM
stanger89's Avatar
stanger89 stanger89 is offline
SageTVaholic
 
Join Date: May 2003
Location: Marion, IA
Posts: 15,188
True, but it's an example of the extra "thought" that has to go into something that will work on a Client rather than just the server/extenders.
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
ffdshow and Decoder Priorities....? karnal SageTV Software 4 09-11-2005 09:24 AM
weird recording priorities? andaval SageTV Software 1 07-22-2005 10:38 AM
Channel Priorities aperry SageTV Software 11 04-06-2005 10:02 PM
favorite priorities bebanovich SageTV Software 3 01-24-2005 11:24 PM
Priorities not really working. kevthor SageTV Software 4 07-29-2004 08:12 PM


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


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