![]() |
|
Register | Forum Rules | FAQs | Members List | Social Groups | Downloads | Search | Today's Posts | Mark Forums Read |
Hardware Support Discussions related to using various hardware setups with SageTV products. Anything relating to capture cards, remotes, infrared receivers/transmitters, system compatibility or other hardware related problems or suggestions should be posted here. |
![]() |
|
Thread Tools | Search this Thread | Display Modes |
#41
|
|||
|
|||
Interesting project. Keep us posted on how it goes
|
#42
|
||||
|
||||
First post from PS3
I'm writing this post from my PS3 running Yellow Dog Linux 6.1.
I have to say that it's pretty zippy, though I haven't run any benchmarks yet. Of particular importance is that I chose to not install any of the packaged window managers (Gnome, KDE and Enlightenment) rather choosing to stick with the default twm (Tom's Window Manager). Next steps are to install qEMU, build the latest version of mplayer, trace the x86 Linux Placeshifter library dependencies, and then run all the x86 bits under qEMU. Then, depending on how the performance is, tweak Linux until it works. |
#43
|
|||
|
|||
Good luck devinteske. I can't wait to hear how it goes...
|
#44
|
||||
|
||||
Brain Dump
Here's the latest progress.
I wrote up an informative text file including procedures, work-arounds, resources, download links, etc. attached as SageProgress.txt (unix line-termination). This file will grow and probably get more detailed as we go along, but so far it's been smooth-sailing (so, sorry, not much in the way of ground-breaking work documented yet). Plus, if this turns out to be a big success, the file can serve as a how-to for others. Posting this while compiling qEMU (firefox can get a little sluggish when compiling the larger files). Last edited by devinteske; 04-01-2009 at 07:21 PM. Reason: grammar |
#45
|
||||
|
||||
great documentation!!! I really enjoyed the read so far... can't wait to read more.
__________________
Batch Metadata Tools (User Guides) - SageTV App (Android) - SageTV Plex Channel - My Other Android Apps - sagex-api wrappers - Google+ - Phoenix Renamer Downloads SageTV V9 | Android MiniClient |
#46
|
||||
|
||||
![]()
qEMU will take a while to get working (I'll have to author some patches).
In the meantime, I got mplayer-1.0rc2 compiled. I had to make some changes to get it to compile: # yum update # yum install giflib $ wget http://www.mplayerhq.hu/MPlayer/rele...1.0rc2.tar.bz2 $ tar jxfv MPlayer-1.0rc2.tar.bz2 $ cd MPlayer-1.0rc2 $ ./configure --enable-gif --enable-png --enable-jpeg --enable-x11 --enable-altivec --disable-ivtv $ make # make install ( lines prefixed with '$' can be run as any user, while lines prefixed with '#' are to be run as root or simply add "sudo" prefix to the command) According to Brian Wood, mplayer-1.0rc1-4.1.1 (slightly older than the 1.0rc2 build I just compiled) is able to produce smooth video playback on the PS3* (* using framebuffer video output, no access to RSX for 2D/3D acceleration). See below: http://www.mail-archive.com/yellowdo.../msg03547.html Although I would have preferred to use the absolute latest version of mplayer (from SVN repository, current version is 1.0rc3) but the latest source does not compile on the PS3. I'll eventually come back to rc3 to see if I can get it compiled (with or without patches), as I'm sure we'll want the latest x11 framebuffer code. Worst-case scenario, I could manually merge in any changes that we need if deemed necessary. Hopefully, this evening, I'll have some test results that will either confirm or refute Mr. Brian Wood's findings. My hopes are high since (a) Brian was using an older version of mplayer (1.0rc1 versus 1.0rc2) and (b) an older version of Yellow Dog Linux (6.0 versus 6.1). I don't know what version of firmware his PS3 was running at, but since he reported that he was using x11 frame-buffer with no hardware acceleration, we should see similar performance under my test environment. Hopefully, using later versions will not result in degraded performance. |
#47
|
||||
|
||||
Got 480i and DVD quality playback to be smooth but 720p lagged out under scenes of intense color, explosions, fast movement, et cetera.
However, there is a chance that I am running into a limitation on the newer model PS3. According to research, YDL 6.1 - by way of the ps3vram module/service - has access to an additional 256MB of memory by accessing the unused RSX GDD3 VRAM. However, this module does not work on newer model PS3's, such as the 80GB model I purchased in December, 2008. With an additional swap space on fast GDDR3 and drastically reducing swap space, it's quite possible that I could smooth out the 720p playback. It is likely that Brian Wood - whom I quoted in a previous post - either was using a 1080p encoding that made use of a highly streamlined codec or was dubious in his blanket statement, claiming smooth playback of resolutions up to 1080p. I will continue to work on slimming down Linux as much as humanly possible and also look into custom modifications out there that could perhaps allow us to offload some video playback on the dormant SPUs. The verdict is in, however. Without modification to the Linux distribution, Hi-Def playback is about 78% CPU usage, pegging during heavy scenes. Standard def playback on the other-hand saw CPU usage around 9-10%. I have little doubt that should the Linux x86 Placeshifter function properly under qEMU, that standard definition playback will be seemless with CPU and memory to spare. Update: qEMU compiled successfully and I'll set some time aside tomorrow to running the miniclient. Last edited by devinteske; 04-02-2009 at 06:55 PM. Reason: Update |
#48
|
||||
|
||||
Grrrr
F$&@ ME! The SageTV Placeshifter "miniclient" is using a custom version of mplayer built with command-line arguments that the SVN version of mplayer doesn't understand (most notably -stream-buffer-size and -activefile).
Either (a) the Sage developers modified mplayer to suit their needs or (b) those arguments have since been deprecated. Googling leads me to believe it's more likely the former than the latter. Oh well. I guess that means we'll need to run Sage's custom version of mplayer under qemu (blech, I was really looking forward to using the latest version of mplayer compiled on the PS3 to improve performance and codec support). Now I'll have to benchmark this custom mplayer under qemu to see if it can at least provide decent performance for Standard Def (Hi-Def is looking more and more like a pipe-dream but I am still holding out hope for 720p; forget about 1080p, not gonna happen under qemu). |
#49
|
||||
|
||||
Quote:
BTW, even if you don't get sage working under the ps3... you guides/notes will be of value to people like myself that want to put linux on their ps3... so thanks for documenting the steps, etc.
__________________
Batch Metadata Tools (User Guides) - SageTV App (Android) - SageTV Plex Channel - My Other Android Apps - sagex-api wrappers - Google+ - Phoenix Renamer Downloads SageTV V9 | Android MiniClient |
#50
|
||||
|
||||
Quote:
If on the other-hand, I get it working smoothly with (in any resolution), then I will likely package everything up into an ISO that others could install. Something that would make all the necessary tweeks and modifications automatically and contain all the necessary utilities pre-compiled. |
#51
|
||||
|
||||
I think the ISO would be appreciated.
At some point, I think that it would be interesting to try your other approach as well, using BD-J, (as indicated in the thread title). I'd try it myself, but I need to buy a bluray writer... which isn't going to happen anytime soon, since I just spent my allowance on a new server ![]()
__________________
Batch Metadata Tools (User Guides) - SageTV App (Android) - SageTV Plex Channel - My Other Android Apps - sagex-api wrappers - Google+ - Phoenix Renamer Downloads SageTV V9 | Android MiniClient |
#52
|
||||
|
||||
Wait a minute!
I just had a realization that could have far-reaching impact on our success of this project.
I was originally hoping to run mplayer natively, compiled for the PS3's PPE architecture. However, when I realized that they are using a modified version of mplayer, my hopes were dashed. But maybe not! Although we could get around the problem by simply running their custom version of mplayer (compiled for x86) under qEMU (at the cost of performance), I had the stark realization that... MPLAYER IS LICENSED UNDER THE GPLv2!! By all accounts of the law, Frey Technologies MUST provide me with a copy of the source to their modified version of mplayer. |
#53
|
|||
|
|||
Have you contacted Sage? It's a small company, but it seems like they're all great guys and the lead developer really knows what he's doing. If they did modify mplayer, I'd be awfully surprised if they wouldn't give you what you need. And even if they didn't, I think they'd try to help you out a bit. I think the Sage guys have done something similar to get Sage working on a Blu-ray player, but I'm not sure what sort of IP restrictions they're under.
|
#54
|
||||
|
||||
Did just now. Here's what I wrote:
Quote:
Update: We'll see what kind of response I get back. I'm optimistic given your positive personal attribution to the Sage team, reggie14. Last edited by devinteske; 04-03-2009 at 04:33 PM. Reason: Addendum |
#55
|
||||
|
||||
I was wondering why you didn't just start with our mplayer code since its GPL.
![]()
__________________
Jeffrey Kardatzke Founder of SageTV |
#56
|
||||
|
||||
![]()
I wasn't aware that the source was available for download.
It looks as though the source available at the above link is version rc3 of mplayer! That's great, since I was seriously considering cross-referencing the source against the un-modified version of mplayer, generating a set of "SageTV diffs" and then apply the necessary modifications required to run the placeshifter with mplayer to the SVN release of mplayer (just to make sure that we are running with the absolute latest code). However, it looks as though that this is already the latest code. Narflex, can you confirm that this source (prior to the addition of the sage bits) was taken from sub-version (SVN)? and if so, do you know when? UPDATE: Looks as though it was taken from SVN in January, 2009. Oh, and thank you very much for the source. I'll compile it on the PS3 today. To save everybody else a load of work (should anybody else need a compiled version of your mplayer for PPC Linux), what compile-time arguments (to configure for example) should be enabled or disabled when compiling? I'd like to pack this up into a CentOS RPM for PPC Linux (which will work on Yellow Dog, Red Hat, and CentOS Linux distributions, or any other distro using yum/yam package distribution methods). Update: I've discovered the following configure options that appear to be related to enabling the sage modifications: --enable-eavios --enable-stv --enable-stream-sagetv Are there any other that you recommend? (not sure about the eavios or stv options, but they don't appear in the latest SVN) -- Devin Last edited by devinteske; 04-05-2009 at 01:21 PM. |
#57
|
||||
|
||||
Update Needed?
Been going through the recursive diffs (between mplayer source you provided and SVN version of mplayer taken on APR-3-2009) for a while now.
Looks like Sage's custom mplayer is based on version rc3 of mplayer from 2009-01-05. I'll see if there's anything overtly wanted from the latest version, but it looks like we may want to wait until rc4 is cut from SVN (so far, last mod I see in SVN was 2009-03-27). I've found some AltiVec fixes that may be warranted for the PS3 port. Last edited by devinteske; 04-05-2009 at 12:30 PM. Reason: correct version findings |
#58
|
||||
|
||||
It's Alive! Sorta
For some reason, qemu is not behaving in user-land. According to the documentation, you are supposed to be able to execute the shell-script "qemu-binfmt-config.sh" which will configure Linux to automatically run Intel x86 ELF binaries with qemu. However, utilities such as 'ldd' still have no understanding of the binary executable format so we run into other problems. I'll see if I can get it to work based on their examples.
However, I was actually able to launch the miniclient without emulation and get a prompt to add a Placeshifter server. Of course, we run into problems when the Java code attempts to dynamically link to the shared objects. See bellow error_log: Code:
Starting MiniClient Mon 4/6 10:04:18.969 Detecting cryptography support... Mon 4/6 10:04:24.740 Sending out discovery packets to find SageTVPlaceshifter Servers... Mon 4/6 10:04:24.861 Starting SageTVPlaceshifter Client Mon 4/6 10:04:24.865 Starting main loop Mon 4/6 10:04:24.869 StorageDeviceDetector started... Mon 4/6 10:04:29.766 Error discovering servers:java.net.SocketTimeoutException: Receive timed out Mon 4/6 10:04:34.769 Sending out discovery packets to find SageTVPlaceshifter Servers... Mon 4/6 10:04:39.777 Error discovering servers:java.net.SocketTimeoutException: Receive timed out Mon 4/6 10:04:44.777 Sending out discovery packets to find SageTVPlaceshifter Servers... Mon 4/6 10:04:45.827 Attempting to connect to server at 10.0.0.2:31099 Mon 4/6 10:04:45.840 Error getting MAC address of:java.io.IOException: java.io.IOException: No such file or directory Mon 4/6 10:04:45.842 Connection accepted by server Mon 4/6 10:04:45.843 Connected to media server Mon 4/6 10:04:45.849 Error getting MAC address of:java.io.IOException: java.io.IOException: No such file or directory Mon 4/6 10:04:45.851 Connection accepted by server Mon 4/6 10:04:45.851 Connected to gfx server Mon 4/6 10:04:45.966 Testing to see if server can do a pull mode streaming connection... Mon 4/6 10:04:45.967 Server can do a pull-mode streaming connection. Exception during event dispatch: Mon 4/6 10:04:45.989 Staring video server Mon 4/6 10:04:46.069 Temp file:/tmp/sagevideo6gr8is Exception in thread "VideoRead" java.lang.NoClassDefFoundError: jtux.UConstant at java.lang.Class.initializeClass(libgcj.so.7rh) at sage.miniclient.MiniClientConnection.startVideoServer(MiniClientConnection.java:456) at sage.miniclient.MiniClientConnection$6.run(MiniClientConnection.java:688) java.lang.UnsatisfiedLinkError: libjtux: ./libjtux.so: ELF file data encoding not big-endian at java.lang.Runtime._load(libgcj.so.7rh) at java.lang.Runtime.loadLibrary(libgcj.so.7rh) at java.lang.System.loadLibrary(libgcj.so.7rh) at jtux.UUtil.<clinit>(UUtil.java:8) at java.lang.Class.initializeClass(libgcj.so.7rh) at jtux.UConstant.<clinit>(UConstant.java:4) at java.lang.Class.initializeClass(libgcj.so.7rh) at java.lang.Class.initializeClass(libgcj.so.7rh) at sage.miniclient.MiniClientConnection.connect(MiniClientConnection.java:349) at sage.miniclient.MiniClientManagerFrame.connectToServer(MiniClientManagerFrame.java:494) at sage.miniclient.MiniClientManagerFrame.actionPerformed(MiniClientManagerFrame.java:336) at javax.swing.AbstractButton.fireActionPerformed(libgcj.so.7rh) at javax.swing.AbstractButton$1.actionPerformed(libgcj.so.7rh) at javax.swing.DefaultButtonModel.fireActionPerformed(libgcj.so.7rh) at javax.swing.DefaultButtonModel.setPressed(libgcj.so.7rh) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(libgcj.so.7rh) at java.awt.Component.processMouseEvent(libgcj.so.7rh) at java.awt.Component.processEvent(libgcj.so.7rh) at java.awt.Container.processEvent(libgcj.so.7rh) at java.awt.Component.dispatchEventImpl(libgcj.so.7rh) at java.awt.Container.dispatchEventImpl(libgcj.so.7rh) at java.awt.Component.dispatchEvent(libgcj.so.7rh) at java.awt.LightweightDispatcher.handleMouseEvent(libgcj.so.7rh) at java.awt.LightweightDispatcher.dispatchEvent(libgcj.so.7rh) at java.awt.Container.dispatchEventImpl(libgcj.so.7rh) at java.awt.Window.dispatchEventImpl(libgcj.so.7rh) at java.awt.Component.dispatchEvent(libgcj.so.7rh) at java.awt.EventQueue.dispatchEvent(libgcj.so.7rh) at java.awt.EventDispatchThread.run(libgcj.so.7rh) ERROR loading native lib for UI:java.lang.UnsatisfiedLinkError: libSage: ./libSage.so: ELF file data encoding not big-endian Mon 4/6 10:04:49.372 GetProperty: GFX_TEXTMODE Mon 4/6 10:04:49.373 GetProperty: FIRMWARE_VERSION Mon 4/6 10:04:49.374 GetProperty: GFX_BLENDMODE Mon 4/6 10:04:49.374 GetProperty: GFX_DRAWMODE Mon 4/6 10:04:49.374 GetProperty: GFX_SURFACES Mon 4/6 10:04:49.375 GetProperty: GFX_HIRES_SURFACES Mon 4/6 10:04:49.375 GetProperty: GFX_VIDEO_UPDATE Mon 4/6 10:04:49.376 GetProperty: GFX_BITMAP_FORMAT Mon 4/6 10:04:49.376 GetProperty: GFX_SCALING Mon 4/6 10:04:49.376 GetProperty: GFX_OFFLINE_IMAGE_CACHE Mon 4/6 10:04:49.377 GetProperty: GFX_YUV_IMAGE_CACHE Mon 4/6 10:04:49.377 GetProperty: GFX_SUPPORTED_ASPECTS Mon 4/6 10:04:49.378 GetProperty: GFX_ASPECT Mon 4/6 10:04:49.378 GetProperty: VIDEO_ADVANCED_ASPECT_LIST Mon 4/6 10:04:49.378 GetProperty: GFX_SUPPORTED_RESOLUTIONS Mon 4/6 10:04:49.503 GetProperty: GFX_SUPPORTED_RESOLUTIONS_DIGITAL Mon 4/6 10:04:49.503 GetProperty: GFX_RESOLUTION Mon 4/6 10:04:49.504 GetProperty: GFX_HDMI_MODE Mon 4/6 10:04:49.504 GetProperty: GFX_COMPOSITE Mon 4/6 10:04:49.505 GetProperty: GFX_COLORKEY Mon 4/6 10:04:49.505 GetProperty: AUDIO_OUTPUTS Mon 4/6 10:04:49.506 GetProperty: AUDIO_OUTPUT Mon 4/6 10:04:49.506 GetProperty: INPUT_DEVICES Mon 4/6 10:04:49.506 GetProperty: DISPLAY_OVERSCAN Mon 4/6 10:04:49.507 GetProperty: VIDEO_CODECS Mon 4/6 10:04:49.507 GetProperty: AUDIO_CODECS Mon 4/6 10:04:49.507 GetProperty: PULL_AV_CONTAINERS Mon 4/6 10:04:49.508 GetProperty: PUSH_AV_CONTAINERS Mon 4/6 10:04:49.508 GetProperty: STREAMING_PROTOCOLS Mon 4/6 10:04:49.508 GetProperty: FIXED_PUSH_MEDIA_FORMAT Mon 4/6 10:04:49.509 GetProperty: DETAILED_BUFFER_STATS Mon 4/6 10:04:49.509 GetProperty: PUSH_BUFFER_SEEKING Mon 4/6 10:04:49.510 GetProperty: MEDIA_PLAYER_BUFFER_DELAY Mon 4/6 10:04:49.510 GetProperty: REMOTE_FS Mon 4/6 10:04:49.511 GetProperty: IR_PROTOCOL Mon 4/6 10:04:49.511 GetProperty: VIDEO_ADVANCED_ASPECT Mon 4/6 10:04:49.511 SetProperty GFX_ASPECT Mon 4/6 10:04:49.512 GetProperty: CRYPTO_ALGORITHMS Mon 4/6 10:04:49.785 Error discovering servers:java.net.SocketTimeoutException: Receive timed out Mon 4/6 10:04:50.964 Error w/ GFX Thread: java.lang.NullPointerException java.lang.NullPointerException at gnu.java.awt.peer.gtk.GtkComponentPeer.setCursor(libgcj.so.7rh) at java.awt.Component.setCursor(libgcj.so.7rh) at sage.miniclient.GFXCMD2.ExecuteGFXCommand(GFXCMD2.java:219) at sage.miniclient.MiniClientConnection.GFXThread(MiniClientConnection.java:843) at sage.miniclient.MiniClientConnection.access$200(MiniClientConnection.java:6) at sage.miniclient.MiniClientConnection$4.run(MiniClientConnection.java:340) Mon 4/6 10:04:54.789 Sending out discovery packets to find SageTVPlaceshifter Servers... Mon 4/6 10:04:59.797 Error discovering servers:java.net.SocketTimeoutException: Receive timed out Mon 4/6 10:05:04.801 Sending out discovery packets to find SageTVPlaceshifter Servers... Mon 4/6 10:05:09.809 Error discovering servers:java.net.SocketTimeoutException: Receive timed out Mon 4/6 10:05:14.813 Sending out discovery packets to find SageTVPlaceshifter Servers... Mon 4/6 10:05:17.888 Error w/ Media Thread: java.net.SocketException: Socket Closed java.net.SocketException: Socket Closed at java.io.DataInputStream.readFully(libgcj.so.7rh) at java.io.DataInputStream.readFully(libgcj.so.7rh) at sage.miniclient.MiniClientConnection.MediaThread(MiniClientConnection.java:1923) at sage.miniclient.MiniClientConnection.access$100(MiniClientConnection.java:6) at sage.miniclient.MiniClientConnection$3.run(MiniClientConnection.java:331) The program '.' received an X Window System error. This probably reflects a bug in the program. The error was 'RenderBadPicture (invalid Picture parameter)'. (Details: serial 2527 error_code 180 request_code 154 minor_code 6) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the --sync command line option to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.) Mon 4/6 10:05:19.821 Error discovering servers:java.net.SocketTimeoutException: Receive timed out Mon 4/6 10:05:24.825 Sending out discovery packets to find SageTVPlaceshifter Servers... Mon 4/6 10:05:29.833 Error discovering servers:java.net.SocketTimeoutException: Receive timed out Code:
java.lang.UnsatisfiedLinkError: libjtux: ./libjtux.so: ELF file data encoding not big-endian ERROR loading native lib for UI:java.lang.UnsatisfiedLinkError: libSage: ./libSage.so: ELF file data encoding not big-endian As for "libsage.so", we all know that this one isn't open-source. Though perhaps I could either (a) send Narflex a PS3 to compile on and (b) get them to put the shared-object up for download. Besides that, the only way I see Sage running is if I run an x86 Linux on top of the PPC Linux. This may be possible (as a usable solution at least for standard-definition video playback) if we use X11 forwarding back to the native X11 server. My faith in the user-land qEMU emulator is shaky at best. I do, however, have faith that the qEMU system emulator (which boots entire OS's into emulation rather than trying to emulate i386 binaries in user-land within the native OS) will work. However, the problem is that emulating an entire OS can be resource intensive, so I have a plan. The plan would be to install a slim Linux build with X11 and qEMU. Then have a second (i386) Linux install that has been severely reduced to only include the essentials to run the SageTV Linux Placeshifter ("miniclient") but without X11. To render graphics, we'll simply SSH to the booted [emulated] Linux with X11 forwarding enabled. This will allow a full-speed X11 server running directly on the PS3's hypervisor to render objects on the screen rather than relying on a much-slower X11 server running within the qEMU environment. Now, if we could find a way to do the same thing with Java, so that we don't have to run the Java byte-code under a virtualized Jave Runtime Environment, that would help too. Perhaps somebody with a little bit more Java experience can tell me if it's possible to have another host execute the code, but nothing comes to mind right now. Though so far, it looks like we won't have to emulate too much under qEMU. A base Linux install with a JRE, SSH, a few libraries, and the miniclient should show a relatively small foot-print (both disk and memory-wise) that the performance of the native X11 server should not suffer too greatly. Last edited by devinteske; 04-07-2009 at 08:31 AM. |
#59
|
||||
|
||||
Quote:
A different approach (and the approach that I was going to take with the bdj) is to write a custom client/player using the Sage Remote APIs. The drawback to this, of couse is that it would not actually be using any of the sagetv client technology to draw the screens, etc, and then I always come back to... if I have to write my own UI, then why not just use ps3mediaserver ![]()
__________________
Batch Metadata Tools (User Guides) - SageTV App (Android) - SageTV Plex Channel - My Other Android Apps - sagex-api wrappers - Google+ - Phoenix Renamer Downloads SageTV V9 | Android MiniClient |
#60
|
||||
|
||||
Quote:
IMHO, Sage is the best. Neither MythTV, Meedio, BeyondTV, Freevo, GbPVR, XBox Media Center, Windows Media Center 2005, and many others even hold a candle to Sage (Vista Media Center comes close). So, yeah, I'm right there with you. I don't just want to play videos on my PS3. I want to play videos in Sage on my PS3. Edit: I'm not a fan-boy, I'm just loyal to what works (and works damned well). However, it's worth noting that I have come to know-and-love Sage very much over the years that I'm not even going to attempt to get anything else running on the PS3. Yeah, I've seen reports that MythTV is running native on PS3, but who cares? Sage or bust. Last edited by devinteske; 04-07-2009 at 09:16 AM. Reason: show my support |
![]() |
Tags |
bd-j, bdj, client, extender, ps3 |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
SageTV, the HD Homerun, and a PS3 | Keenan | Hardware Support | 0 | 04-02-2008 01:28 PM |
SageTV Client on PS3 (under linux)? | bjkiller | SageTV Linux | 2 | 11-25-2007 10:35 AM |
PS3 | ChePazzo | General Discussion | 4 | 12-21-2006 04:40 AM |
Sage on PS3 Possible? | VikingCrown | SageTV Linux | 18 | 10-21-2006 12:45 PM |