> Then at Apple's World Wide Developer Conference (WWDC) in June of 2003, along with the G5 processor and OS X 10.3 panther, Apple announced "iChat AV".
This is wonderful. I love that people are still using this!
I worked on iChat AV video. We also added 4-way video conferencing with H.264 support in 2004. Really did feel cutting edge back then. Lots of all-nighters in those days, hand-writing altivec and hand-optimizing h.264 to work on iMacs and iBooks that didn’t have simd..
Thank you for working on this. You added so much enjoyment to using AIM on an eMac circa that time. People talk fondly of their 90's/80's computing experience, but this was mine. It really was a magical time...
Having to optimise for three very different microarchitectures with the G3 (short narrow pipeline, no AltiVec, small caches), G4 (short wide pipeline, focus on in-order AltiVec, useful OoO otherwise, large L2 yet memory bandwidth starved), and G5 (long and wide pipeline, focus on super-scalar OoO, AltiVec just glued on, more memory bandwidth) must have been "fun".
How many variants of the codecs did you have to implement to make it work?
That overengineered isight camera worked through multiple adapters up until the introduction of the M1, when they sadly finally removed the driver. I used to use it connected to my intel macbook pro for meetings in the the late 2010s for fun.
A time warp to when video conferencing actually worked, as opposed to every new release of FaceTime now being some kind of avant-garde art experiment with the UI being increasingly impossible to use for both technical and non-technical users.
The last straw for me was making the recents/contacts as confusing as it was, and I personally made some accidental calls to former contacts that for some reason were made front and center.
I expect the next version will hide even more controls behind a new, indecipherable icon that looks like a 2D abstract pair of testicles.
I don't see what's confusing about the app, both on macOS an iOS. You get a preview of your face, the last contacts you called and a green "New call" button.
To me this is simple to the point of being excessively simple, especially with the "missed calls" being in a 16x16 click target dropdown.
It looks like they optimized for "calls from grandma" mode.
You don't see what's confusing, and then you proceed to mention something confusing. If a basic-skills user can't find "missed calls", that's confusing!
> and I personally made some accidental calls to former contacts that for some reason were made front and center.
MS Teams is especially bad for this if you have a few people in your addressbook with the same name and corporate email naming gives you for example john.mcleod@place and john.mcleod2@place - oh, you messaged john.mcleod@ six months ago but you message john.mcleod2 multiple times per day? Then this time you must mean john.mcleod with no 2, this time surely!
My "patch" is basically just Scotland, about half the phone book for the north-west is McLeods, and the John McLeods alone are about two dozen pages, so duplicates are common.
SNATMAP is essentially Apple's version of STUN (RFC 3489, also 2003): learn your public IP and port from an outside server, swap them over chat, then both sides send packets at once to punch through NAT. That's why port-preserving NAT matters. Carrier-grade NAT, common on mobile and some ISPs, assigns a new port per destination and breaks it. Modern WebRTC falls back to a TURN relay, but iChat had none, so if calls still fail after the hosts fix, check for CGNAT on either end.
> Then at Apple's World Wide Developer Conference (WWDC) in June of 2003, along with the G5 processor and OS X 10.3 panther, Apple announced "iChat AV".
This is wonderful. I love that people are still using this!
I worked on iChat AV video. We also added 4-way video conferencing with H.264 support in 2004. Really did feel cutting edge back then. Lots of all-nighters in those days, hand-writing altivec and hand-optimizing h.264 to work on iMacs and iBooks that didn’t have simd..
I really love HN!
Thank you for working on this. You added so much enjoyment to using AIM on an eMac circa that time. People talk fondly of their 90's/80's computing experience, but this was mine. It really was a magical time...
Having to optimise for three very different microarchitectures with the G3 (short narrow pipeline, no AltiVec, small caches), G4 (short wide pipeline, focus on in-order AltiVec, useful OoO otherwise, large L2 yet memory bandwidth starved), and G5 (long and wide pipeline, focus on super-scalar OoO, AltiVec just glued on, more memory bandwidth) must have been "fun".
How many variants of the codecs did you have to implement to make it work?
That overengineered isight camera worked through multiple adapters up until the introduction of the M1, when they sadly finally removed the driver. I used to use it connected to my intel macbook pro for meetings in the the late 2010s for fun.
You can gut it and replace with a Raspberry Pi camera!
https://github.com/maxbbraun/pisight
https://www.printables.com/model/418381-webcam-project-using...
It was FireWire, wasn't it? Pretty sure I still have mine in a box somewhere.
A few years ago I bought that iSight camera off eBay for no good reason, especially as I can't really use it. It's just a beautiful object to own.
A time warp to when video conferencing actually worked, as opposed to every new release of FaceTime now being some kind of avant-garde art experiment with the UI being increasingly impossible to use for both technical and non-technical users.
The last straw for me was making the recents/contacts as confusing as it was, and I personally made some accidental calls to former contacts that for some reason were made front and center.
I expect the next version will hide even more controls behind a new, indecipherable icon that looks like a 2D abstract pair of testicles.
I don't see what's confusing about the app, both on macOS an iOS. You get a preview of your face, the last contacts you called and a green "New call" button.
To me this is simple to the point of being excessively simple, especially with the "missed calls" being in a 16x16 click target dropdown.
It looks like they optimized for "calls from grandma" mode.
You don't see what's confusing, and then you proceed to mention something confusing. If a basic-skills user can't find "missed calls", that's confusing!
> and I personally made some accidental calls to former contacts that for some reason were made front and center.
MS Teams is especially bad for this if you have a few people in your addressbook with the same name and corporate email naming gives you for example john.mcleod@place and john.mcleod2@place - oh, you messaged john.mcleod@ six months ago but you message john.mcleod2 multiple times per day? Then this time you must mean john.mcleod with no 2, this time surely!
My "patch" is basically just Scotland, about half the phone book for the north-west is McLeods, and the John McLeods alone are about two dozen pages, so duplicates are common.
Yep Apple software is absolute garbage with a shiny veneer and everyone laps it up - ‘all about the marketing’
This is awesome! I remember trying to figure out how this worked as a kid, and never made headway. Today my dream was realized. ;)
SNATMAP is essentially Apple's version of STUN (RFC 3489, also 2003): learn your public IP and port from an outside server, swap them over chat, then both sides send packets at once to punch through NAT. That's why port-preserving NAT matters. Carrier-grade NAT, common on mobile and some ISPs, assigns a new port per destination and breaks it. Modern WebRTC falls back to a TURN relay, but iChat had none, so if calls still fail after the hosts fix, check for CGNAT on either end.