Flash currently has p2p video streaming available : It is the rtmfp protocol.
This protocol allows two Flash clients to share data (and is the only method to do so in-browser with Flash only). It natively support audio/video transfer, as well as serialized objects.
It works in two possible modes :
If all the clients are in the same local network, they can communicate with each-other without needing a server. AFAIK, they detect each other using network discovery.
If the clients are in different networks (as it usually is through the web), it needs a server to store and maintain a list of currently connected clients : audio/video data is still share directly between the clients, and the server only exists to know who and where are the clients. Officially, you need a Flash Media Server for that, but there a few projects of free rtmfp-compatible servers out there.
If you want/need to use a different solution, you will need either a non-Flash solution if you want to be in-browser, or an AIR if you don't need to be in a browser.
As a side-note : most, if not all, p2p protocols use servers to manage a client list. It is, for example, the case of the BitTorrent protocol.