Sunday, September 29, 2013

My All in One Multimedia Server

All in One Multimedia Server

CCTV, Network Storage, Torrent, UPnP Server in One




I'm doing another experiments for future use, it may be useful in some point in time probably for business planning, products and system, so I like experimenting stuff to see how it goes. So basically I have this fan-less mini-PC dual-core Atom and turning it into an All in One multimedia server so I don't need to purchase separate standalone products in the market. The server must be usable using local network in order for other PC to connect and use its features.

I chose an Atom because its power efficient and the server will run 24/7 so if you mind the electric bill then this is the way to go and because its the only available system as its too slow for gaming, it probably rated at 30Watts, being fanless is going to help in the long run. I also used a very old TV Tuner that is compatible with a Linux system so I can input an A/V camera for CCTV purposes.

Of course it will run on Linux for it to be lightweight no non-sense, solid, stable, admin secured operating system, precisely I used Ubuntu, the old 10.04 LTS which was released since 2009, its the same version I used for my father's PC. Its enough for a less tech savvy like me but not too much bells and whistles that will eat up system resources. Here are the software I used in order to make the server;

Torrent (Transmission)

Transmission comes pre-installed with Ubuntu 10.04 as its default Torrent download client. Just enable the Web interface in the settings and you can access it on a local network, anyone on the network can download and check torrent downloads.

Network Storage (Samba)

Easily just install Samba in the Ubuntu Software Center, then you can configure what Hard drive and folders to share. Other PC users across the house can access the files like movies or store their files onto the network storage as long as writing is allowed.

UPnp Server (MediaTomb)

MediaTomb can be installed easily with Ubuntu Software Center, streaming is different from direct accessing a movie file using the network storage, like if you have a device that can't play a particular movie file due to codec restriction/unavailability when you directly access it on the network storage, you can use the UPnp server to stream the movie file so it can be playable.

CCTV (Zoneminder)

I would say this is the hardest part of configuring the server. Basically you need a TV tuner that is compatible with a Linux system, If you install TV time on Ubuntu Software Center, you can immediately check if your TV tuner is working and is compatible, if it is, then go install Zoneminder according to your Ubuntu version, mine is 10.04 and if you follow the instructions properly there would be no problem, its just a matter of cut and paste lazily like what you do on Wikipedia for your home work. You can also use USB camera or Network camera but I haven't tried that yet so its not covered in the article.

Once its installed you can add a camera, select the proper format and its good to go, usually it will say "Network Camera error" when you probe it, but its working, just make sure you have the right resolution (mines 640x480) and capture pakette A(mines RGB555, usually its on device path /dev/video0 then the channel is 1 for A/V, channel 0 is television, channel 2 is s-video. The video would not work if the settings is wrong and the color would turn red.

I used to put it on Record so it will capture images FPS constantly but it will eat up disk space, so I used Modect which detect motion before capturing images and saving it onto the hard disk, Modect will  consume more system resource but less on disk space as the opposite for Record.

If on Record state, maximum FPS is the frame/images per second to be recorded onto the hard disk, alarm FPS would be irrelevant.

If on Modect state, maximum FPS is the detection, so the higher the FPS the better detection of motion, before it will trigger an alarm when it detected a motion, in turn when it detected a motion, the alarm FPS is the frame/image per second to be recorded onto the hard disk, the higher the alarm FPS is the more images will be saved per second thus eating up disk space. My settings is maximum FPS is 22 then alarm FPS is 10.

Saved FPS images will be at /var/cache/zoneminder/event folder, you can change it if you want but make sure the permission of the location folder must be writable by anyone or else it will not record.

The good part is anyone in the local network can access the CCTV camera even using your Smartphone, so if someones knocking on the door, you can see who it is.

Just don't forget to make your multimedia server to use static IP so it won't change IP address when you turn it off so if its been bookmarked on other PC, it will not be lost since its looking for the old IP address.

No comments:

Post a Comment