![]() |
|
SageTV v7 Customizations This forums is for discussing and sharing user-created modifications for the SageTV version 7 application created by using the SageTV Studio or through the use of external plugins. Use this forum to discuss plugins for SageTV version 7 and newer. |
![]() |
|
Thread Tools | Search this Thread | Display Modes |
#1
|
||||
|
||||
PlayOn Plugin Linux Discussion
Thought i'd just start a thread to talk about getting PlayOn working on linux. So here's where we're at...
Here's the actual UPnPBrowser.pl script. Its pretty simple and only has a few dependencies that can easily be grabbed from CPAN. Code:
>sudo CPAN MD5 >sudo CPAN SKONNO/Net-UPnP-1.4.2.tar.gz Once you'e done that you should be able to run the script and detect your local UPnP servers. Code:
>UPnPBrowser.pl Welcome to UPnPBrowser v1.2 (Built on 15:01:02.99 03-26-2011 )! (Tue Mar 29 13:37:01 2011 + Path: D: + Checking: (D:) + Checking: () + Checking: (C:/Program Files/SageTV/SageTV) + Found SageTV Dir: (C:/Program Files/SageTV/SageTV) - SageTV Version: (SageTV V7.1.5.252) - STV Version : (2011011701) + Checking for preset updates - Downloaded UPnPBrowser.presets (Version: 20100615) ! Couldn't open presets file (D:\UPnPBrowser\UPnPBrowser.presets) ! Updating Presets File (20100615 > -1) + Reading Presets (20100615) - PlayON : ("/search" "PlayON:+1") - Hulu : ("/search" "PlayON:Hulu:+1") - Hulu_User_Queue : ("/search" "PlayON:Hulu:User Queue:Sort By Date:+1") - Hulu_Popular_TV : ("/search" "PlayON:Hulu:Popular:Popular Shows:+1") - Hulu_Popular_Movies : ("/search" "PlayON:Hulu:Popular:Popular Feature Films:+1") - Hulu_Genres : ("/search" "PlayON:Hulu:TV Genres:+1") - Netflix : ("/search" "PlayON:Netflix:+1") - Netflix_User_Queue : ("/search" "PlayON:Netflix:Instant Queue:Queue Top 50:+1") - Netflix_Genres : ("/search" "PlayON:Netflix:Browse Genres:+1") - Netflix_New_Releases : ("/search" "PlayON:Netflix:New Arrivals:+1") - FOX : ("/search" "PlayON:Hulu:TV Networks:^FOX$:Popular Titles:+1") - CBS : ("/search" "PlayON:CBS:Primetime:+1") - ABC : ("/search" "PlayON:Hulu:TV Networks:^ABC$:Popular Titles:+1") - NBC : ("/search" "PlayON:Hulu:TV Networks:^NBC$:Popular Titles:+1") - USA : ("/search" "PlayON:Hulu:TV Networks:^USA$:Popular Titles:+1") - FX : ("/search" "PlayON:Hulu:TV Networks:^FX$:Popular Titles:+1") - Comedy_Central : ("/search" "PlayON:Comedy Central:Full Episodes:+1") + Parsing switches - optionsString: + /serverSearchTimeout : (1) + /mainMenu : Printing available UPnP Servers + Checking for .cache files not found in search - Device: () + Geneating Cache: (UPnPBrowser..cache) - Device: PlayOn (Secretivo)(urn:schemas-upnp-org:device:MediaServer:1) + Geneating Cache: (UPnPBrowser.PlayOn (Secretivo).cache) + Execution time: 00:00:02 Code:
>sudo CPAN PAR:Packer ![]() The command you use to do the actual "compiling" is pp. Looking at the man page, all it should take is Code:
>pp -c -M PerlIO.pm -o "UPnPBrowser.out" ./UPnPBrowser.pl So that's where I got stuck, if someone wants to take a swing at generating a universal linux bianary i'll be happy add it to the plugin and re-enable Linux support.
__________________
Clients: 1xHD200 Connected to 50" TH-50PZ750U Plasma Server : Shuttle SFF SSH55J2 w/ Win7 Home, SageTV v7, Core i3 540, 2GB RAM, 30GB SSD for OS, 1.5TB+2x1TB WDGP for Recordings, BluRay, 2xHDHR, 1xFirewire SageTV : PlayOn, SJQ, MediaShrink, Comskip, Jetty, Web Client, BMT Having a problem? Don't forget to include a log! (Instructions for: PlayOn For SageTV v1.5, MediaShrink) Last edited by evilpenguin; 03-29-2011 at 02:48 PM. |
#2
|
|||
|
|||
I asked in the Playon thread, but probably belongs here more. Is there any way to make v1.4 available since it was working on Linux? (Even if only temporarily while work continues on newer versions.) Or any way to move the plugin from my old server to the new one?
|
#3
|
||||
|
||||
Sure...
__________________
Clients: 1xHD200 Connected to 50" TH-50PZ750U Plasma Server : Shuttle SFF SSH55J2 w/ Win7 Home, SageTV v7, Core i3 540, 2GB RAM, 30GB SSD for OS, 1.5TB+2x1TB WDGP for Recordings, BluRay, 2xHDHR, 1xFirewire SageTV : PlayOn, SJQ, MediaShrink, Comskip, Jetty, Web Client, BMT Having a problem? Don't forget to include a log! (Instructions for: PlayOn For SageTV v1.5, MediaShrink) Last edited by evilpenguin; 03-29-2011 at 05:54 PM. |
#4
|
||||
|
||||
EP,
I appreciate the effort to get this working. I just tried the older UPnPBrowser.out and I get the same error. I'm using Ubuntu 10.4 desktop.
__________________
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. |
#5
|
|||
|
|||
Quote:
Still wouldn't let me install v1.5 so I just grabbed v1.4 from upnp2podcast/downloads and installed. Back in business!! Thanks! Last edited by thelinuxman; 03-29-2011 at 06:19 PM. |
#6
|
|||
|
|||
EvilPenguin rocks!
Thanks for bothering to do this. Distributing software on Linux is a pain (but trying to solve that problem for companies sometimes pays well!), I know.
I won't have time to look at this until Friday, and I'm completely uninformed on PAR beyond knowing what the end result is. Still, I wanted to post because I specifically asked you to work with us Linux dorks on this and I wanted to thank you for doing so even if I can't jump on it right away. For everyone else interested, I want concentrate on moving forward rather than making the old versions available and working. IIRC, the failure for me was an .so file neded by PerlIO was the wrong version. So, I'm wondering whether we can get everything statically linked. But, until I learn about PAR I'm just blowing smoke. Worst case, maybe we could go completely off-script and do this in another language (maybe Python's PAR equivalent is better in this respect) or maybe just maintaining some statically linked C binary.
__________________
Current Server: Sage v7.1.9.1 beta w/ Diamond UI on Ubuntu 11.10 x86_64 | Storage: Linux md's raid10,f2 | Client: HD300 extender | Tuner: HDHomeRun for QAM |
#7
|
|||
|
|||
Quote:
In any case, I am happy having the Playon plugin running on Linux. Thanks for great work.
__________________
TV: Samsung UN46D8000 Server: Intel Core i3 540, 4G RAM, Matrox G450, 70GB EXT3 encrypted software RAID1 system drive, 1TB XFS tv recording drive, 2TB EXT3 encrypted data drive mirror across 2 machines, 2TB EXT3 encrypted media drive mirror across 2 machines, CentOS 6 64 bit, Experimenting with DNLA servers 1Gb wired network Disconnected after G day[HD 100 Media Extender, Placeshifter 7.x, SageTV 7.x, HDHomeRun] |
#8
|
|||
|
|||
Quote:
Yes, a commercial company can easy solve the problem for a given distro and version. But what if company wants to support more distros? Each version has it's own versions of libraries the app depends upon. You need a repository for each version of each distro you care about. In the best case you don't need to recompile to support a new version, just change your package definition for the new RPM or deb. In the worst case, you need to not just recompile/re-link code, but also make small code changes. This is compounded by the fact that a community like Ubuntu generally expects software that supports 10.04 to support 10.10 ASAP. Also, while most libraries versions are stable in a given specific version of a distro, there are sometimes changes post-release that will break software in various ways. So now you have to be prepared to sorta-kinda track the latest updates from each version of each distro you care about and deal with breakages, fixing them and updating your repositories. All these things are doable, but require manpower and for many companies, the return isn't worth the effort. I love Linux as a user and as a developer, but the package and installation systems are heavily built around the idea of being "in" a given version of a given distribution. That is, the current set of packages available from Canonical for Ubuntu 10.10 is all compiled, linked, and tested together. From the outside a developer that has 10.10 as one of several Linux flavors it wants to support, it's difficult to keep up.
__________________
Current Server: Sage v7.1.9.1 beta w/ Diamond UI on Ubuntu 11.10 x86_64 | Storage: Linux md's raid10,f2 | Client: HD300 extender | Tuner: HDHomeRun for QAM |
#9
|
|||
|
|||
I think the problems you are describing are true for any system which is not statis in time. Yet, there are companies now which are able and willing to provide more/fully user friendly experience regardless of what OS the user is running (CrashPlan come to mind). What Sage is currently providing is the lowest common denominator which is fine for me, but can be done better with not so much more effort.
__________________
TV: Samsung UN46D8000 Server: Intel Core i3 540, 4G RAM, Matrox G450, 70GB EXT3 encrypted software RAID1 system drive, 1TB XFS tv recording drive, 2TB EXT3 encrypted data drive mirror across 2 machines, 2TB EXT3 encrypted media drive mirror across 2 machines, CentOS 6 64 bit, Experimenting with DNLA servers 1Gb wired network Disconnected after G day[HD 100 Media Extender, Placeshifter 7.x, SageTV 7.x, HDHomeRun] |
#10
|
|||
|
|||
We're off topic (I meant to say that last time, but forgot in my rant, I'm not meaning to say that as a shortcut to "win" the discussion, it just occured to me that I think I jacked the thread, oh well.)
Sure, this is true of any system that moves. However, when "Windows" is your target you've got two things making life easier for most apps, few flavors (Win7, Win2k3, Win2k8, etc. Plus RELALY good 32-bit support on the 64-bit OSs). When your target is "Linux" you have many more flavors, each with their own set of version that users reasonably consider current. Actually the biggest thing helping you is Microsoft generally thinks app compatibility across versions of Windows is important. Some types of software are easier to do this with on Linux than others, pure user level Java apps that don't need any/many system libraries work well. If your app is sensitive to certain commonly available libraries being a particular version, things get tougher. If your app needs to deploy drivers, things get really tough. This isn't nearly as true with Windows. Like Windows, the thing really hurting you is the overall Linux community doesn't seem to think closed-source binary compatibility is as import as Microsoft does. A given distro might (RedHat tries really hard to not break interfaces during a given version, Debian stable too). But overall not so much. Quote:
__________________
Current Server: Sage v7.1.9.1 beta w/ Diamond UI on Ubuntu 11.10 x86_64 | Storage: Linux md's raid10,f2 | Client: HD300 extender | Tuner: HDHomeRun for QAM Last edited by kbyrd; 04-01-2011 at 08:08 AM. |
#11
|
|||
|
|||
#12
|
|||
|
|||
I'd love to try it as I am running a 64 bit ubuntu system, however the xml file that Evil Penguin posted to allow linux users to install the newest version doesn't seem to be working unless I'm doing something wrong. I put it in my /opt/sagetv/server directory
Quote:
__________________
Intel I7 4790k @ stock speeds, 32 GB of ram. 8TB of recording space. |
#13
|
||||
|
||||
You can just try running UPnPBrowser.64bitOut from the command line w/o any parameters and if it works it'll give you the output from the first post. I'll worry about fixing the install procedure once I get working binaries.
__________________
Clients: 1xHD200 Connected to 50" TH-50PZ750U Plasma Server : Shuttle SFF SSH55J2 w/ Win7 Home, SageTV v7, Core i3 540, 2GB RAM, 30GB SSD for OS, 1.5TB+2x1TB WDGP for Recordings, BluRay, 2xHDHR, 1xFirewire SageTV : PlayOn, SJQ, MediaShrink, Comskip, Jetty, Web Client, BMT Having a problem? Don't forget to include a log! (Instructions for: PlayOn For SageTV v1.5, MediaShrink) Last edited by evilpenguin; 04-09-2011 at 12:30 AM. |
#14
|
||||
|
||||
I think it needs to go into /opt/sagetv/server/SageOnlineServicesEXEs
__________________
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. |
#15
|
|||
|
|||
I changed my user name is the only edit I made in the log file. It ran with no issues for me, it detected my running playon installation on my virtual machine as well(virtual machine does have its own distinct IP however)
Code:
Welcome to UPnPBrowser v1.2 (SNIP:BUILT)! (Sat Apr 9 08:08:12 2011 + Path: /home/user/Downloads + Making .cache Directory: (/home/user/Downloads/UPnPBrowser) + Checking: (/home/user/Downloads) + Checking: (/home/user) + Checking: (C:/Program Files/SageTV/SageTV) + Checking: (C:/Program Files (x86)/SageTV/SageTV) + Checking: (C:/Program Files (x64)/SageTV/SageTV) + Checking: (/opt/sagetv/server/) + Found SageTV Dir: (/opt/sagetv/server/) - SageTV Version: (SageTV V7.1.5.1) - STV Version : (2011011701) + Checking for preset updates - Downloaded UPnPBrowser.presets (Version: 20100615) ! Couldn't open presets file (/home/user/Downloads/UPnPBrowser/UPnPBrowser.presets) ! Updating Presets File (20100615 > -1) + Reading Presets (20100615) - PlayON : ("/search" "PlayON:+1") - Hulu : ("/search" "PlayON:Hulu:+1") - Hulu_User_Queue : ("/search" "PlayON:Hulu:User Queue:Sort By Date:+1") - Hulu_Popular_TV : ("/search" "PlayON:Hulu:Popular:Popular Shows:+1") - Hulu_Popular_Movies : ("/search" "PlayON:Hulu:Popular:Popular Feature Films:+1") - Hulu_Genres : ("/search" "PlayON:Hulu:TV Genres:+1") - Netflix : ("/search" "PlayON:Netflix:+1") - Netflix_User_Queue : ("/search" "PlayON:Netflix:Instant Queue:Queue Top 50:+1") - Netflix_Genres : ("/search" "PlayON:Netflix:Browse Genres:+1") - Netflix_New_Releases : ("/search" "PlayON:Netflix:New Arrivals:+1") - FOX : ("/search" "PlayON:Hulu:TV Networks:^FOX$:Popular Titles:+1") - CBS : ("/search" "PlayON:CBS:Primetime:+1") - ABC : ("/search" "PlayON:Hulu:TV Networks:^ABC$:Popular Titles:+1") - NBC : ("/search" "PlayON:Hulu:TV Networks:^NBC$:Popular Titles:+1") - USA : ("/search" "PlayON:Hulu:TV Networks:^USA$:Popular Titles:+1") - FX : ("/search" "PlayON:Hulu:TV Networks:^FX$:Popular Titles:+1") - Comedy_Central : ("/search" "PlayON:Comedy Central:Full Episodes:+1") + Parsing switches - optionsString: + /serverSearchTimeout : (1) + /mainMenu : Printing available UPnP Servers + Checking for .cache files not found in search - Device: Qwest UPnP v1.0(urn:schemas-upnp-org:device:InternetGatewayDevice:1) + Geneating Cache: (UPnPBrowser.Qwest UPnP v1.0.cache) - Device: Qwest TR-064 v1.0(urn:dslforum-org:device:InternetGatewayDevice:1) + Geneating Cache: (UPnPBrowser.Qwest TR-064 v1.0.cache) - Device: HDHomeRun 103053FC(urn:silicondust-com:device:hdhomerun:HDHR3-US) + Geneating Cache: (UPnPBrowser.HDHomeRun 103053FC.cache) - Device: PlayOn (vmserver-xp)(urn:schemas-upnp-org:device:MediaServer:1) + Geneating Cache: (UPnPBrowser.PlayOn (vmserver-xp).cache) - Device: user-PC: user:(urn:schemas-upnp-org:device:MediaServer:1) + Geneating Cache: (UPnPBrowser.user-PC: user:.cache) + Execution time: 00:00:05
__________________
Intel I7 4790k @ stock speeds, 32 GB of ram. 8TB of recording space. Last edited by Korny; 04-09-2011 at 07:14 AM. |
#16
|
||||
|
||||
Can someone test this on a 32-bit system to see if it works there?
__________________
Clients: 1xHD200 Connected to 50" TH-50PZ750U Plasma Server : Shuttle SFF SSH55J2 w/ Win7 Home, SageTV v7, Core i3 540, 2GB RAM, 30GB SSD for OS, 1.5TB+2x1TB WDGP for Recordings, BluRay, 2xHDHR, 1xFirewire SageTV : PlayOn, SJQ, MediaShrink, Comskip, Jetty, Web Client, BMT Having a problem? Don't forget to include a log! (Instructions for: PlayOn For SageTV v1.5, MediaShrink) |
#17
|
|||
|
|||
Quote:
__________________
Current Server: Sage v7.1.9.1 beta w/ Diamond UI on Ubuntu 11.10 x86_64 | Storage: Linux md's raid10,f2 | Client: HD300 extender | Tuner: HDHomeRun for QAM |
#18
|
|||
|
|||
I'll throw it in a virtual machine with a non active sagetv server in it if that works
edit: No luck with 32 bit ubuntu desktop 10.10, although it was just a fresh install.
__________________
Intel I7 4790k @ stock speeds, 32 GB of ram. 8TB of recording space. Last edited by Korny; 04-09-2011 at 05:54 PM. |
#19
|
|||
|
|||
Yeah, I'd probably have to build it for 32-bit exclusively. Any benefit to a 64-bit binary for this app? A 64-bit OS will run a 32-bit binary...shouldn't need to be 64-bit unless you're accessing tons of memory. I'll reply when I have a 32-bit version built.
|
#20
|
|||
|
|||
Quote:
http://dl.dropbox.com/u/15596865/UPnPBrowser.out |
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Plugin :: PlayOn for SageTV v1.5 | evilpenguin | SageTV v7 Customizations | 646 | 02-14-2016 05:14 PM |
Plugin :: PlayON for v7 | evilpenguin | SageTV v7 Customizations | 535 | 03-24-2011 03:17 PM |
SageTV on Linux with Playon for Netflix | davephan | SageTV Linux | 4 | 02-15-2011 08:36 PM |
Trouble using PlayOn Plugin on more than one PC | pkasin | SageTV v7 Customizations | 5 | 02-14-2011 10:31 AM |
Playon Support Under Linux | pzasso | SageTV Customizations | 3 | 12-14-2010 09:55 AM |