Alternative Solutions
About Us
Products
hdONE
PDFsecuview
Open Source
CALAMAIO Streaming Server
SNS [Simple News System]
lINlOUT
Services
Contacts
======== CALAMAIO ======== Copyright (C) Davide Gironi @ davide.gironi@tiscali.it http://www.gurzonet.com/ some pieces of code is taken from: * camserv : http://cserv.sourceforge.net * zoneminder : http://www.zoneminder.com About ------- Calamaio is a video streaming server to watch video streams in real time through internet connection. Calamaio can stream JPEG or MJPEG images. The configuration file can be set according to the user preferences in watching the streams. Additionally, the number of cameras and the type of video outputs can be selected by the user. It is possible to enable up to 16 cameras. However, by editing the provided source code of the project, it is fairly easy to add additional input sources. The server is implemented to work with multi-plexed cards, as the cards based on conexant fusion 878a, supported by the bttv driver in linux kernel, also it works with other card that support /dev/video devices. Calamaio is implemented over linux kernel 2.4 or less, written in ANSI C, using the IDE development platform Eclipse. There are many clients available to view JPEG or MJPEG streaming, one of those is "cambozola". Install ------- Some libraries are required to install this project * libjpeg * libpthread To make this project simply $ ./configure and then $ make Binary files will be created in src directory, go there and then edit calamaio.conf $ vim calamaio.conf add execution permission to all for the calamaio binary $ chmod a+w calamaio and start calamaio $ ./calamaio To open this project in Eclipse, just copy the project files in your workspace and then add a new "Standard Make C Project" using the same name of the directory that contains calamaio src. This project was developped with a fully working Eclipse 3.1 with CDT plugin on ubuntu 6.0.6. From your console go to the calamaio directory and then type $ ./configure Now you can use Eclipse to develop this project calamaio.conf ------- To configure calamaio edit the configuration file provided with the project. port : 9192 //the calamaio port fps : 5 //frame per seconds served camera_width : 320 //width of camera (px) camera_height : 280 //height of camera (px) //for camera_01 to camera_16 camera_01_id : 1 //unique ID, nagative value (i.e. "-1") //to disable the camera camera_01_device : /dev/video0 //linux device camera_01_channel : 0 //the camera device channel camera_01_group : 0 //the camera device group note: group of cameras is usefull for multiplexed card. Those type of card multiplex the video signals of X input on 1 chip. for example, if you have a 4 channel multiplex card, your configuration for the first 4 camera will be camera_01_id : 1 camera_01_device : /dev/video0 camera_01_channel : 0 camera_01_group : 0 camera_02_id : 2 camera_02_device : /dev/video0 camera_02_channel : 1 camera_02_group : 0 camera_03_id : 3 camera_03_device : /dev/video0 camera_03_channel : 2 camera_03_group : 0 camera_04_id : 4 camera_04_device : /dev/video0 camera_04_channel : 3 camera_04_group : 0 ... other camaras should have _id field < 0, i.e. camera_[05..16]_id : -1 When calamaio had started, to read the stream use those url JPEG : http://CALAMAIOIP:CALAMAIOPORT/channelCHANNELNUMBERjpeg MJPEG : http://CALAMAIOIP:CALAMAIOPORT/channelCHANNELNUMBERmjpeg CALAMAIOIP: is the ip of the server running calamaio CALAMAIOPORT: is the port assigned in configuration file to calamaio CHANNELNUMBER: is the channel number assigned in configuration file for example this should be an url to watch a JPEG stream: http://localhost:9192/channel2jpeg this one is to watch the same channel as above, but in MJPEG streaming mode: http://localhost:9192/channel2mjpeg Authorization ------- To personalize the authorization function just edit the function function http_auth(char *); in file: http.c the paramenter passed to this function should be the IP address, this function will return true if the IP is authorized, else false. License ------- /********************************************************************** * * * This library is free software; you can redistribute it and/or * * modify it under the terms of the GNU Lesser General Public * * License as published by the Free Software Foundation. * * * * This library is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * * Lesser General Public License for more details. * * * * You should have received a copy of the GNU Lesser General Public * * License along with this library; if not, write to the * * Free Software Foundation, Inc., * * 59 Temple Place, Suite 330, * * Boston, MA * * 02111-1307 * * USA * * * * For further information, visit www.gnu.org * **********************************************************************/
Calamaio
About
Documentation
Download
License
© copyright
www.gurzonet.com
, 2002-2010 - P.I. 05129490966