Marcin, I think your best bet is HD web broadcasting services. These are not surveillance specific, but general purpose services designed to stream online video to lots of people - whether it is an event, religious service, music performance or tenants in a building.
Relevant discussion and options here: HD Broadcasting Options?
In the old days, we did this by connecting the camera outputs to RF modulators tied into the condominium's MATV/CATV system. Each camera would be on its own TV channel, which could be viewed by residents on a standard TV set. In the larger complexs, particularly those with lots of seniors, it was amazing how many people might be watching the cameras at any given time.
A early form of "crowdsourcing" the video monitoring function
Live = relatively easy. Multicasting would solve that with the right equipment. Playback is a different beast. If 250 people were viewing playback simultaneously, especially different cameras at different time periods, the system would need be able to read a relatively large amount of data from different storage sectors simultaneously. Few storage systems can provide that capability.
There are few problem the building management wants to solve with the camera system. They want to let the tenants see:
- who is calling at the main entrance,
- the laundry - which is really big issue because it's too small for such a building and there is no structured schedule to use it (everyone can come whenever they want), so usually there are a lot of people there; building management wants to let the tenants see the laundry from their condos - I'm thinking that there may be such situation where many people would view this camera constantly to monitor the laundry room
- the parcel and the mail room.
The building is quite old and there is no Gigabit lan in every unit just 100 Megabit.
Could you please elaborate on multicasting. I have never done that and would really appreciate few tips on how to do this.
Full disclosure - I work for Eagle Eye Networks and we provide a cloud based VMS that might be a fit.
How many cameras are in the building, what resolution do they want to have, and what kind of Internet access do they have?
Our solution would send the video from the building to our datacenter, and then each of the residents would watch live and/or recorded video using their own Internet access. Users can view video with a browser or iOS or Android app.
We have several installations around the country with condos and apartment buildings that had similar requirements.
Thanks to all of you I have got a few options to present to my customer.
The building's condos have 100mbit ethernet running off the building's lan so multicasting may be a good idea.
I agree fully with the point that John made about letting tenants to view recorded video. I will use that to convince my customer to provide that feature only for the building management.
I was thinking of another solution. Do you think that there are open source frameworks which I could use to create a very simple web service just for the live view of let's say four cameras. This web service would pull a frame from each camera every second and store it on the server. Hmm... i think I going a little beyond the scope but it sounds like it is possible and not to unachievable. In fact one of my friends created a website with a view of a camera that is installed in the middle my town overlooking the old market square. I'll ask him for a code and if it works I share it with you.
Many simultaneous users watching the same live video feed is a common challenge for live sporting events such as Major League Baseball. The amount of servers and upload bandwidth would be huge in order to deliver to each client individually.
Nokia first used a Peer-to-Peer sharing scheme where only a relatively few clients need a direct feed to the camera, server, or multicast switch providing the stream. Others viewing the same live stream essentially become nodes in their own mesh network, sharing portions of the stream with others. Just like a torrent file, the more clients viewing the stream, the more available it becomes. This is true both across the Internet or within a local network.
One such protocol is Adobe's RTMFP (Real Time Media Flow Protocol):
"RTMFP will reduce the bandwidth costs for direct, live, real?time communication solutions, such as audio and video chat and multi?player games. Because RTMFP flows data between the end?user clients and not the server, bandwidth is not being used at the server so solutions are less expensive to scale. RTMFP also increases the speed of delivery through the use of UDP. UDP is a more efficient (but less reliable) way to send video and audio data over the Internet that reduces the penalties associated with missing, dropped, or out of order packets." (Emphasis mine)
Disclaimer: NLSS uses P2P via RTMFP to allow an unlimited number of viewers, via web browser or smart app, as part of our Cloud Service.
Cloud based systems like ivideon could work.
Disclosure: I work for Smartvue
Smartvue cloud services may offer the solution you are looking for. We have built similar scale systems and may have the correct solution. You can visit our website for more information.
Instead of having viewers being able to watch recorded video, why don't you give them 2 or 3 time delay options? They can watch a live feed, 30 Second Delay feed or a 1 Minute Delay feed. If they wanted to watch anything more, then they should go see management.
If they have a tiny budget, but have big ideas, you could also just put the streams on a webpage with a simple iframe. However, it would be a public stream to the general public as well unless you used an annoying password. (Tiny budget with big ideas is a very common scenario in these instances)
<iframe src="http://IPADDRESS" height="300" width="100%" scrolling="auto" frameborder="0"></iframe>