|
SageTV Customizations This forums is for discussing and sharing user-created modifications for the SageTV application created by using the SageTV Studio or through the use of external plugins. Use this forum to discuss customizations for SageTV version 6 and earlier, or for the SageTV3 UI. |
|
Thread Tools | Search this Thread | Display Modes |
#1
|
||||
|
||||
ESPN Motion
Another project I did some preliminary preparation for a while back was ESPN Motion (http://sports.espn.go.com/broadband/motion/showcase), which basically has sports stories integrated into the web/HTPC from ESPN broadcasts. It should be relatively easy to integrate ESPN motion, like on MCE, with Studio. I'm posting my notes from then so any industrious programmer can make progress on my research in my short-term absence.
Here are some screen shots of what MCE does for ESPN motion: screen 1 - http://htpcnews.com/images/mce2k5/espn.jpg screen 2 - http://htpcnews.com/images/mce2k5/espnwaiting.jpg High level, if you install the ESPNMotion program, it will download all the .wmv files into a directory called C:\Documents and Settings\All Users\Application Data\DIGStream\ESPNMotion in a background process. This is useful if you want to have the files locally with a 3rd party process, and then don't have to write the program to fetch these files. For an industrious programmer, the information is there to directly get these video files (as well as everything else) from the .xml files deposited from the web URL. That's what I'll document next. There are 3 files relevant to building this suite. 1) http://sports.espn.go.com/broadband/motion/showcase/ This URL contains the 'motion' array of the various clips available currently. The format is: motion[0] = new Clip(new Array(new Object({name:"hu_041202wiliams(bonds)2v.wm9_548k.motion_trans.wmv", id:1937532, ad_class:"ros"})), "Breaking News: Bonds used steroids","http://espn.go.com/media/motion/2004/1202/photo/williams.jpg"); The "hu*.wmv" file is the actual video file name stored locally, the "Breaking News..." is the title of the story, and the "http:...williams.jpg" is the picture used to display the headline. Some notes about the format of the motion array: a) some array items have multiple .wmv files together. The parser will simply have to check inside the new Array() to see how many Object() elements there are and react accordingly. b) some array items do not have a picture file. My plan was to use a generic ESPNMotion graphic, like this one: http://espn-att.starwave.com/motion/head_logo.gif (196x82) 2) showcaseData[1].xml - stored in the temporary internet files, after browsing the main URL. The '1' in the file name is a generic number. Should search for the latest date file of the format "showcaseData[#].xml". This file is the key one. It tracks all the categories for each file, and shows the POSSIBLE files available for playing. I was more aware of this in early september, but from what I remember, this looks like a full array of all the possible story files out there, but only displays the ones available in the actual motion[] array. 3) ESPNMotionXMLv4[1].xml - another temp internet file, same as #2. This file is only useful / necessary if you want to actually GET the .wmv file on your own. It stores the actual web location of the file (misnamed as a .gif, if I remember right, to prevent direct web usage/DL), the full file size, and the destination file name (renamed to a usable .wmv). There's also a "stats" category, that I think correlates to a sport 'type', and have generic documentation, but never confirmed if this was useful. Mainly from files #1/#2, it's easy to pull down the following structure: - Story category (Top story, MLB, NFL, etc.) - Story description - .jpg file name (or generic, if missing) - .wmv file list (file name, duration, statcategory) With studio and this scraped file, I would assume it would be easy to replicate the MCE integration of ESPN motion, and make a stand-alone module to integrate to any .STV. The only thing I think I remember as an issue is that SageTV doesn't actually play .wmv files, but it would be easy enough to have it launch an external player to achieve the same result. |
#2
|
||||
|
||||
Started my packet sniffer to ferret out the details of where some of these files were sourced. Here's an update on the hope that someone who has the time can bring this one to fruition. This looks like the easiest plug-in to create / maintain of the ones I'm playing with.
Updating the previous post with more detail in this one. 0) Constants: - WMV dir: C:\Documents and Settings\All Users\Application Data\DIGStream\ESPNMotion - JPG URL: http://espn.go.com 1) ESPNMotionXMLv4 (was #3 before): XML file for .wmv media source - Source URL: http://sports.espn.go.com/espn/espnm...SPNMotionXMLv4 - <link>: URL (w/ .gif extension) to the .wmv file - <fileSize>: total bytes in .wmv file - <fileName>: .wmv file name after DL completed; stored in WMV dir - <statscategory>: sports category. Not 100% decoded yet, but not necessary 2) showcaseData (was #2 before): XML file for .wmv wrapper data - Source URL: http://sports.espn.go.com/broadband/...e/showcaseData - <SECTION>: Menu categorization + NAME: Menu name + COLOR: Menu color (on ESPN Motion web site) -- <CLIP>: Individual .wmv media item ++ NAME: .wmv file name; stored in WMV dir ++ IMAGE: .jpg preview of .wmv file; file path relative to JPG URL ++ DURATION: duration of .wmv file, in seconds ++ CAPTION: Text caption of .wmv file NOTE: If you use the background ESPNMotion process to DL the .wmv files, you don't need to use item 1 here. This is the only file you actually need to create a menu that can launch the .wmv files. Basically, you need to launch an external media player as the integrated command. In my case, I've tested Media Player Classic and ZoomPlayer. 3) showcase (was #1 before): HTML web implementation of #2 - Source URL: http://sports.espn.go.com/broadband/motion/showcase/ - motion[] array: The array here is loaded into the shockwave section to repliacte the menuing system I envision for item #2. I spent my time during the boring Falcons game culling the detail I didn't have at the time of my first post, so (a) someone can tackle this, or (b) I have the documentation and don't forget if/when I have the time. Lotsa neat stuff abounds. Hope someone tackles this one. EDIT: Just realized the initial link for ESPNMotion in post #1 didn't have a trailing "/", and it DOES make a difference, for some reason... Here's the real ESPNMotion URL: http://sports.espn.go.com/broadband/motion/showcase/ Last edited by ToonGal; 01-17-2005 at 07:07 PM. |
#3
|
|||
|
|||
URL's require the trailing slash but no one adds it so when (most) HTTP servers receive a URL without one they send a REDIRECT message to the name with a slash appended. Maybe something misconfigured or they don't want to make it easy for people to 'start' there.
Obviously I had nothing better to contribute. peace . . . Quote:
__________________
PVR user since the late 1900's . . . |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|