If you own an EyeTV device and EyeHome, you are proably aware that you cannot view your live stream with EyeHome. I searched everywhere and couldn't find a solution, so I came up with one.
Now set up VLC to re-stream CyTV's output:
So we're still not there yet. You may be aware that EyeHome is based on Syabas, who uses a web server with extended scripting (see note below on how to view HTML source code on the EyeHome server).
The next step: Enable Web Sharing (web server) in System Preferences -> Sharing -> Personal Web Sharing. Next, we need to create two web pages for EyeHome to launch a stream.
The first page, index.html, looks like this:
Another Note: The /?&ext=.mpg doesn't do anything special to the VLC server, but it's neccesary as EyeHome reads this part of the URL before loading the stream to know what type.
Now you can put these pages on any web server, but here's another trick. EyeHome's startup screen (where you select servers) will allow you to point to a web server, but it will not allow you to point to a specific page on a web server. So it's best to make this your default, index.html page, at the root of your server. For those of who are unfamiliar with Apple's web server, the root is located at /Library/WebServer/Documents/
Once these the above steps are done, go to your EyeHome and press the button with the icon of a person on the remote. This will take you to the start screen, where you can choose which computer EyeHome will connect to. Add your web site's IP and Port to the list. For example, 192.168.0.4:80. Note that you must define your port or EyeHome will use the default of 8000 (80 is the default for Apple's web server).
Now with once click from your Start Screen, you'll get an EyeHome formated page that will start the EyeTV Stream.
In my testing, the stream would drop occasionally. Simply pressing OK on the remote brought it back instantly. My stream is delayed about 10-11 sec. This makes navigating my Dish a slight pain. But I was able to watch the stream for well over an hour without any drops.
Other Notes:
It was mentioned in another tip that you can use Neuston's server from a PC. This is cool because version 2.8 will allow you to connect with your regular web browser, and viewing source will give you some insights into how you can build EyeHome compatible web pages. The above HTML code is very bland and basic, so I will leave it up to you to customize it to match your theme.
Also if you want to see the source on EyeHome's server, instead of seeing "unauthorized access," use FireFox and the extension called User Agent Switcher. Create a User_Agent with the following value:
Now you should be able to browse your EyeHome Server with FireFox. In case you are wondering how I figured this out ... the User_Agent string is passed by the browser to every web server. By pointing your EyeHome to a URL like this one, you can see this and other variables. My guess is EyeHome is using this variable to keep other Syabas based browsers from accessing their server.
Now armed with this info, I bet someone could create an web interface and build a database for Metadata from IMDB.com (links that will show you DVD covers, plots, etc., as well as start your movie). I'll leave this idea to someone with more coding experience.
Lastly, if streaming EyeTV to EyeHome is possible with these basic tools, why didn't Elgato do this?
- InstallCyTV.
- Install VLC.
- Get the latest EyeTV release; it has been updated to v 1.8.4 as of this posting.
Now set up VLC to re-stream CyTV's output:
- In VLC File -> Open Network
- Select HTTP -> enter the URL for the CyTV Stream (http://YourIP:YourPort)
- Click Advanced Output/Settings -> Choose Stream Type HTTP
- Select a port number or use the 1234 default.
- Choose MPEG 1 for Encapsulation Method
- Don't use transcoding settings.
- Click OK on the screens and VLC should start producing a stream.
So we're still not there yet. You may be aware that EyeHome is based on Syabas, who uses a web server with extended scripting (see note below on how to view HTML source code on the EyeHome server).
The next step: Enable Web Sharing (web server) in System Preferences -> Sharing -> Personal Web Sharing. Next, we need to create two web pages for EyeHome to launch a stream.
The first page, index.html, looks like this:
<table border="0" width="100%" height="100">
<tr>
<td align="center" valign="middle" height="370">
<!-- Video -->
<a href="live.html" tvid="1" style="width:13" name=start vod="playlist">EyeTV Live</a>
<!-- Video -->
</td>
</tr>
</table>
The second page, named live.html, contains just this:
Live EyeTV|0|0|http://[IP]:[PORT]/?&ext=.mpg|
Note:In the above code, replace [IP] (remove the brackets, too) with the IP of your machine with the VLC stream. Do the same for the [PORT] entry. Also pay attention to the pipes -- the vertical bar character ("|") on the backslash key on most keyboards.
Another Note: The /?&ext=.mpg doesn't do anything special to the VLC server, but it's neccesary as EyeHome reads this part of the URL before loading the stream to know what type.
Now you can put these pages on any web server, but here's another trick. EyeHome's startup screen (where you select servers) will allow you to point to a web server, but it will not allow you to point to a specific page on a web server. So it's best to make this your default, index.html page, at the root of your server. For those of who are unfamiliar with Apple's web server, the root is located at /Library/WebServer/Documents/
Once these the above steps are done, go to your EyeHome and press the button with the icon of a person on the remote. This will take you to the start screen, where you can choose which computer EyeHome will connect to. Add your web site's IP and Port to the list. For example, 192.168.0.4:80. Note that you must define your port or EyeHome will use the default of 8000 (80 is the default for Apple's web server).
Now with once click from your Start Screen, you'll get an EyeHome formated page that will start the EyeTV Stream.
In my testing, the stream would drop occasionally. Simply pressing OK on the remote brought it back instantly. My stream is delayed about 10-11 sec. This makes navigating my Dish a slight pain. But I was able to watch the stream for well over an hour without any drops.
Other Notes:
It was mentioned in another tip that you can use Neuston's server from a PC. This is cool because version 2.8 will allow you to connect with your regular web browser, and viewing source will give you some insights into how you can build EyeHome compatible web pages. The above HTML code is very bland and basic, so I will leave it up to you to customize it to match your theme.
Also if you want to see the source on EyeHome's server, instead of seeing "unauthorized access," use FireFox and the extension called User Agent Switcher. Create a User_Agent with the following value:
Sybasa/08-43-050106-04-EGT-103-007/04-EGT(uCOS-II v2.05;NOS;KA9Q;
624x416,HiColor; www.syabas.com )
Note that this should be one long line; the break was inserted for easier reading here.
Now you should be able to browse your EyeHome Server with FireFox. In case you are wondering how I figured this out ... the User_Agent string is passed by the browser to every web server. By pointing your EyeHome to a URL like this one, you can see this and other variables. My guess is EyeHome is using this variable to keep other Syabas based browsers from accessing their server.
Now armed with this info, I bet someone could create an web interface and build a database for Metadata from IMDB.com (links that will show you DVD covers, plots, etc., as well as start your movie). I'll leave this idea to someone with more coding experience.
Lastly, if streaming EyeTV to EyeHome is possible with these basic tools, why didn't Elgato do this?
•
[22,539 views]

