This group appears full of experience, so I hope it's ok that I ask a
question about programming tools rather than pre-packaged programs.
I've been working on VConf projects for the past year and keep having to
go
back to the well and look for something/anything that might be better than
the road I'd been down. Now and then it seems that no matter how good our
computers and networks get Video Conferencing with regular iron (regular
iron that blows away the BIG IRON of a few years ago) is never going to
come
around.
After the requirements I give a list of all I see available ... and would
love to hear
about options that I have missed in alll my searching.
Requirement list, pretty standard desires for the past decade:
1) Non-Propietary Hardware based. Standard WebCam or DV, standard codecs
and UDP or TCP over IP
1) COM Interop or native .Net programmable
2) Royalty-free or negotiable
3) Ability to Record Audio and Video Streams to AVI (uncompressed or
compressed with selectable codec), both local and remote sources
4) Ability to choose codecs (because Indeo is no longer freely available
and
no longer guaranteed to be pre-installed with a user OS)
5) Option to choose the resolution beyond 176x144 if bandwidth permits
(such
as LAN deployments)
bonus: Ability to record merged audio and switch video sources on the fly
to the same AVI file
The options available currently:
##
Microsoft NetMeeting / Conf.exe
http://msdn.microsoft.com/library/default.asp?url=/library/EN-US/netmeet/nm3com1_8m09.asp
Positives:
included on all windows OSes including XP and 2003 (run conf.exe)
small but dedicated fan base can provide nice grassroots sup****t
negatives:
no longer sup****ted by Microsoft, appears to not be legal for wide
development
development ended in 2001, dev group apparently disbanded
SDK no longer available from Microsoft (as of this minute can still be
downloaded from a couple of fan sites)
limited to 176x144
requires unsup****ted tricks to create your own gui
no inherent recording, tricks and extra overhead programs required to
record
streams.
A popular Fan and Hobbiest option, but not valid for wide trusted
deployment
(definitely not for retail).
##
Microsoft Research RTC
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwxp/html/winrtcapplications.asp
http://www.microsoft.com/presspass/press/2003/apr03/04-09RealTimePR.asp
http://www.microsoft.com/downloads/details.aspx?FamilyID=ae0bdc75-9f2f-4217-b97f-dfa0adf264aa&displaylang=en
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnrtcclnt/html/use_rtcapi.asp
Appeared to be the "unofficial" replacement for NetMeeting. At one point
appeared to have been slated to be part of the new Office system. As of
Fall 2003 the information pointed to RTC being instead a part of Windows
2003 Server.
Positives:
Sup****ted? Hard to tell, was it just been a FUD against the iChat (which
itself turned out to be a nice way for Apple to sell hardware without
releasing sup****ted software)
negatives:
176x144 max
Supposedly COM but examples only in C++
No clear and obvious deployment docs. The more I read the less I see.
##
Microsoft Research ****trait
http://research.microsoft.com/~jiangli/****trait/
Video/Audio system for PCs and low bandwidth small footprint devices such
as
SmartPhone and CE.
Positives & negatives:
MS Research has many of the smartest people on the planet ... but products
are not to be trusted as-is. MSR products tend to dissappear as quickly
as
they appear.
##
LeadTools MultiMedia Kit
www.leadtools.com
Spring 2003 announcement pushed that this would be the toolkit for
building
video conferencing systems. That part of the brochure has been removed.
Now appears to be a high-priced DirectX based filter set and proprietary
codec.
Positives:
If it had come about, LeadTools is usually a very solid vendor
Negatives:
LeadTools is one of the most expensive vendors.
The specific product that had mentioned video conferencing is C++ only and
the details of VConf appear to be "you figure it out"
##
J7 iMeetNow
www.j7tech.com
COM components and Delphi sources for video conferencing
positives:
can actually be made to work
inexpensive
negatives:
video is frame snapshots, not codec streams ... leads to flashes and
jerkyness
c/s not p2p so not an easy end-user setup choice for retail or wide
deployment as part of an overall solution
new version can "record" video by snapping frames, but not record audio
##
Banasoft.Net AVPhone
www.banasoft.net
In my experience opinion, these best there is.
positives:
components expose the video and audio streams
numerous samples in numerous languages (VB6, VB.net,d C#, C++ and Delphi)
showing how to use frame and codec streams
samples show how to merge the audio streams so multiple remote audio
sources
can be rendered into a single stream for listening and even recording
samples show p2p and c/s options
Appears to be the ONLY OPTION that can record merged audio and switch
video
sources on the fly to the same AVI file
negatives:
Takes a lot of code and study and experimentation.
latest version 3.2.4 appears to me to be less able to record video codec
streams than the previous 3.2.0 version. (Even after holding off the
record
till you get a keyframe)
Takes a lot of code and study experimentation.
Faster machines can actually be a detriment, audio stuttering is a big
problem on fast machines due to synchronization problems where duplicate
audio frames process before their matching video frames.
I've been using it for months and even with the more stable 3.2.0 version
the results are not consistent.
##
Windows Media Encoder
http://www.microsoft.com/windows/windowsmedia/9series/encoder/default.aspx
Included here because everyone at least tries to set up WME on two
machines
and have them stream at each other
Positives:
very easy to program using just about any COM tool including script
recording the local stream is a piece of cake
Free
Runs on 2k, XP and 2003 Server
Negatives:
WME9 is not the developer-friendly tool that WME7 was. Now MS requires
you
to install the complete Encoder GUI application and run with with
automation. Major overhead.
WME9 like all good encoders (and it is a top-notch encoder in this
release,
IMHO) is a resource hog. 100% cpu is common, leaving little cpu for
decoding any incoming streams.
Incoming streams have to be rendered with Media Player 9 ... another great
tool on it's own, but another major resource hog.
WME9 latency averages over 5 seconds even over a LAN. MS considers 20
seconds "acceptable" over IP. Even 5 seconds is a pain for video
conferencing.
##
Flash MX and Flash Conferencing Server.
http://www.macromedia.com/software/flashcom/
Rightclick on any Flash video web page and choose Settings and you will
see
your webcam and microphone ready for chatting if the site offers chat.
Positives:
Can record streams
Nearly Ubiq, it's Flash.
Playback of swf files can be embedded in a .Net project using COM Interop
Negatives:
Records to swf format, which is not editable so swf files would have to be
converted to AVI or QT for any kind of user-friendly processing. This
conversion appears to not be possible using available developer
components,
and would
have to be done manually with 3rd party tools. Quality degrades radically
in conversion.
Recording is done server-side, not clientside so recording can not be done
with a win32 user application (unless you embed IE)
MX $999, Conferencing Server $4500
As far as my weekly googles go, that's the bunch in a nutshell.
Seems so funny to me that NetMeeting was out and working in 1993 way
before
BBand. But now that we have the bandwidth and cpus that we wanted back
then
our video conferencing options are less powerful now than they were then.
Am I still missing an option, or is that truly the complete list?
Thanks.
Robert Smith
Kirkland, WA


|