AVS Forum

AVS Forum (http://www.avsforum.com/forum/)
-   HTPC - Mac Chat (http://www.avsforum.com/forum/115-htpc-mac-chat/)
-   -   How-To: MacOS X Firewire HDTV recording (http://www.avsforum.com/forum/115-htpc-mac-chat/386740-how-macos-x-firewire-hdtv-recording.html)

rcliff 04-02-2004 03:21 PM

How-To: Guide to MacOS X firewire HDTV recording

This topic is intended as a starting point for anyone that wants to record HDTV on the Mac. There are some other somewhat fragmented threads that discuss this but I thought others would benefit from a consolidated "HOW-TO" especially considering the timing of the new FCC mandate requiring cable providers to offer firewire to customers effective 4/1/03. This document is by no means complete and I'll update it as needed. Any comments or corrections are appreciated. Referenced links are provided at the end of this post.

Introduction

MacOS X is currently the only viable solution for recording HDTV via firewire using an emulated D-VHS deck. With a properly setup system you can record and playback cable and OTA HDTV with no loss in picture quality or sound. As for as alternatives, there is a beta product called Firebus for Win XP but it is extremely buggy and the development status is unclear. The beta is also incidentally closed if your interested. Some have also reported some success recording with Linux but it is far from plug and play. For the moment the Mac is the best choice for the task. Below you'll find the requirements and and some instructions for getting started recording HDTV with a Mac.

What do you need
  • An Apple PowerMac. There is a misconception that you need a fast new Mac for this. In fact, any Mac with internal firewire should be fine. I'm using a 6 year old beige G3 266MHz that can be bought used for about $100. As a guideline, any G3 or better should work and you might even get away with something older in the 7300-9600 model range. (Note: The Blue and White G3 appears to have a problem with this setup)
  • MacOS X 10.3 Panther operating system (or 10.2 Jaguar with updated firewire components)
  • Built-in firewire on the Mac or a firewire PCI card
  • Adequate hard drive space for recording. HDTV requires up to 9GB/hr for 19.3Mbit/sec broadcasts but the compression that most providers now use yield storage requirements somewhat less. The easiest way to get the most storage is to use external firewire hard drives preferably in an enclosure where you can easily swap hard drives as needed. Therefore your storage is limited only by your supply of HDD's. I'd guess that you'll get 30-40 hours on a 250GB drive.
  • A firewire source for recording. This can be a firewire cable STB, a D-VHS deck, on OTA firewire STB, or a firewire equipped HDTV. See some examples of supported devices are below.
  • A firewire output device for playback. This can be a firewire HDTV or D-VHS deck.
  • Firewire cables. There are 4pin and 6pin variants and the ports vary with your equipment. The Mac end is always 6pin. You can buy cables up to 15' or use firewire repeaters if you need longer. Firewire devices can be daisy chained together so you can also use an external firewire hard drive as a bridge.
  • (Optional) A Windows HTPC for playback with WinDVD if you don't have a firewire output device or want to play on your PC. You'll have to rename the files with .trp extension for this to work.
  • (Optional) VLC video player or mplayer for playback on your Mac monitor. A PowerMac G5 is needed for decent playback.
How to set up and use the system
  1. Install MacOS 10.3 Panther on your Mac. You can also use MacOS 10.2 Jaguar if you install Apple's Firewire SDK 18 which is freely downloadable from Apple's Web site. See links below for URL. I would recommend using Panther regardless as it is much more stable and significantly faster.

    NOTE: If you are using a G3 without built-in USB or older, these machines do not officially support Panther. You can likely use XPostFacto to install it anyway on many machines. I have successfully installed Panther on a beige G3 without USB. YMMV and this is often not a simple task. See links below for more info.
  2. Turn off all sleep settings in the energy saver control panel. This will cause recording problems especially in older Macs. You should also turn off screen savers. The default "flurry" uses heavy CPU cycles and will definitely be problematic.
  3. You next need the Virtual D-VHS application which is included with Apple's Firewire SDK 18. You can safely install the SDK if you are running MacOS X Jaguar 10.2.x or Panther 10.3.x. If you are running Jaguar you must also install the firewire prerelease components which are included as separate installer packages after you install the SDK. The prerelease components installers are located at VolumeName:developer:FirewireSDK18:PreReleaseComponents:Pack ages. If you are running Panther, do NOT install the prerelease components which will overwrite some firewire components with older versions. You can also download a modified version of Virtual D-VHS that has some additional functionality from the URL below. After installation you'll find Virtual D-VHS is stored at VolumeName:developer:FirewireSDK18:PreReleaseComponents:Exam ples. The AVC Browser application is located at VolumeName:developer:Applications:Firewire.
  4. Set up a folder on your "really big" hard drive to store your recording. Remember HDTV recordings can use up to 9GB/hour.
  5. Drag this folder to the Virtual D-VHS icon to launch the application. This sets the recording directory. If you skip this step, recording will NOT work and you won't get an error indicating why.
  6. If your firewire equipped device has AV/C protocol implemented your Mac should now show up as a new device "DVHS". This is how Mitsubishi TV's work. You should now be able to schedule a recording using your remote. I've done this using the TV's internal scheduler to record from both the TV's internal tuner and firewire cable STB. In general, it's probably best if your firewire equipped HDTV or D-VHS deck controls all recording and timer functionality and the Mac simply acts as a DVHS deck.

    NOTE: If you only have a cable box without the AV/C protocol implemented you should still be able to record manually. You first need to open AVCBrowser and connect to your STB using the connect button in the output section. Note the channel. Launch Virtual D-VHS and select the channel listed in AVCBrowser. Hit the record button and the bitrate should change to the programs current value and recording starts. See the second post in this thread for much more information regarding manual recording as well as using Applescripts and iCal for scheduling.
  7. Playback to an HDTV is quite simple. Select your Mac as the selected device with your TV. Then in Virtual D-VHS just choose the recording you want to watch from the recordings list and hit play.
A word of caution

Please note that the VirtualDVHS demo is really a proof of concept rather than a fully functional application and has some rough edges. With that said many people here have had very good results and there are currently very few alternatives for firewire recording. The Virtual D-VHS source code is also available with the SDK so some enterprising developer may be able to wrap a polished GUI around this and ship a commercial product. I for one really hope Apple or some third party is working on developing this further.

Links and reference

Apple Developer Firewire Homepage
Apple Firewire SDK 18 Download
Apple Firewire SDK 19 Download
Apple Firewire SDK 20 Download
XPostFacto software for installing Panther on older Macs
Customized Version of Virtual D-VHS
VirtualDVHS Timeshifting with some cable boxes (includes link to Applescripts)
iRecord
Modified AV/C Browser with Recording and Channel Tuning Functionality
AVS thread: Apple FireWire news: soon, more AV/C support!
Mitsubishi Firewire Networking Example
Videolan Player for MacOS X
MPlayer OS X
Roku HD1000 Phtobridge media player
I-O DATA's LinkPlayer2 media player
A VNC server for OS X
A VNC client for OS X
Firewire equipped HDTV's, STB's and D-VHS decks from the 1394 Trade Association

Supported Devices

The following devices should work as noted. Much of this information comes from the readme included with Virtual D-VHS. Please post any additions or corrections.
  • Mitsubishi TVs with HDTV integrated tuner and FireWire. These TVs have an integrated AV/C tape controller that will recognize the Mac as a DVHS device and allow the TV to control the Mac.
  • Sony Cablevision DHG-M55CV Firewire enabled cable set-top box.
  • Comcast Motorola 620x Firewire enabled cable set-top box.
  • Scientific Atlanta SA3250HD and SA4200HD Firewire enabled cable set-top boxes.
  • Samsung SIR-T165 ATSC Tuner set-top box. This device has an integrated AV/C tape controller that will recognize the Mac as a DVHS device and allow the set-top box to control the Mac.
  • Sony 2002 XBR-34 HDTV - No TV-hosted controllers, but the application's player can stream to the TV over FireWire.
  • Mitsubishi HD-2000U DVHS VCR - Stream to/from the device using the application's UI to control both the player/recorder and the external D-VHS deck.
  • JVC HM-DH30000U and HM-DH40000U DVHS VCRs - Stream to/from the device using the application's UI to control both the player/recorder and the external D-VHS deck
  • JVC GR-HD1 720p Camcorder - With the camera in MPEG2 mode, stream to/from the device using the application's UI to control both the player/recorder and the camera.
  • Sony MicroMV Camcorders - Stream to/from the device using the application's UI to control both the player/recorder and the camera.
  • MIT MDR-200 ATSC Tuner set-top box.
  • Unsupported. Panasonic TU-DST50 ATSC Tuner set-top box. This device does not appear to work with Virtual D-VHS.

jsb_hburg 04-02-2004 05:07 PM

This is a good thread in view of timing and the functionality that the Mac offers. Below are some PDFs from a link referenced above.


How to set up VirtualDVHS on your Mac and its use with iCal

How to initiate connection between your Mac and set-top-box with Firewire

How to playback VirtualDVHS recordings

Advanced: Recording two programs at one time using two Firewire-equipped set-top-boxes



Cliff,

The Panasonic TU-DST50 is known not to work with VirtualDVHS despite using AVC Browser to establish connection. The MIT MDR-200 will work with VirtualDVHS. I will get a PDF together on the two recordings at one time functionality, as well.

rcliff 04-02-2004 05:45 PM

Joe, thanks for the additions. I think this will be of interest to a lot of people now that firewire is becoming a reality via cable. I don't think many people would have found out about this in the long "Apple FireWire news: soon, more AV/C support" thread.

I'll revise the supported device section tomorrow.

jsb_hburg 04-02-2004 06:01 PM

The Firewire SDK 18 can be installed since the programs: VirtualDVHS, AVC Browser and DVHSCap may all be needed. For those running Panther, do not install PreReleaseFireWire.pkg and PreReleaseFireWireDebug.pkg from the Packages subfolder of the PreReleaseComponents folder. These installation packages are to be installed by Jaguar users. These PreRelease packages are not installed when the Firewire SDK 18 is installed. They are loaded as uninstalled packages for optional installation.

I cannot over-emphasize upgrading to Panther 10.3 to run VirtualDVHS and the other software from the SDK.

EatingPie 04-02-2004 08:51 PM

Great great thread!

Perfect timing for me, as I came here today explicitly for instructions for running my Powerbook to my Mitsubishi. I wanted a test run before my Firewire-equipped cable box arrives on Sunday. Followed the instructions and worked like a charm!

I'll give the SDK a shot too. The .bom says it installs one System component called "TranslacentDriver" in the /System/Library/Extensions folder. Any comments on this component? Necessary with Panther? (I'll probably toast it after install.)

Much thanks and kudos!

-Pie

jsb_hburg 04-03-2004 04:11 AM

Quote:


Originally posted by rcliff
[*]If your firewire equipped device has an AVC browser your Mac should now show up as a new device "DVHS". This is how Mitsubishi TV's work. You should now be able to schedule a recording using your remote. I've done this using the TV's internal scheduler to record from both the TV's internal tuner and firewire cable STB. In general, it's probably best if your firewire equipped HDTV or D-VHS deck controls all recording and timer functionality and the Mac simply acts as a DVHS deck. There is also a link below that discusses using Applescript and iCal for scheduling.

NOTE: If you only have a cable box without an AVC browser you should still be able to record manually. You'll need to first find the correct firewire channel that your STB is outputting to. This is selectable in Virtual D-VHS and it can be one of 64 channels between 0 and 63. Trial and error will tell you which one. Just select a channel and hit the record button in Virtual D-VHS. If the bitrate shows 0 you know it's the wrong channel. It's most likely channel 0,1 or 63 so try those first.


Where you have "an AVC browser," this term should be replaced with "AV/C protocol implemented." The Motorola 6200, for example, lacks AV/C protocol implementation; so, Apple's AVC Browser from the SDK is required to initiate connection. Using the right Firewire channel in VirtualDVHS without using Apple's AVC Browser to initiate connection will yield an empty file when recording off a set-top-box that lacks AV/C protocol implementation.

On the other hand, set-top-boxes with AV/C protocol implemented should not require the use of Apple's AVC Browser, meaning that VirtualDVHS should be all that is needed on the Mac. The remote control combined with the set-top-box menus should drive the recording and playback.

The iCal scripts were developed because the Motorola 6200 lacks menus driving recording and timer functionality for timeshifting. The scripts are also useful for over-the-air boxes in cities where the stations' time information sent in the PSIP is erratic or missing which would cause a missed recording despite having properly set up a recording event on the over-the-air ("OTA") set-top-box ("STB").

I updated the zip file and the main instruction pdf file at http://mac_hdtv_timer.home.comcast.net

rcliff 04-03-2004 12:00 PM

A few changes above. Thanks Joe for the suggestions and for posting the PDF's.

EatingPie 04-03-2004 02:36 PM

What format does Virtual D-VHS store? What are the equivalent file extensions (like on the PC side)?

The reason I ask... I would like to transcode some files to that format so I can play them with Virtual DVHS directly over the Firewire to my Mitsubishi. Like maybe transcode a VOB so I can have a direct-digital DVD player...

I realize this is a bit off topic, and would gladly accept pointers to more relevant threads.

-Pie

rcliff 04-03-2004 02:36 PM

Assuming you have a Mac dedicated to recording there are a few things you can do to make it more of an AV appliance. You can remove the keyboard, monitor and mouse and move the Mac to the location of rest of your AV equipment if you setup your Mac with screen sharing software. If so your Mac will only need power, ethernet and and firewire connections. I just installing mine in a standard 19" rack with my other equipment and am using VNC for remote control. It is accessible locally with any VNC client or remotely over the internet assuming the correct security and firewall settings. Timbuktu would also work for remote control as well but VNC is free.

A VNC server for OS X
A VNC client for OS X
There are also free VNC clients for Windows and Linux that can also control the recording Mac

rcliff 04-03-2004 02:44 PM

Quote:


Originally posted by EatingPie
What format does Virtual D-VHS store? What are the equivalent file extensions (like on the PC side)?

The reason I ask... I would like to transcode some files to that format so I can play them with Virtual DVHS directly over the Firewire to my Mitsubishi. Like maybe transcode a VOB so I can have a direct-digital DVD player...

I realize this is a bit off topic, and would gladly accept pointers to more relevant threads.

-Pie

Pie, glad you found the HOW-TO useful

Virtual D-VHS uses MPEG2 transport streams. You should be able to use the advanced output options from VLC 0.7 or later to create a compatible file from any other source that VLC will recognize. It takes quite a bit of time for encoding (depending on the speed of your Mac) and some trial and error.

warr 04-03-2004 05:16 PM

Does anyone know how to make the VirtualDVHS "Stop" script also quit the progam so that I can have ical re-launch it? Refresh always freezes the program. To put it another way; I would like to have ical "launch and record" then "Stop and Quit the Application" then "launch and record" on the next showing, then so on, and so on........


Thanks

jsb_hburg 04-03-2004 05:26 PM

Quote:


Originally posted by warr
Does anyone know how to make the VirtualDVHS "Stop" script also quit the progam so that I can have ical re-launch it? Refresh always freezes the program. To put it another way; I would like to have ical "launch and record" then "Stop and Quit the Application" then "launch and record" on the next showing, then so on, and so on........


Thanks

You get a freeze from "Refresh and Record?" On your system, do you know that you need to use "Refresh and Record" script? How about just the "Record" script? Make sure that you do not exit or close any of the AVC Browser windows or the recording will fail.

What Firewire tuner are you using to record?

warr 04-03-2004 05:34 PM

Sorry if I was not clear. I can record just fine. The scripts work great! Problem is when a recording is finished and stopped, I need to shut down both of the programs or else VirtualDVHD will freeze. This is whether or not I use "Refresh and record" or if I do it manually or any other means that I have tried. It may be a powerbook G3 500 issue, don't know. But if I shut VirtualDVHS and AVC down then restart using the launch and "record script", all is fine.

thanks

jsb_hburg 04-03-2004 06:15 PM

Quote:


Originally posted by warr
Sorry if I was not clear. I can record just fine. The scripts work great! Problem is when a recording is finished and stopped, I need to shut down both of the programs or else VirtualDVHD will freeze. This is whether or not I use "Refresh and record" or if I do it manually or any other means that I have tried. It may be a powerbook G3 500 issue, don't know. But if I shut VirtualDVHS and AVC down then restart using the launch and "record script", all is fine.

thanks

Okay, I understand. A Quit script is now available in the zip file at this website .

warr 04-03-2004 09:10 PM

YOU ARE AWSOME!!!!!!!!!!!!!!!

THANKS!!!!!

mark

warr 04-03-2004 10:05 PM

Did some testing and the "Quit" script works like a charm! At this time I am using the "Quit" script in ical instead of the "stop" script. So far so good.

The big test will be tonight through tomorrow afternoon; Silence of the Lambs, Harry Potter, What a Girl Wants (for my daughter), Star Wars, Old School.

Thanks

warr 04-03-2004 10:06 PM

Sorry, Awesome - in my excitement I failed to proof read!

jsb_hburg 04-04-2004 04:27 AM

Quote:


Originally posted by warr
Did some testing and the "Quit" script works like a charm! At this time I am using the "Quit" script in ical instead of the "stop" script. So far so good.

The big test will be tonight through tomorrow afternoon; Silence of the Lambs, Harry Potter, What a Girl Wants (for my daughter), Star Wars, Old School.

Thanks

Be sure to do a test capture of any 5 minute clip to make sure Quit works in place of Stop relative to the file that is created - I don't think that the file would be corrupted because Quit was used to stop recording based on my system; then again, my system does not freeze when trying to do a successive capture. I am certain that 3 iCal events would work: L & R, Stop then Quit.

warr 04-04-2004 07:38 AM

Well, on short segments the quit seemed to work fine in place of the stop. So far on long recordings (2 hour) I can't seem to get quit to work. I just cut and paste the quit script into the stop script (stopquit.scpt) and will try this on long recordings. stopquit works fine on short recordings.

mark

warr 04-04-2004 07:50 AM

In case your wondering? My PB G3500 has been reformatted, reinstalled 10.3.3 along with all other updates, NO other programs installed (except those on 10.3.3), and at this time dedicated to VDVHS only. You DO need an external Firewire HD otherwise it will freeze. All the above "How To's" are being followed.

Thank you Joe and Cliff for all the support!

I should look into making some ical share calendars with hbo, sho, etc.. I tried using the ESPNHD calender that is on icalshare.com. Works great! If there is a program you want to record just fire up the script.

jsb_hburg 04-04-2004 07:57 AM

Quote:


Originally posted by warr
Well, on short segments the quit seemed to work fine in place of the stop. So far on long recordings (2 hour) I can't seem to get quit to work. I just cut and paste the quit script into the stop script (stopquit.scpt) and will try this on long recordings. stopquit works fine on short recordings.

mark

Mark,

The two line Quit script works for short recordings but not for long recordings? I seem to understand that you have modified the Stop script by appending the two line Quit script at the end. This makes a Stop and Quit script which may be useful beyond G3/500 notebook users. The order of operation makes sense.

Below is how I have appended the Stop script with quit functionality to make Stop and Quit...

Code:
delay 5

tell application "AVCBrowser" to quit

tell application "VirtualDVHS" to quit
I updated the zip file at the website to include the Stop and Quit script.

warr 04-04-2004 08:06 AM



I know, seems not to make much sense to me. I just tried 2 long recordings last night. Its one looonnnngggg recording now. Could just be some weird glitch. But anyway, it seems that a stop then quit script would be a better route anyway.

I have some recordings starting in an hour and will update.

thanks

jsb_hburg 04-04-2004 08:22 AM

Quote:


Originally posted by warr


I know, seems not to make much sense to me. I just tried 2 long recordings last night. Its one looonnnngggg recording now. Could just be some weird glitch. But anyway, it seems that a stop then quit script would be a better route anyway.

I have some recordings starting in an hour and will update.

thanks

Good luck. I edited my post above to include the three lines of code to append at the end of the Stop script to make a Stop and Quit script.

rcliff 04-04-2004 09:39 AM

Quote:


Originally posted by warr
...What a Girl Wants (for my daughter)...

Yea, whatever

rcliff 04-04-2004 09:44 AM

Quote:


Originally posted by warr
I should look into making some ical share calendars with hbo, sho, etc.. I tried using the ESPNHD calender that is on icalshare.com. Works great! If there is a program you want to record just fire up the script.

That's a great idea! A shared calendar for the dozen or so major HD channels could be great. I haven't done anything with iCal but definitely need to check it out.

rcliff 04-04-2004 09:55 AM

Does anyone have any thoughts on a mechanism for changing channels on the STB? ie if you wanted to record a program on HBO-HD and then SHO-HD a couple of hours later without manually changing the channel on the STB. It would be great if there was a way to initiate the channel change via firewire but this doesn't seem possible. The only solution I can think of is to use a universal remote with timer functionality but that seems far from ideal.

warr 04-04-2004 10:56 AM

Quote:


Originally posted by rcliff
Does anyone have any thoughts on a mechanism for changing channels on the STB?

That would be great! At this time I am using the timers on the 6200 STB to change the channels.

Cliff - Amanda is cute, got to admit!

mark

p.s. anyone know if the LG 3410a would work well with this mac VDVHS stuff?

rcliff 04-04-2004 11:32 AM

Quote:


Originally posted by warr
p.s. anyone know if the LG 3410a would work well with this mac VDVHS stuff?

It should since it specifically supports firewire archiving to D-VHS.

warr 04-04-2004 04:53 PM

The new script works great!

Thanks!

mark

jsb_hburg 04-04-2004 05:10 PM

Quote:


Originally posted by warr
The new script works great!

Thanks!

mark

That's good news!


All times are GMT -7. The time now is 10:24 AM.

Powered by vBulletin® Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.

vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2014 DragonByte Technologies Ltd.
User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2014 DragonByte Technologies Ltd.