[Go To The Side Bar: What's HOT!]
Now that the press has got hold of Internet telephony, were being treated to a
rhetoric-driven joyride. Thats okay, except that while the hype-meisters are out
there burning rubber, Internet telephony the very thing inspiring this high-speed road
show has yet to clear a few speed bumps. No, Im not talking about the speed of
the Internet or slow dialup connections. And forget latency, forget QoS, and forget
bandwidth issues. Just forget all the usual Internet telephony problems. I have a new bone
to pick: Half-duplex drivers. Why must sound card manufacturers include half-duplex
drivers with every sound card they sell? As we all know, in Internet telephony,
full-duplex is the only way to go.
A STALLED DEMO
I stumbled across this full-duplex problem when my publisher, Rich Tehrani, asked me to
set up an Internet telephony demo on his computer. Richs idea was to "wow"
our new staff members, who had never seen Internet telephony in action. (Rich decided to
trust me with this project because I had done such a fine job installing NetMeeting 2.1 on
our NT 4.0 workstations. Talk about no good deed going unpunished!)
Rich was about to gather some employees to his desk, but I urged him to wait. I
didnt want us to disappoint the new staff by running a demo at half-duplex. I knew
that the sound card on Richs computer had been installed months ago, and I was
pretty sure this card, a Creative Labs SoundBlaster, lacked the new NT 4.0 full-duplex
drivers.
Anyway, Rich and I decided to try a NetMeeting call without the staff observing us
to see what would hap-pen. We connected fine, and then we started speaking. We noticed
right away that our conversation was half-duplex. In addition, when either one of us
stopped speaking, and then the other person started speaking, the first couple of
syllables or words were cut off on the other end.
In half-duplex mode, whoever starts speaking has complete control of the conversation.
The other person can scream into the microphone, but the sound will not transmit to the
other end. With half-duplex, as with CB radio, the person speaking has to release the talk
button (in the case of half-duplex Internet telephony, just STOP talking) to allow the
other person to speak.
While we understood all this about half-duplex, we didnt know why we were losing
those syllables. We figured out that even when you stop speaking, the sound
"energy" of your speech doesnt dissipate immediately, which means the
other person cannot assume control of the conversation immediately.
The dissipation of speech energy involves several steps and latencies. After you stop
speaking into the micro-phone, the drop in energy has to filter down through several
levels. First the microphone, then the microphone port on the sound card, then the
components on the sound card, and then (finally) the software. By the time the software
level detects that there is no voice being sent from the microphone, youve lost
about a second. During this second, the per-son on the remote end assumes it is his turn
to talk, and of course he starts talking a second sooner than he should.
Fortunately, NetMeeting has a way to handle this problem. The solution? Graphical
"sound wave bars" that indicate which person is speaking. When one of us stopped
speaking, we could see the sound wave bars get smaller and smaller, until the sound energy
completely dissipated. Thanks to this display, the person on the remote end knew when he
or she could start speaking. Once we figured this out, we were able to pause for a second
before speaking, after the other per-son had finished speaking. Although talking this way
was a bit awkward, it worked. The sound quality was good, and we could easily hold a
conversation over our 28.8 Kbps connection.
But no matter. We still wanted to dazzle our new staff with Internet telephony, and we
agreed that half-duplex was definitely not the way to go. I told Rich the problem
was on his PC, since my PC already had the latest full-duplex drivers. Then, I volunteered
to install the drivers on his PC, little suspecting how much trouble I was about to get
myself into.
SOUPING UP THE PC
Installing the drivers started out simply enough. I printed out the README.TXT file for
the Creative Labs full-duplex drivers and followed the directions step by step. I removed
the sound card entry in the Control Panel under Multimedia, Advanced, Audio Devices and
then rebooted. Then I read that if I had Service Pack 3 installed, I would need to extract
the files into a directory, which was simple enough to do. Next, I needed to right-click
on PNPISA.INF, a file that resides on the Windows NT 4.0 CD-ROM, and then I had to click
on Install. However, since I knew this PC already had this file installed and loaded, I
skipped this step. (Incidentally, the PNPISA.INF file gives NT some semblance of
"Plug & Play" support for ISA PNP cards.)
Everything went fine until I tried to update the existing driver to the full-duplex
driver. At this point, I received a Windows NT message: "The file sb16snd.dll is
currently installed. Do you wish to use the New driver, Current driver, or Cancel."
Of course, I chose "New driver." Windows NT promptly responded: "The
current file is being used by Windows. Cannot overwrite file." Funny, the directions
didnt say anything about this! (Note to self: Lower the documentation rating to 4.)
I thought it was strange that this file was being used when I removed the Sound Blaster
entry from the Control Panel, so I went there to investigate. When I opened the Control
Panel, MultiMedia applet, I noticed that the sound card entry had magically reappeared
from where I had deleted it (in the Audio Driver section). Okay, I thought, lets try
this again. I removed the entry, closed the Control Panel, and then went back in, just to
make sure it was really gone. Once again, when I returned to the Audio Devices, the sound
card had magically reappeared. I decided to follow some of the "known issues"
recommendations, which were listed in the README.TXT file. None of them helped solve the
problem. (Note to self: Lower the documentation rating to 2.)
Worst of all, not only could I not remove the entry, or even update the drivers, the
sound card stopped functioning entirely! We went from half-duplex to zero-duplex. Not
wanting to take too much of Richs time trying to get the sound card to work, I told
him to use the computer "as is," and that I would get back to it during his next
business trip. After a week or so of doing without his sound card, Rich finally went on
one of his many business trips. Finally, I could resume my tinkering. I was determined to
finish my work before Rich returned. He really missed his Real Audio downloads, his
Internet telephony, his AVIs, even his mail notification beep.
CALLING MR. GOODWRENCH
When all else fails, check out the companys tech support on the Web or call them on
the phone. I figured the Web would be faster, so I checked out all the Creative Labs FAQs
and troubleshooting tips. Nothing helped. So, I was forced to call their help desk.
I hate calling help desks. Im afraid Ill wait forever before anyone takes
my call. Im afraid Ill end up talking to someone unqualified. Well, in this
case, my fears were borne out. I waited a hefty 35 minutes, and somehow I was transferred
by the IVR to a Windows 95 specialist, even though I specified the Windows NT group.
When the technician answered, I had just got back into Windows NT, and the
"Microsoft Sound" was blasting out of Richs speakers. (During my wait, I
had tinkered around with the Registry and did a few other things, and I somehow got the
sound card working again.) Basically, I was back where I started: trying to upgrade from
half- to full-duplex. I decided to keep the technician on the phone, so he could guide me
through the full-duplex driver installation. This pass was just the same as the first one,
except that this time I rein-stalled the PNPISA.INF file.
When I rebooted and logged on, Windows NT detected "New Hardware," which was
encouraging, since it didnt the last time. Apparently, the PNPISA.INF or Plug &
Playser-vice was corrupt. Ive talked to a few experts about this point, and
Ive received conflicting answers. One stated that you need to reinstall the
PNPISA.INF file each time you add a new PNP ISA card, while another expert told me that
you shouldnt have to, since the PNPISA.INF adds a Plug & Play entry to the
Windows NT Services, which allows NT to support Plug & Play ISA cards. I tend to agree
with the latter expert. That is, I suspect that somehow the service was corrupted on this
PC. In any case, I was able to successfully install the full-duplex drivers.
I rebooted again, and once again I heard the Microsoft Sound WAV file. (Whew!) Just to
double-check everything was installed correctly, I went back to the Multimedia applet, and
I noticed two entries under Audio Devices, where there should have been just one. I was
getting closer for sure, but I didnt want to leave two drivers loaded.
Two entries
A strange bug, I thought. It worried me, even though the full-duplex
sound drivers were loaded and working. The Creative Labs technician agreed. He told me
that I needed to remove all the Audio Devices again. I protested. He insisted, and added
that I would have to shut-down, remove the sound card, and reboot four times. I said,
"What? Four times?" He said, "Yeah, everyone says the same thing."
The tech said my device connections were like network connections. For example, even if
your network node is down, youve got persistent connections to your net-work drives.
Similarly, NT keeps persistent connections to devices you remove, unless you are even more
persistent, and keep rebooting. According to the tech, if I rebooted the computer four
times, NT would give up on trying to load the Creative Labs sound driver. Moreover, NT
would remove the entry from the Registry.
Four reboots. How tedious. But the technician seemed sure of himself, so I decided to
try. The tech also stated that on the fifth reboot I should put the sound card back in. He
gave me a direct line to the NT support group, and told me to call back after I was done.
After I rebooted four times, I put the card back in and logged on, but I still had two
entries. I was getting ready to hack the Registry to fix the problem, but that seemed
risky, especially since this was my publishers computer.
I called Creative Labs again, and explained the situation to a different technician, an
NT expert. I told him the four-reboot trick had failed. He suspected a corrupt Registry
and recommended I boot off of the NT startup disks and do a "repair Registry." I
followed his instructions after exporting the Registry to a file as a backup.
I was a bit wary about repairing the Registry, but the technical sup-port person seemed
confident and knowledgeable, so I trusted him. But I soon learned that my trust was
misplaced. While I had already spent six hours, over a period of three days, tinkering
with Richs computer, the worst was yet to come.
NO ALTERNATIVE TO AN OVERHAUL
After I followed the procedure recommended by the tech, I found I could no longer boot
into Windows NT. For all intents and purposes, NT was trashed! I realized that I would
have to reinstall Windows NT and all of Richs applications.
Once I reinstalled Windows NT, I had two choices: Restore from a recent tape backup or
rein-stall all the applications from scratch. I figured that since the original Registry
may have been corrupted, and since I couldnt seem to remove the duplicate audio
device, reinstalling every-thing fresh was the best option. Id have preferred
walking on fire to reinstalling Windows NT and the many applications Rich uses (not to
mention all the custom settings). Unfortunately, I didnt have that choice. But at
least I learned some valuable lessons.
KEEP THIS IN YOUR OWNERS MANUAL
Heres a summary of what I learned during my struggles with full-duplex drivers:
- Have an emergency disk handy. (Unfortunately, this precaution wouldnt have helped
me much.)
- Back up your Registry. (Of course, if the Registry is screwed up enough you wont
be able to bootup to restore it.)
- Pray that the sound card manufacturers will write and ship nothing but full-duplex
drivers.
- f you remove a device and it keeps coming back like a bad sequel, dont attempt to
edit the Registry, regardless of what a tech support person might recommend. (To quote
from a popular TV series, "Trust no one...")
- When everything seems to be going wrong, just remember the 4 Rs:
1. Reboot.
(Self-explanatory.)
2. Runaround. (What some technical support centers will give you. As in,
"Its a Microsoft issue not ours." Just be persistent.)
3. Reinstall. (Not a pleasant experience, but sometimes necessary.)
4. Redmond. (If all else fails, pack up your PC, fly into Redmond, plop your PC onto
Bill Gates desk, and ask him to fix the darn thing!)
Joking aside, Microsoft has pro-vided a quasi-automatic means of backing up and
restoring older versions of your Windows 95 and NT registries. Windows 95 keeps the
Registry in two files, user.dat and system.dat. In addition, Windows 95 keeps the
"last" version or backup of the Registry in user.da0 and system.da0. Whats
nice about these files is that you can boot into DOS and change the file attributes from
hidden to unhidden, and from read only to write. Then you can copy the backup Registry
files over the troublesome "current" Registry.
Windows NT has a different, and supposedly easier, method of restoring the last known
good Registry. Currently, with NT, you can press the spacebar during the bootup process to
"load the last known good menu." I tried this recovery method on my
publishers computer, but it didnt work. The problem is that even if Windows NT
gets to the logon screen, NT considers this a "successful" start-up. Thus, when
I was able to boot-up to the logon screen (but couldnt log on), NT saved the
Registry to the "last known good menu," which probably overwrote an existing
good backup of the Registry.
Had I known that I would be unable to logon to NT, I would have hit the spacebar on the
"prior" boot to load the backup Registry. I think it would help matters if
Microsoft were to implement a method that would let you go back and restore up to the last
10 iterations of the Registry before NT loads.
FORGET THE CHECKERED FLAG, PASS THE KLEENEX
Well, I eventually reinstalled and re-customized all of Richs applications, and I
finally got the full-duplex drivers to work. By the time Rich returned to the office, his
computer was ready, and we put on our Internet telephony demo. It worked fine. Perhaps too
fine. Everything went so smoothly that our audience had absolutely no idea what a triumph
of persistence the demo represented. They were impressed, sure, but I couldnt help
feeling under appreciated. It was as though I had won a grueling race, but the crowd
decided to leave early, to beat the traffic, rather than stay and watch my victory lap.
Well, Im not one to wallow in self pity. I studied the situation, and decided the
most reasonable thing to do was rant and rave about the unnecessary difficulties of
getting Internet telephony to work. There is, for example, absolutely no reason why
installing full-duplex drivers should cause so many problems.
Lengthy pit stops to resolve minor problems are always frustrating, but theyre
intolerable when they delay something as important as Internet telephony. Lets hope
these driver problems are resolved quickly. I have heard that Windows NT 5.0 will address
many of the concerns that I addressed in this column, including better support for Plug
& Play devices in NT. Encouraging news. It suggests Microsoft and the sound card
manufacturers may yet allow us to focus on the road ahead.
|
| What's HOT! ENABLING DISTANCE LEARNING WITH AN IP-BASED SOLUTION
In an age of cost cutting, sending employees to different parts of the country for
training is starting to look like an impossible luxury. So rather than pay travel
and accommodation costs, companies are truning to distance learning.
One of the leaders in providing distance learning solutions is One Touch Systems, which
claims to be the only provider of a distance learning solution that is fully integrated
and scalable from satellite-enabled classrooms to Web-based computers. The One Touch
Presentation Server lets a presenter (moderator) interact with remote students regardless
of the network topology or student interface.
The system encompasses students using One Touch Response Keypads in satellite
classrooms or video conferencing facilities, and students using One Touch Front
Row-enabled desktop PCs. Training or communication events can accommodate hundreds
or enven thousands of perticipants. Participants can press a button (raise their
hand) to get permission to speak, ask a question, or anonymously let the presenter know
they are having trouble with the material.
In addition, the moderator can poll participants. After the participants answer a
question or cast their ballots, the results appear on everyone's screen. The
moderator can also call on any participant, wheter to confirm the participant is logged
on, or to see if the student is paying attention.
DESIGNING REAL-TIME MONITORING APPLICATIONS
DataViews, a software vendor active in industires such as manufacturing, process
control, and network monitoring, is also active in CTI. With DataViews, you can
build a fully animated interface to depict, analyze, and regulate your real-time
industrial, scientific, or network processes.
The DataViews package comprises DV-Draw, an interactive drawing editor for creating
customized user interface screens, and DV-Tools, a comprehensive subroutine library that
lets you manage and manipulate dislays created with DV-Draw.
The graphical drawing editor is available for both Unix and Windows environments. A
brand-new release, AXViews, delivers the tools you need to build real-time, graphical
applications by combining the power of a full-featured editor and DataViews AcitveX
Control. Developers can work in Visual Basic, Visual C++, or any integrated
development environment to quickly build robust applications. The DataViews product
also features Web integration, using Microsoftt's Internet Explorer with an ActiveX
control, or Netscape with a pulu-in. This allows an application to be monitored and
controlled in both Inernet and intranet environments.
With this functionality, you can have Dynamic Data Visualization on the Web.
Let's say a certain site is reaching its capacity. In this case, the dislay can
respond by showing where to insert a board to expand the capacity.
The DataViews product is also optimized in that it will not transmit the entire graphic
over the Web. (Graphics as we all know, chew up a lot of bandwith) Instead, the program
uses vector graphics or delta changes. These and other optimization techniques make
sure that you transmit only those areas of screen that need to be changed. |