Resurrecting iChat Audio and Video Conferencing

(blog.pipetogrep.org)

89 points | by thepipetogrep 11 hours ago

6 comments

  • rajbot 6 hours ago
    > 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..

    • dansalvato 2 minutes ago
      I was a teenager at the time and would watch all of Apple's keynotes. I remember them making a big deal for a while about H.264 support. It's very cool to get a glimpse of the context where engineers like yourself were likely proud of your work, and I'm glad that it was shown through the way that Apple talked about it.
    • thepipetogrep 37 minutes ago
      This is incredible and thank you for the reply. My friend and I are obsessed with computing history and this time period was especially fun for the both of us. Thank you for being a contributor to it.

      I'm curious, would you be open to talking about your experience on a podcast with us? https://forkbombpodcast.com/ It's noncommercial, no ads, and is just for fun.

      If not, I'd love to know more here. You all must of been really proud of what you built.

    • qubex 1 hour ago
      I remember Jobs promising it would be released as an open standard. What happened behind the scenes to prevent that occurring?
      • yincrash 50 minutes ago
        He also said the same thing about FaceTime in 2010
        • qubex 45 minutes ago
          Maybe I’m confusing the two.
          • rafram 36 minutes ago
            Yeah, you're thinking of FaceTime.
      • thepipetogrep 48 minutes ago
        I was not aware of this.
    • rootsudo 2 hours ago
      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...

    • crest 4 hours ago
      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?

  • jd3 8 hours ago
    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.
  • dewey 6 hours ago
    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.
  • penskymaterial 9 hours ago
    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.

    • etatester 9 hours ago
      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.

      • valleyer 9 hours ago
        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!
        • etatester 42 minutes ago
          The call actually does appear in the Recents list in red, with the time of call, it just doesn't say "missed" explicitly. This matches how the Phone app has looked for the past 20 years.

          The "missed calls" list I mentioned would be more of a filter, which is indeed annoying but not fundamental.

    • ErroneousBosh 7 hours ago
      > 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.

    • maxrev17 6 hours ago
      Yep Apple software is absolute garbage with a shiny veneer and everyone laps it up - ‘all about the marketing’
  • jadar 11 hours ago
    This is awesome! I remember trying to figure out how this worked as a kid, and never made headway. Today my dream was realized. ;)
  • mulanroo 9 hours ago
    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.