Most implementations I've seen (downloading large software packages, for example) use the "choose a location that's closest to you" solution (provide three links).
Since there isn't anything intrinsic in the IP that denotes geographic locale, you'd probably need to grab the IP (#CGI.Remote_Addr#) then do some sort of WHOIS lookup using CFHTTP or one of the Custom Tags, figure out the location, map it to a look-up table... gosh... sounds entirely too complex to me for a simple video.
There might be something you could do if you could figure out how to PING (I believe there are a couple CFX tags that'll do that for you), and based on the number of hops and response times, choose an appropriate server. Doesn't sound particularly reliable, though.
I know IIS has some distributed content thingamajiggy (I forget what they call it, but that's the technical name) built-in that will sync remote directories to a master and at least FTP from the closest server (not sure about HTTP requests or other streaming). Hope it helps,
-Carl