It doesn't. ZM generates video streams in a variety of video formats such as mpeg or asf by utilising the capabilities of ffmpeg. So fi ffmpeg can do it then so should ZM, within the bounds of format limitations such as frame rates and windw sizes etc.
The stream method should probably be called video rather than mpeg. Originally I only got it working with mpeg video and since I was using mpeg_encode and ffmpeg I just ended up calling it mpeg. Video is a better word though. Format is just the format of video and is passed to ffmpeg directly.
Yes you can change asf to mpeg. Bear in mind though that asf works as a continuous stream whereas so far I've only been able to get mpeg working as a fixed length file. Your mileage may vary as they say.
As far as I know, you don't need to do anything special with ffmpeg to use asf.
I think that actually MPEG-4 would be the correct name for this option, as that's how the security IP cameras are divided by their capabilities, i.e. streaming via MJPEG or via MPEG-4 or both.