25 Years Of Video Calls

Roughly 25 years ago, I spent a little while at INESC and its little coterie of incubated companies (what we’d term “startups” these days) doing all manner of things I think are worth recounting.

Well, at least the ones in this peculiar little arc, of which I was reminded during a conversation I had this past week.


One of the reasons I got into the telco universe was an internship project I did for EURESCOM at the (now defunct) CPRM Marconi, and which I later picked up again at INESC. It was an international project with people from BT, Deutsche Telekom and a few other (now termed incumbent) telcos focusing on (Computer Supported Collaborative Work).

And what did we work on? Well, we had… video calls.

More to the point, we tested / compliant video conferencing and screen sharing software, drawing diagrams in a cross-platform canvas between Microsoft NetMeeting and some ugly Motif application on Sun boxes, and generally trying to figure out what the future would look like in the typically weird and over-complicated way telco standards bodies looked at the world.

In a weird precursor to this bright, amazing future we all now live in, I had a PC decked out with an Intel video capture card, a camera1 and a VGA monitor into which we tried to cram NetMeeting, a few video thumbnails, a whiteboard and some document to “collaborate” on.

Exactly like Teams, really, except that people actually believed video calls would be spent editing documents collaborativel at length (instead of presenting them and just following up with changes, which is what happens 99% of the times these days).

It’s amazing to realise that even though today’s hardware is a couple of (or more) orders of magnitude faster and we actually have touchscreens and pens as pretty much standard issue on many kinds of devices, shared whiteboards still haven’t improved substantially over the last two and a half decades.

And I don’t mean just in terms of usability, but also of applicability to most use cases. You’d think we’d have learned this lesson by now, right?


Fast forward a few years, and I was pulled into a team at INESC that designed and implemented , an ISDN ISA card for desktop PCs that ingeniously did away with a bunch of proprietary components and implemented a fair chunk of the required protocols in software (initially in its own on-board low-end x86 CPU, and later on mostly off-loaded to the host PC).

This is what the early PC-BIT cards looked like

Since most of the code was already written (by a friendly, infinitely patient russian guy called Sasha), my contribution was to debug (more than actually write) the multi-link PPP driver for Windows, since we needed MPPP support to take advantage of the two distinct 64Kbps channels you got with ISDN (2 B channels for data and a D channel for signalling).

Board development was sponsored by Portugal Telecom (which sold the board as its Cyberkit RDIS product) and was later moved to a hardware-centric iNESC spin-off called Octal (which seems to have vanished a while back)2.

Two of my coursemates did the Solaris and Linux ports of those for the same generation of that hardware, but the driver abstractions were so different3 that hardly any code was common, and I got so many blue screens that I could almost pick up what had happened from the abbreviated crash dumps alone.

And what did we run to stress test it? Well, NetMeeting, obviously (although FTP was a more reliable way to trigger connection upgrades). We also had other ISDN cards and desk video phones that could do H.320 calls, but it was fun to live in the future and do video calling over IP.

There is a lot more to tell about these times that deserves separate posts (like, for instance, the dramatic results of having our waxed wooden floors polished with copper brushes, which led to some amazing special effects when plugging a new machine into the floor mains sockets, which were coated with fine copper powder), but an interesting morsel is that my manager at the time went on to become the GM of Microsoft Portugal (and eventually rose to VP level after working his way around the world).

I still find it hilarious that, before leaving INESC, he gifted me a pretty unique book.

Dive Into Telco

Around the time of my PC-BIT antics, I also dabbled a bit with video conferencing over ATM (I had an ATM-25 network card in my desktop PC with a SPARC CPU four or five times faster than the PC itself), but fortunately ATM didn’t last long in the face of the TCP/IP onslaught and I eventually went , which is altogether.

Until very recently, the first time I had anything to do with setting up a video calling service was, of course, when 3G came about and people tried to use phones with postage stamp sized screens to do mobile-to-mobile and mobile-to-fixed video calls.

This was around 9/11, after which there was a burst of demand for standards-based, telco-grade room videoconferencing services to substitute for business travel (which dipped precipitously for a few months)4 and we had to figure out how to make it all work.

But in practice, nobody used 3GPP-based video calling much because the experience was atrocious regardless of what kind of equipment you had.

Telcos stuck to it as a flagship service because a) they could charge more and b) it was interoperable with room conferencing services, to the extent that some diehards at Vodafone even wanted to refuse carrying the iPhone 3G for not supporting video calls.

Pretty ironic, right?

One of these days I’ll probably write about those times, which were how I got into Asterisk, and . In particular, one of the things I’m pretty sure is how back in 2005 I placed a voice call to our CEO’s mobile from across the room using a desk phone and .

That was a lot of fun, for a lot of reasons I won’t go into tonight…

  1. After posting this, I remembered that before getting the Intel capture card and a re-purposed Sony color CCTV surveillance camera, most of our initial testing was actually done with a Logitech QuickCam (the Connectix QUickCam VC model, which was the first USB one, but also supported parallel port connections). ↩︎

  2. Another thing I was involved in was getting Microsoft Mail to handle X.500 directory services (which is why I have so many LDAP scars) as part of an attempt at getting it to use X.400 transport, but good thing SMTP won that war… ↩︎

  3. This was the dawn of NDIS, and most of the work as around wrapping CAPI in a way that made sense to NDIS and the dial-up stack. ↩︎

  4. We had Tandberg booths at Vodafone, in which I spent many a day in much the same way I do in my office these days… ↩︎