I used NetStream.play("invalid-live-stream-url") to play an invalid live stream. The other arguments are using default, e.g. start = -2, len = -1.
The menu says that when we use the default "start" and "len" to call "NetStream.play", "Plays the live stream until it is no longer available. If a live stream of the specified name is not found, Flash Player plays a recorded stream until it ends."
However, I do not have a recorded stream on the server that has the same name as the live stream, and I did not get the expected "NetStream.Play.StreamNotFound" error.
Live streams are just identifiers, so you won't get a StreamNotFound error for them. As soon as you start playing from the stream it 'exists', there's just no video in it. At that point, Flash will wait for FMS to send video.
NetStream.Play.StreamNotFound happens when you pass 0 as the start to force recorded streams only, and the file doesn't exist.