VOICE Home Page: http://www.os2voice.org |
February 2005
Newsletter Index
|
By Teruel de Campo © February 2005 |
With the advent of high resolution display and video adapters, fast CPU and relatively inexpensive storage, we can use our systems as video and recording stations.
I have been using a TV card under OS/2 for many years (Hauppauge WincastTV). The main use had been watching TV, or VHS tapes in a small "window" in the computer screen. After I put together the new system I obtained one of the newer TV adapters. This together with the DVD burning capabilities has increased the use of this system in a major way.
This article will cover the use of the Hauppauge WinTV-PVR 250/350 PCI. I included some basic setup for new users of DVD drives and video capturing cards.
The following is a summary of how I use the video capturing and recording.
I have not found any simple solution to doing simple editing of video files under OS/2.
The WinTV-PVR 350 I got came with a remote control. I have not used it. It can be very convenient if you are using the system as a regular TV and you are sitting away from the keyboard. The remote control currently works only with EmperoarTV application. The developer (Rüdiger Ihle) has not implemented a generic mechanism to use it with other programs as well. Hauppauge is now shipping the third version of the remote control transmitter. I heard from Rudi that it will be supported in the next release, probably by the time you read this article.
Hauppauge made most of the chips used in the winTV cards. The OS/2 drivers were made by Abbotsbury Software Ltd. of England. There are at least three OS/2 TV applications that work with those drivers. Voice published an article by Bill Esposito about the Hauppauge WinTV in July 2000. Most recently Stefan Milcke ported the bttv driver into OS/2. Hauppauge changed the type of chips when they designed the winTV-PVR 250/350 series using the iTVC15 family of MPEG codecs. The iTVC15 family includes the iTVC15 (CX24315) and iTVC16 (CX24316). Therefore the previously mentioned drivers do not work with these new video capturing adapters.
http://www.shspvr.com/pvr_model.html
This site has some graphic descriptions of these family of cards. I want to stress that my experience is with only one: the WinTV-PVR 350 PCI card.
The Hauppauge WinTV PVR-250/350 tuner cards perform MPEG2 decoding and/or encoding.
There are few models of these cards. A brief summary:
WinTV PVR-250 has and can use hardware encoding only. It comes in two flavors. Rev 1, which includes hardware encoding and decoding capabilities, does not include TV output, so the decoder is not usable. Rev 2 does not include hardware decoding (and, once again, does not include TV output). Therefore, although capture requires few resources, playback on the 250 does use system resources.
The WinTV PVR-350 has both hardware encoding and decoding capabilities. To be able to use hardware decoding you must use the TV output and be connected to an external monitor. If you do not have it then the hardware decoding has no use.
If you are shopping for one, my advice is go with the winTV PVR-350. The difference in price in not too big.
I want to stress the fact that hardware encoding and decoding are very important features if you want to use a TV card concurrent with other tasks. In other words, if you want to watch TV and you want to use the system for other operation at the same time, hardware encoding/decoding is a must and differentiates these TV adapters from others like most of the graphic cards that come with TV features.
The cards use "firmware" to provide the instructions to the hardware. Hauppauge created their drivers to upload the firmware to the WinTV PVR cards before the cards are used. That means that the firmware must be made available to use the cards. EmperoarTV will load the firmware as needed. In the event of a problem, simply reloading the drivers (i.e. rebooting OS/2) will reload the firmware. The card keeps forgetting everything, when the PC is turned off or rebooted. It is up to the driver to load the firmware each time the system is powered up. As soon as new firmware becomes available it will be included with the driver. The last firmware produce a major improvement in channel switching.
The PVR 350 is an analogue TV tuner device with built-in MPEG encoding to allow any video source like TV channels, S-video from any analog source like a VCR, camcorder or the Hauppauge video camera to be recorded (stored in a video file format on your hard disk). It also has an FM radio tuner if you want to listen to fm station while you are doing other work in the computer.
The hardware encoding decreases considerably the system resources needed. WarpOverlay produces and even further decreases (see below). On the other hand file size is directly related to the sample rate (and file type). For two minutes of video, a file could range from 20 megabytes for an MPEG-1 VCD file to 180 megabytes for the top quality 12Mb/sec MPEG-2 format. However it's unlikely that 12Mb/sec is going to be of much use to most people, since that's higher quality than standard DVD format. I use the DVD extra long play. I just recorded one hour of CNN, the file is about 1.7 GB, and the quality is pretty good. The most sensible approach is the following: determine how long are you going to record and setup the output profile in the Video capture tab of the Configuration notebook in such a way that the file is smaller than the capacity of the media you want to use.
The system I am using to write this article is the following:
Version: OS/2 4.52 US (Convenience Package - OS/2 Warp 4 Base Operating System)
Kernel level: 14.100f (from WSeB CP#2/Warp 4 CP#2 PostFix)
FixPack Level: WSeB CP#1/Warp 4 CP#1 FixPack #4 US (XR0C004)
Note: eCS works very well also. There are no specific problem with it. I have not personally tested it though. I will install eCS soon and if I find any difference I'll report it. The only minor problem I find out is with some very specific setups. Apparently eCS comes with a read-only NTFS driver. If people use this driver to read some NTFS partition(s) the installer may fail because it tries to use the NTFS partition for temporary files. This problem will occur with all applications using the IBM installer. If this is the case just REM the driver and then install the program.
If you have a mouse with a wheel this is one of the best and most complete device drivers. It can facilitate navigation under EmperoarTV application.
If you do have it installed check the CONFIG.SYS and be sure the entry for the regular driver is REMed or deleted.
REM DEVICE=C:\OS2\BOOT\MOUSE.SYS DEVICE=c:\amouse\AMOUSE.SYS
daniatapi0314.zip from Hobbes.
Daniela Engert's filter driver supports all types of ATAPI devices. All ATAPI devices can be accessed through the OS/2 ASPI software interface. Each EIDE channel shows up as a SCSI channel, and each ATAPI device as a SCSI device.
This is the line in the CONFIG.SYS:
BASEDEV=DaniATAPI.FLT
DANIATAPI.FLT it is not needed if you have a SCSI DVD, but you have to install it if you have an IDE DVD (as well as other IDE drives like tapes drives etc). Most likely it is already installed except if you have a SCSI only system. You may have the IBM counterpart (IBMIDECD.FLT, IBMATAPI.FLT) for DaniATAPI instead. The only important point is that you do not want these BASEDEVs left in the CONFIG.SYS. In summary, DANIATAPI.FLT should replace both of them. One of the reasons I mention these device drivers is that very often the reason why users can not create a DVD are here and not in the DVD creation program. Sometimes these problems are the hardest to figure out!
Paul Ratcliffe's ASPI Router is a small device driver that lets you access the SCSI bus from your application. This is required for cdrecord.
The interface of ASPI Router merely is an extension of the interface of OS2ASPI.DMD
BASEDEV=OS2ASPI.DMD /all DEVICE=c:\os2\boot\aspirout.sys
OS2ASPI.DMD: ASPI Device Manager for drivers according the ASPI specification by Adaptec. The parameter /all is needed for cdrecord.
EmperoarTV108i_en.zip
This is the main application for WinTV-PVR 25/350 developed by Ruediger "Rudi" Ihle. There is an installation file that makes the setup a couple of clicks away.
http://www.shspvr.com/forum/ You will find here the forum for the Emperoartv driver/application
This is the site for WarpOverlay. It is optional, and requires a small registration fee or else it runs in demo mode. You can run EmperoarTV without it, but I highly recommend it because the performance increase is considerable. Valery Gaynullin's device driver (WarpOverlay) is an add-on to IBM's GRADD video subsystem (which means it requires a GRADD based video driver like GRADD or the Scitech SNAP drivers), that uses it's own API and is totally independent from DIVE. It only work with the applications that specifically support it like EmperoarTV and WarpVision.
WarpOverlay will produce two important effects: (a) video acceleration (b) smoother edges as a result of hardware-assisted stretching and filtering.
In my system I have a base CPU load of about 2% from many processes running in the background. The following values are after starting EmperoarTV (so the actual value of EmperoarTV should be 2% less ...well more less). These values (half size etc.) refer to the TV application screen size that you can change when you perform a right mouse click with the curser over the TV application.
Window size |
WITHOUT OVERLAY |
WITH OVERLAY |
half size: | 16.5% | 13% |
normal size: | 18.5% | 13.5% |
double size: | 24% | 14% |
full size: | 37% | 14% |
Note: with WarpOverlay on, I am running EmperoarTV normal size, burning a DVD, and working on this article (in Lotus WordPro) all at the same time, and I am using less than 65% of CPU and 250 MB of the 1 GB of RAM I have. The system is responsive as usual.
The installation of WarpOverlay is pretty easy so I will only point out two facts:
How do you know if WarpOverlay is working?
First, have EmperoarTV running and take a snapshot of the
desktop or even better a snapshot of part of the desktop with Emperoartv included. If WarpOverlay is not
working you just get a regular picture of what you took (see figure 1 on the right).
If WarpOverlay is working, the Picture of EmperoarTV will be a black transparency
(see figure 2 on right), if you move it and superimpose it to the real TV application the moving video will shine
through.
Second, if Warp Overlay is active and you are measuring the CPU load with any of the CPU meters (I use XWorkplace but also the one in the WarpCenter will do it) when you change TV window size there is no change in CPU load. CPU load is completely independent of TV window size, look at the above values.
Third, if you are using WarpVision, perform a right mouse click, select Settings, then Video. If you select WarpOverlay but it is not available, it will report the error.
Check your CONFIG.SYS for the line:
and change it to:SET C1=SDDGRADD
SET C1=SDDGRADD,WOVERLAY
When new versions of SNAP are installed they remove the WarpOverlay entry.
If you have problems with WarpOverlay working, write to Valery. In my case he sent me an updated version that worked perfectly. The one I downloaded initially did not.
WarpVision is a good complement to EmperoarTV. It allows you to test and play the DVD (see figure 3 on the right) you burned as well as the MPG files. However EmperoarTV will play the MPG files but not the burned DVD's. I will not cover this topic. My only comment is that in some DVDs the video plays perfect but you get no sound. I found out that Right mouse click, select load and then directly load the video file you get both video and sound. Please make a donation to the WarpVision team they are doing a fantastic job.
Note all the JPEGs in this article where you can see the video image is because I disable WarpOverlay only for the
picture. Warpoverlay works as well with WarpVision as it does with EmperoarTV.
All my experience has been with DVD+RW and DVD+R. I have done this with two IDE drives manufactured by HP. The first one was the HP dvd300i which was a single layer recorder and the present one which is an HP630i with double layer recording capabilities. I have not tried to record to double layer media yet.
dvddao-0.0.8.zip from Hobbes provides dvddao.exe.
DVDDAO is a simple command line tool to burn various DVD format disks. DVDDAO supports writing to DVD-R, DVD-RW, DVD+R, DVD+RW, DVD-RAM. It is used by the DVDFront GUI application so you do not need to use the command line!
cdrtools2-2.01a32.zip from Hobbes
Nickk (dev.nul@mail.ru) also ported these programs that write the image to the disk. From this zip file you only need mkisofs2.exe and cdrecord2.exe. This package also contains a version of dvdauthor.exe you can try it but most likely it will not work.
(When you look at Hobbes you will find a different version and most likely a newer one. My advice is the following. If it is the first time try to use the version I'm using because I know they work, then replace one by one the newer files and see how they work. This process only involves removing or renaming a few files in the directory and replace them with the new ones. I often create a temporary directory on the desktop to move the files in and out.)
Then you need three other files provided by Rudi:
DVDPREP.EXE: "patches" the streams created by the card to make DVDAUTHOR accept them.
DVDAUTHOR: creates the DVD file structure. Be sure you use the file from Rudi's site and not the one included in cdrtools2-2.01a32.zip.
DVDFRONT.EXE GUI front end: calls all these tools in the correct order. DVDFront is a graphic interface (see fig 4 on right) which controls all the tools needed to create and burn the media. It is very simple to use.
According to Rudi this is the sequence of events when you run DVDFront. You do not need to read this paragraph. It
is just for your information.
Basically the frontend runs the following "script":
If not exists WORK_PATH\FOLDER_NAME Create WORK_PATH\FOLDER_NAME Else Delete all files in WORK_PATH\FOLDER_NAME End For each file name in the "Title set list" Do DVDPREP <file> | DAVAUTHOR -f - -o WORK_PATH\FOLDER_NAME DAVAUTHOR -T -o WORK_PATH\FOLDER_NAME MKISOFS2 -dvd-video -print-size WORK_PATH\FOLDER_NAME MKSIOFS2 -dvd-video WORK_PATH\FOLDER_NAME | CDRECORD2 <DRIVER_OPTS> fs=8m tsize=<value_from_print-size> -dao -
Unzip EmperoarTV108i_en.zip in a temporary directory. Run install.exe which starts the IBM installation utility. It will install the file in a directory and apply the following change to CONFIG.SYS:
DEVICE=F:\MPEGTV\IVAC.SYS
It will also create a folder in the desktop that contains the installation utility, the program object that you have to click to start EmperoarTV and also a readme and a log file.
I like to use the launchpad from Warp 3 to place all the objects (see figure 5 on the right). If you are not familiar with it the best way to start it is to add it to the AUTOSTART line in CONFIG.SYS like:
SET AUTOSTART=PROGRAMS,TASKLIST,FOLDERS,CONNECTIONS,LAUNCHPAD
It can run together with the WarpCenter.
So I drag and drop the EmperoarTV object in the Launchpad. That creates a space and also an empty drawer. In the drawer I place another copy of the EmperoarTV, the whole folder created with the installation program, the whole folder where the DVD creation programs are, as well as the folder where all the MPEG files will be stored. Additionally, the TitanTV site displays the TV schedule for my area. Also a WarpVision shadow is there. As you may know the drawers of the launchpad can be detached and placed else where on the desktop. This is very convenient and the most important reason why I use it. Alternatively you can create another tray in the WarpCenter or XCenter with all these programs and folders.
After you start EmperoarTV, perform a right mouse click, and choose Settings, you will see many tabs. I will discuss only some of them because the help files are excellent and I won't repeat their content.
Video Capture is a very important screen.
TV Setup you will have to scan the TV channels the first time you use it.
Names will allow you to enter the names of the TV station and associate them with each channel. TitanTV or TV Guide are a good source for this info. Some of the tabs are duplication of the function that you can do in the control panel like <Remote>.
EmperoarTV has three modes of operation (right mouse click over control panel):
Create a directory (called, for example, MPEGDVD) for the files you need for DVD creation. Here is the output of mine (DVDFRONT.INI and DVDFRONT.LOG are created when you use the program therefore just ignore them):
Directory of F:\MPEGDVD11-28-04 2:36p <DIR> 1039 . 11-28-04 2:36p <DIR> 0 .. 6-26-04 10:37a 193255 361 cdrecord2.exe 3-11-04 2:57a 112406 361 dvdauthor.exe 8-27-04 2:36p 80295 358 dvddao.exe 10-16-04 4:07a 69807 5058 dvdfront.exe 5-14-04 2:11a 8400 226 dvdfront.hlp 11-28-04 2:36p 657 0 DVDFRONT.INI 10-17-04 8:39a 30394 0 DVDFRONT.LOG 9-19-04 11:15a 29367 359 dvdprep.exe 6-26-04 10:31a 220430 360 mkisofs2.exe 8-26-04 11:28a 10284 225 readmedvdao 5-14-04 2:33a 1953 259 Readmefrontend
Open DVDFront and select File->Configuration. You should have all the fields filled with the corresponding program names:
Stream preparation: DVDPREP.EXE
File structure creation: DVDAUTHOR.EXE
ISO image creation: MKISOFS2.EXE
DVD recording: DVDDAO.EXE
CD/DVD recording: CDRECORD2.EXE
DVD recording tool: DVDDAO
Be sure the device address and drive letter are correct.
The work path is where the DVD data will be placed. I created a subdirectory under the one I have the MPEG files, but any will do. Again be sure you have enough space available.
The most important tab is TASKS.
There are some differences between DVD-RW and DVD+RW. Moreover, not all the media brands work. I know Rudi uses DVD-RW and has tested TDK and Verbatim. I use DVD+RW and so far I have used HP media, Memorex and Verbatim. They all are OK. These are the only I have used. All my experience is therefore with DVD+R and DVD+RW.
The Tasks tab of DVDFront is the heart of the program. Under Actions, you have all the commands.
First, format the media with <Format DVD+RW media>. Select File->Start.
Second, to <Create file structure>, <add> the MPEG file you want to burn. Then select File/Start.
Third, use <Burn Folder to DVD> and select File->Start.
Now you should have a DVD ready to play.
Here is a summary of all the commands:
Create file structure
Takes a recording (must be done using one of the DVD profiles) and creates a valid DVD file structure (i.e.
\VIDEO_TS...) on your harddrive. It does this by establishing a pipe between DVDPREP and DVDAUTHOR. Be aware,
that this requires the same amount of free disk space as your recording.
Burn folder to dvd
Burn a file structure created in step 1.) to a DVD. This is done by piping the output of MKISOFS(2) to DVDDAO or
CDRECORD2.
Create and burn dvd
Combines steps 1.) and 2.)
Blank DVD-RW media
Erases a DVD-RW media. This is done by calling DVDDAO or CDRECORD2 with the appropriate parameters.
Format DVD+RW
DVD+RW media need to be formatted once, before they can be used. This is different from "Blanking",
which is necessary for DVD-RW only.
"Blank it" can be compared with erasing a EPROM or flash ROM and thus it's more of a delete than a format.
Note for AMOUSE users only:
The way the mouse wheel works depends on the mouse driver's settings. Access the AMOUSE configurations either
from the "Scroll-Mouse" folder that the installation program created on the desktop or from the device
object in the OS/2 system setup. Go to the Wheel tab. This tab has many pages (+ and -). The
first page <PM+Fullscreen> will determine the basic wheel behavior and its effect on EmperoarTV.
Scroll messages:
keyboard messages (cursor keys):
scroll entire page per scroll unit:
All other wheel settings of the basic wheel page will not affect EmperoarTV directly. However, the other pages that combine the use of the wheel with [Ctrl] and [Alt] key combinations can affect the behavior of the wheel mouse. These are my settings:
On the basic page, I have selected scroll entire page per scroll unit and effect below mouse pointer. On the Ctrl+wheel page, I have selected scroll messages and window below mouse pointer. On the Alt+wheel page, I have selected set audio volume. This is what I get when I press:
The numbers are to assign channels to them. They are not to enter channel numbers. For example pressing 1+2 will not take you to channel 12 but it will take you to the channel that is assigned to 1 and then to the channel that is assigned to 2. How to assign channel: select the channel either using the tunnel control or with the mouse wheel (example 22) then press selection key (marked with a right arrow in the right lower corner, the channel selected will start to flash -store mode-, then press the number you want to have assigned to it for example 4. Then the flashing will stop. Next time when you press 4, channel 22 will be tuned in. The selector key (right arrow) is an on/off switch so if you change your mind pressing it again will cancel your previous action.
Your first impression is that you will have only 10 places to store channels (0-9), however EmperoarTV has 4 "banks" to store your selections. Pressing TV button will loop though TV-G1, TV-G2, TV-G3, TV-G4 giving you 40 storage places. You can see and change the key assignment using the Remote tab in the settings notebook. A similar function is offered for the FM tuner, with the difference being that you have to press FM button in the numeric keypad instead of the TV one. Also the display in the control panel will show FM-G1 instead of TV-G1 for example.
If the association between frequency (channel numbers) and names (for example, channel 42 is Fox News in Denver) is done in the settings notebook on the Names page, then whenever you place the cursor on the top of the number a bubble help will show Fox News, and so on.
To distinguish between TV, FM, and external inputs, use the following:
CHxxx Name refers to a TV channel
Ex Name refers to an external video input
xxx.yy Name refers to an FM frequency
To delete an entry, just leave the station name empty and press Update. For example if I enter E1 in the first field and Camcorder in the second field the program will add <ext> to the tune menu.
The speaker with the crossline in the left lower corner of the numeric keypad is the mute button.
An alternative way to access your stored selection is to perform a right mouse click over the control panel or numeric keypad and select Tune. There you will have all the channel numbers and associated names.
If you want to access the other input sources (like e.g., you have a camera connected to one of these inputs), just move the tuner below channel 2 and E1 E2 E3 will show. Figure 11 on the right shows the author of this article through a Hauppauge maxI.C.Live camera connected to one of the inputs of the WinTV-PVR 350 that you can see in the channel E1.
These are the "pseudo" channels E1, E2 and E3. E1 is composite (i.e. via the adapter). E2 is S-video (i.e. without the adapter). E3 is, AFAIK, only usable on the European versions of the card. These come with a so-called SCART cable, which contains a composite-out and another composite-in in one single big plug allowing bi-directional A/V connection to a VCR or TV.
(1) RSJ Software (www.rsj.de) An excellent program for writing to CD and DVD. DVDFront does not work with RSJ. You may be able to have both setups and able to run both but until you have DVDFront running well and are able to produce good DVDs, just REM the entry in CONFIG.SYS that corresponds to RSJ. Then you can remove the REM and see how both work.
This is a snip of my CONFIG.SYS:
REM *** RSJ CD-Writer File System ************************************************ BASEDEV=OS2ASPI.DMD /all DEVICE=c:\os2\boot\aspirout.sys REM BASEDEV=RSJIDECD.FLT REM BASEDEV=LOCKCDR.FLT REM DEVICE=F:\CDWFS\RSJSCSI.SYS REM IFS=F:\CDWFS\CDWFS.IFS REM RUN=F:\CDWFS\CDWFSD.EXE -p "C:/TEMP" -c20000 -b20000 -t2 -i3 -s16
The REM lines belong to RSJ entries. Just removing the REM will enable RSJ. Just leave alone OS2ASPI and ASPIROUT.
(2) Mozilla. There are problems in the way the hi-res timer is handled by Mozilla. When you open the browser you can not see the sidebar with the bookmarks. My quick fix is F9-F9 to refresh it.
(3) Firefox has a similar problem with a delay in the sidebar bookmarks. A similar fix is using Ctrl-B. That will take care of it.
(4) Hauppauge has other PVR models: PVR150 and the PVR500. These are NOT supported by the present driver. The main problem for the developer is that SAA7115 / MSP44x8 combo has been replaced by a single chip (Conexant CX25843) for which no documentation is available. So be sure to get the 250/350 PVR.
(5) TitanTV (see fig 12 on right) is a great TV guide that provides
information of all the channels in your local area. If you install Hauppauge under Windows, it establishes a
connection between the site and the Hauppauge TV application. Under OS/2 it does not work but all the info is there.
You have to do a free register to obtain a userID/password to access the info. Under OS/2 I have an URL object
(drag-n-drop) with the location so when I need it I click on it and I get the "TV guide" at http://www.titantv.com/.
The video card comes with Windows applications and you can also download them from the Hauppauge web site.
The Windows applications have a few more features than the OS/2 applications. The most important one is the one related to video editing if you need it. I have not been able to use Odin successfully with any of those. The few times I used editing I was able to use the file produce by EmperoarTV under OS/2 and edit it under Windows.
The TV application and recording run well. However, if you run other programs it is not unusual that the program crashes (the TV application) and you have to restart it again. Of course if you are recording the problem is more serious. I am using XP with SP-1. The video is not as smooth as under OS/2 but the recording works well.
Under Linux (SUSE 9.1 64 bit), it is a completely different story. The ivtv drivers are in development. There are many different versions available. Not all versions work with all distributions. You have to find the one that works with yours. Then you have to compile it and include the firmware in the module. After many hours (and days), I was able to compile one driver that works very well. Now I am in the process of setting up MythTV, which is another project, whenever I get few days to work on it. I am sure eventually it will work OK but is not an easy and/or fast job.
In summary the OS/2 version has almost everything on its side: easy to install, very stable, and able to do everything I want with the exception of editing. (Thanks Rudi!) It will change the way you use your system and it will make the time you spent sitting behind the screen more enjoyable! It can replace your TV/VCR combo at a fraction of the price.
References:
|
Feature Index
editor@os2voice.org
< Previous Page | Newsletter Index | Next Page >
VOICE Home Page: http://www.os2voice.org