My first recommendation would be
Plex. It's free and has Mac, Windows, and Linux servers and Mac, Windows, iOS, and Android clients.
You install Plex (Mac and Windows versions have a built-in server) on any computer on the network that you want to be either a server or a client. When you launch the Plex app itself from that computer (or another), it'll find any other Plex instances on the network, and all of the libraries will be available for viewing on-demand.