kapone
11-07-07, 12:04 PM
For people who have Windows Home Server and Media Center(s), the allure of recording direct to WHS from MCE/VMC has existed for the longest time. It is certainly doable and Richard Miller and Ian Dixon have posted excellent guides to do this.
http://thedigitallifestyle.com/cs/forums/1/2608/ShowThread.aspx
However, even with folowing the guide to the T, Media Center still throws errors a lot of times because of the network access. The most often encountered errors are:
- "Disk Full..." when you have your Media Center to record to WHS, and you start it up and try to watch live TV. (Not a fault of the guide, WMC is quirky). This is because when you change the registry entries to point to WHS, it also changes the live TV buffer location to the server. And WHS is quirky about reporting free space (see below)
- Other times you may get errors saying "Not enough disk space..." when you try to record (or have a scheduled recording). This is very dependent on the size of your primary hard disk for the WHS O/S install as it partitions the disk into two, with a 20GB primary partition ( C: ) and the rest of the disk as D: (for data). WHS ALWAYS reports the size of D: as the amount of free space to clients.
Since TV recordings are pretty big (especially if you are recording HD), the total size of your TV recordings can very easily be much larger than the size of that D: as reported by WHS. In this case Media Center will throw an error saying "Not enough disk space..." and won't record. Very frustrating, as (in my case) my WHS is ~5TB, and I have more than enough space available.
Solution:
This works in Vista ONLY (as far as I know, since XP does not support symbolic links to my knowledge)
Instead of trying to point to WHS directly for live TV recording, we are going to use the symbolic links feature of Vista to create a link that will point to WHS, but use the LINK instead of a direct reference to WHS.
What is a symbolic link?
http://en.wikipedia.org/wiki/NTFS_symbolic_link
An NTFS symbolic link (symlink) is a file-system object in the NTFS filesystem starting with Windows Vista and Windows Server 2008 that points to another file system object. The object being pointed to is called the target. Symbolic links should be transparent to users; the links appear as normal files or directories, and can be acted upon by the user or application in exactly the same manner. Symbolic links are designed to aid in migration and application compatibility with POSIX operating systems.
Unlike an NTFS junction point, a symbolic link can also point to a file or remote SMB network path. Additionally, the NTFS symbolic link implementation provide full support for cross-filesystem links. The NTFS symbolic link functionality enabling cross-host symbolic links requires that the remote system also support symbolic links, which effectively limits cross-host links to be between Windows Vista or Windows Server 2008 hosts.
1. Follow the first part of the guide from Richard Miller and configure your WHS. This is very important and has to be done correctly for it to function.
Settings for Windows Home Server
From WHS Console add a share folder call "Recorded TV" to WHS default shared folders.
1: In Run, type "gpedit.msc", then click OK .
Then go to Computer Configuration> Windows Settings> Security Settings> Local Policies> Security Options
Find the entry "Network access: Let Everyone permissions also apply to anonymous users", double click and set to "Enabled"
2: Then in the same location in gpedit.msc Computer Configuration> Windows Settings> Security Settings> Local Policies> Security Options. Find the entry "Shares that can be accrssed anonymously" double click and add the value "Recorded TV" at the end of the existing entries, then click OK.
3: Reboot WHS.
4: Log on then Log off DO NOT REBOOT WHS the Share Permissions and Security Permissions will be removed if you reboot, there is a batch file to fix the problem see below ).
2. Create a symbolic link on your Vista client.
- Open a command prompt with Administrative access. (Usually if you are logged in as an administrator, just going to Start --> Run--> type in cmd, will do it)
- Go to C:\Users\Public (cd C:\Users\Public). This is VERY important. The symbolic link HAS to be created for the Public user (not the user under which your Media Center runs), otherwise it causes all sorts of issues.
- Type in the following.
mklink /d "Name of Link" "Location of TV Folder on Server"
Name of Link - is a name that you are going to use. For e.g. "TV" or "Recorded TV". It can be anything. If you use a name with spaces in it, you have to wrap it with double quotes.
Location of TV Folder on Server - This is the location of the folder on your WHS. If you followed the guide from Richard, this should be "\\Server\Recorded TV". I recommend following the guide and keeping it that way, although you can certainly try and play with that if needed.
As an e.g. your link command will look like this:
mklink /d "Recorded TV" "\\Server\Recorded TV"
- Hit enter. Your symbolic link should be created now.
3. Settings for Vista .
On Vista Run, "regedit".
1 Go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion \Media Center\Service\Recording
Set the following registry entries.
Set "WatchedFolders" to "C:\Users\Public\Recorded TV\" (no double quotes)
Set "RecordPath" to "C:\Users\Public\Recorded TV\" (no double quotes)
Set "LastRecordPathSet" to "C:\Users\Public\Recorded TV\" (no double quotes)
Reboot the Vista machine.
If everything was done as it should be, you are all set. :) Your Vista Media Center will happily record to WHS direct and never report any space issues. An additional benefit is that since WMC "thinks" it is accessing a local resource, there's a very very slight blip (instead of a couple seconds) when you hit the record button while playing live TV.
Another added benefit to this is that since the available space to WMC for recording never changes, it should never delete any recordings automatically (which it does, if you start running out of space), if your Media Center recording settings are set to "Keep until space needed" (which is the default btw).
Why does WMC not have space issues with this method? - Your Media Center thinks it's recording to C:\Users\Public\Recorded TV (as an e.g.) but it'a a link to WHS, so the total space reported to Media Center is always the FULL available space for recording on your local machine (since it never actually records locally, so the size doesn't change :)).
Caveats:
- I do not recommend recording live to a server (WHS or anything else) unless you are on a hard wired connection. Wireless just doesn't cut it.
Enjoy. Lemme know if you run into issues with trying this out. As a precaution, please try this without moving all your recordings to the new folder on WHS. Once you have it setup, you can certainly move them. We don't want recordings to get deleted accidently.
http://thedigitallifestyle.com/cs/forums/1/2608/ShowThread.aspx
However, even with folowing the guide to the T, Media Center still throws errors a lot of times because of the network access. The most often encountered errors are:
- "Disk Full..." when you have your Media Center to record to WHS, and you start it up and try to watch live TV. (Not a fault of the guide, WMC is quirky). This is because when you change the registry entries to point to WHS, it also changes the live TV buffer location to the server. And WHS is quirky about reporting free space (see below)
- Other times you may get errors saying "Not enough disk space..." when you try to record (or have a scheduled recording). This is very dependent on the size of your primary hard disk for the WHS O/S install as it partitions the disk into two, with a 20GB primary partition ( C: ) and the rest of the disk as D: (for data). WHS ALWAYS reports the size of D: as the amount of free space to clients.
Since TV recordings are pretty big (especially if you are recording HD), the total size of your TV recordings can very easily be much larger than the size of that D: as reported by WHS. In this case Media Center will throw an error saying "Not enough disk space..." and won't record. Very frustrating, as (in my case) my WHS is ~5TB, and I have more than enough space available.
Solution:
This works in Vista ONLY (as far as I know, since XP does not support symbolic links to my knowledge)
Instead of trying to point to WHS directly for live TV recording, we are going to use the symbolic links feature of Vista to create a link that will point to WHS, but use the LINK instead of a direct reference to WHS.
What is a symbolic link?
http://en.wikipedia.org/wiki/NTFS_symbolic_link
An NTFS symbolic link (symlink) is a file-system object in the NTFS filesystem starting with Windows Vista and Windows Server 2008 that points to another file system object. The object being pointed to is called the target. Symbolic links should be transparent to users; the links appear as normal files or directories, and can be acted upon by the user or application in exactly the same manner. Symbolic links are designed to aid in migration and application compatibility with POSIX operating systems.
Unlike an NTFS junction point, a symbolic link can also point to a file or remote SMB network path. Additionally, the NTFS symbolic link implementation provide full support for cross-filesystem links. The NTFS symbolic link functionality enabling cross-host symbolic links requires that the remote system also support symbolic links, which effectively limits cross-host links to be between Windows Vista or Windows Server 2008 hosts.
1. Follow the first part of the guide from Richard Miller and configure your WHS. This is very important and has to be done correctly for it to function.
Settings for Windows Home Server
From WHS Console add a share folder call "Recorded TV" to WHS default shared folders.
1: In Run, type "gpedit.msc", then click OK .
Then go to Computer Configuration> Windows Settings> Security Settings> Local Policies> Security Options
Find the entry "Network access: Let Everyone permissions also apply to anonymous users", double click and set to "Enabled"
2: Then in the same location in gpedit.msc Computer Configuration> Windows Settings> Security Settings> Local Policies> Security Options. Find the entry "Shares that can be accrssed anonymously" double click and add the value "Recorded TV" at the end of the existing entries, then click OK.
3: Reboot WHS.
4: Log on then Log off DO NOT REBOOT WHS the Share Permissions and Security Permissions will be removed if you reboot, there is a batch file to fix the problem see below ).
2. Create a symbolic link on your Vista client.
- Open a command prompt with Administrative access. (Usually if you are logged in as an administrator, just going to Start --> Run--> type in cmd, will do it)
- Go to C:\Users\Public (cd C:\Users\Public). This is VERY important. The symbolic link HAS to be created for the Public user (not the user under which your Media Center runs), otherwise it causes all sorts of issues.
- Type in the following.
mklink /d "Name of Link" "Location of TV Folder on Server"
Name of Link - is a name that you are going to use. For e.g. "TV" or "Recorded TV". It can be anything. If you use a name with spaces in it, you have to wrap it with double quotes.
Location of TV Folder on Server - This is the location of the folder on your WHS. If you followed the guide from Richard, this should be "\\Server\Recorded TV". I recommend following the guide and keeping it that way, although you can certainly try and play with that if needed.
As an e.g. your link command will look like this:
mklink /d "Recorded TV" "\\Server\Recorded TV"
- Hit enter. Your symbolic link should be created now.
3. Settings for Vista .
On Vista Run, "regedit".
1 Go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion \Media Center\Service\Recording
Set the following registry entries.
Set "WatchedFolders" to "C:\Users\Public\Recorded TV\" (no double quotes)
Set "RecordPath" to "C:\Users\Public\Recorded TV\" (no double quotes)
Set "LastRecordPathSet" to "C:\Users\Public\Recorded TV\" (no double quotes)
Reboot the Vista machine.
If everything was done as it should be, you are all set. :) Your Vista Media Center will happily record to WHS direct and never report any space issues. An additional benefit is that since WMC "thinks" it is accessing a local resource, there's a very very slight blip (instead of a couple seconds) when you hit the record button while playing live TV.
Another added benefit to this is that since the available space to WMC for recording never changes, it should never delete any recordings automatically (which it does, if you start running out of space), if your Media Center recording settings are set to "Keep until space needed" (which is the default btw).
Why does WMC not have space issues with this method? - Your Media Center thinks it's recording to C:\Users\Public\Recorded TV (as an e.g.) but it'a a link to WHS, so the total space reported to Media Center is always the FULL available space for recording on your local machine (since it never actually records locally, so the size doesn't change :)).
Caveats:
- I do not recommend recording live to a server (WHS or anything else) unless you are on a hard wired connection. Wireless just doesn't cut it.
Enjoy. Lemme know if you run into issues with trying this out. As a precaution, please try this without moving all your recordings to the new folder on WHS. Once you have it setup, you can certainly move them. We don't want recordings to get deleted accidently.