Titta ovanför skärmen på en bärbar dator eller netbook, och det finns en bra chans att du hittar ett pinhål som gömmer en kamera.

Om du är något som oss, har du inte använt den här kameran sedan förra julen när du försökte använda den för att ansluta till din familj i Australien - då hade de brandväggsproblem och du gav upp.

Vi kommer att sätta den försummade kameran att använda i ett övervakningssystem - inte den sort som används av Gene Hackman i Konversationen, men en CCTV för saker du skulle vilja hålla koll på, som garageporten eller dina sällsynta Barry Manilow-poster.

Vi använder ZoneMinder. Den körs vid sidan av Apache webbserver, övervakar kameraflöden och gör dem tillgängliga via en webbläsare, men det är bara början. Den kan utökas till ett helt hem säkerhetssystem, komplett med offline inspelning, rörelsedetektering och flera kamerazoner, som alla kan köras från din Linux-laptop eller netbook.

Det första steget är att få det att fungera med en enda kamera - den som sitter ovanför din skärm.

Projektkrav

En Linux-dator

Du kan använda antingen en netbook med en inbyggd Linuxc-ompatibel kamera eller en dator med en webbkamera. Vi har använt Ubuntu 11.10, men någon ny version av Linux ska fungera bra för det här projektet.

En webbkamera

Om du inte har en netbook eller laptop, kommer en extern webbkamera ansluten till datorn fortfarande att göra.

1. Felsökning

Nyckeln till en framgångsrik ZoneMinder-installation har en fungerande kamera innan du börjar. ZoneMinder kan inte felsöka videoingång - det kan bara hantera vad Linux redan har konfigurerat.

De allra flesta kameror kommer att ställas in automatiskt, antingen när du installerar distributionen (i fallet med en skärmskärmskamera) eller när du ansluter dem till USB-bussen. Om en kamera har upptäckts och en drivrutin installerats, kommer systemet att skapa / dev / video0 virtuell enhet på ditt filsystem.

Du kan kontrollera det med kommandoraden eller en filhanterare. Du kanske tycker att det har ett något annorlunda nummer, eller inget nummer alls, särskilt på äldre system, men för att testa kameran måste du se till att det tar videodata.

Du kan göra detta med Gnome Application Cheese, även om det måste installeras manuellt på den senaste versionen av Ubuntu. Du kan använda den för att ta fotobladsliknande bilder med kameran och lägga till realtidseffekt i videon utan någon annan konfiguration, men vi föredrar en åtskildhet av VLC, som också måste installeras.

Detta kan strömma videofilmer direkt från kameran - välj bara "Öppna inspelningsenhet" från Arkiv-menyn och kontrollera att videoenhetens namn är "/ dev / video0".

Om videon fungerar kan du börja installera ZoneMinder. Om inte, måste du kontrollera systemloggarna (typ dmesg), men du måste noga spåra anpassad firmware och ett verktyg för att ladda det i din kamera.

Om allt annat misslyckas kan du använda en billig USB-webbkamera eller titta på att investera i en IP-aktiverad version.

Från VLC behöver du notera de inställningar som den använder för att spela upp videon. Du kan se dessa genom att gå till "Verktyg> Medieinformation" och välja "Kodinformation". Notera upplösningen och kodkoden som används - du behöver dem när vi lägger till kameran på VLC.

2. Installera ZoneMinder

Ubuntu 11.10 innehåller nästan uppdaterade paket med ZoneMinder. Vi rekommenderar att du installerar dessa istället för att spåra de senaste paketen så att du inte har några problem att installera ytterligare beroenden. Sök bara efter 'zoneminder' i det nya Ubuntu Software Center och klicka på 'Install'.

Cirka halvvägs genom installationen verkar stoppa, men det som verkligen hänt är att ett beställningsfönster har dykt upp bakom programvarucentret och ber om inmatning. Byt till detta med ikonen "Minimera fönster" längst upp till vänster.

Den första förfrågan ber om ett lösenord för roten MySQL-konto. MySQL används som databas för all icke-videodata, och root-lösenordet behövs för att skapa en databas och för administration.

Du kommer då att bli ombedd för ditt mails namn. Du kan behålla detta och följande frågor till deras standardvärden.

Till skillnad från den gamla Ubuntu-pakethanteraren, Synaptic, är det inte alltid uppenbart när Software Center installerar beroenden, men du kan kontrollera vad som var vid sidan av ZoneMinder genom att växla till "Historik | Installation ". Du bör se många paket installerade, inklusive Apache och PHP5.

Du kan kontrollera Apache körs genom att peka en lokal webbläsare på http: // localhost. Du kommer att se meddelandet "Det fungerar".

Du vill nu göra ZoneMinder till rotsidan för din Apache-server. Till det här öppnar / etc / apache2 / sites-enabled / 000-default med din favorit textredigerare som administratör (försök före det med "sudo nano'om du inte har en). Leta efter DocumentRoot och ändra det här till / Usr / share / zoneminder, gör sedan samma sak genom att ändra / Var / www del.

Vi måste också lägga till den användare som kör webbtjänsterna till gruppen som kan komma åt videoenheten. Du kan göra detta från kommandoraden genom att skriva sudo usermod -a -G video www-data.

'Video'är gruppen som skapats av Ubuntu för åtkomst till enheten och'www-data som'är användarnamnet som används av Apache. Du kan kontrollera att gruppen har lagts till korrekt genom att skriva sudo id www-data, och utsignalen ska se ut som följande: uid = 33 (www-data) gid = 33 (www-data) grupper = 33 (www-data), 44 (video)'.

Skriv nu sudo service zoneminder omstart (flikavslutningen fungerar här), följt av sudo service apache2 omstart.

Ladda http: // localhost till en webbläsare, och du bör se webben för ZoneMinder.

3. Lägg till en kamera

Skydda inte av gränssnittets sparsamhet - det finns mycket ström bakom dessa sparsamma knappar.

Det första vi behöver göra är att lägga till vår kamera i konfigurationen. Klicka på knappen "Lägg till ny bildskärm". Detta öppnar ett annat litet fönster med fem flikar.

På den första fliken ändrar du namnet på bildskärmen till något beskrivande - det här hjälper dig om du väljer att lägga till några ytterligare kameror till din konfiguration senare. Nedanför håller källkodstypen inställd på 'Intern' och funktionen inställd på 'Monitor'.

Byt nu till den andra fliken, märkt Källa. I det första fältet anger Device Path adressen till den videoenhet vi använde tidigare. För de flesta installationer kommer detta att vara / dev / video0.

Inspelningsmetoden måste vara Video for Linux version 2 och enhetskanalen är normalt 0, men det är här vi måste ta våra inställningar från VLC.

Enhetsformatet ska vara antingen PAL eller NTSC, men om en inte fungerar kan du prova den andra.

Välj en inspelningspalett från menyn som bäst motsvarar den codec som används av VLC (vår var YUV420) och ange bredden och höjden som upplösningen från VLC också. Spara inställningarna med knappen längst ned i fönstret och du bör se din bildskärm listad i huvudfönstret.

Färgen på varje fält i denna tabell är viktig, och om något är rött rött betyder det att det inte fungerar. Det här brukar ses i kolumnen Källa, när en IP-kamera inte längre är tillgänglig eller du har fel enhetens namn på sidan med bildskärmsinställningar.

Du kan kontrollera att den fungerar genom att klicka på dess namn i den första kolumnen. Detta öppnar ett annat fönster som innehåller videoströmmen från din enhet.

4. Motion detection

Poängen med ett övervakningssystem som detta är att du inte behöver slösa bort timmar på att titta på bilder. Du vill få veta om något händer, och ZoneMinder gör det genom att möjliggöra rörelsedetektering för din bildskärm.

Detta är gömt på källkonfigurationssidan vi använde tidigare, och kan öppnas genom att återgå till huvudtabellen och klicka på bildskärmens enhet i kolumnen Källa. Leta efter funktionsmenyn på första sidan. Det borde läsa Monitor, och vi vill ändra detta till Modetect. Andra alternativ inkluderar Record och Morecord.

Record använder ingen rörelsedetektering, men registrerar snippets av ingång vid inställt intervall. Morecord är en kombination av rörelsedetektering och rekord. Kontrollera att flaggan Enabled är inställd.

Med inställningen Modetect, spara inställningarna. Färgerna för den bildskärmen kommer att vara olika, och funktionen ska säga Modetect. Om du klickar på skärmen ser du fortfarande inmatningen från din kamera, men rörelsedetektering körs nu.

Från och med nu, om systemet upptäcker någon signifikant skillnad i videovisningen, kommer det att utlösa ett internt alarm och spela in händelsen till en buffert. Prova med handen. Staten ändras till Alarm och en händelse läggs till i listan under strömmen.

När du klickar på namnet på en händelse här visas ett annat fönster, och från det här kan du spela upp den video som spelades in från bufferten innan störningen under en stabilitetsperiod efteråt. Du kan snabbspola framåt, spola tillbaka och hoppa över tidskivor.

5. Händelsehantering

När du går tillbaka till tabellvyn ser du att varje händelse också är registrerad i kolumnen timme / dag / vecka / månad och du kan klicka på siffrorna inom dessa för att visa en filtrerad lista över händelser som motsvarar din tidsskala.

Från fönstret för händelsehantering kan du välja att arkivera händelser, exportera, radera och redigera dem, även om det sista alternativet endast är för att lägga till textanteckningar. Du kan också använda knappen Filters för att ange kriterier för händelser, med en tidslinjevisning som kan användas för att markera vilken del av bilden som utlöste händelsen.

Genom att klicka på den röda raden i händelsen öppnas uppspelningsfönstret. Om du vill bli informerad på distans när en händelse utlöses öppnar du fönstret Alternativ från huvudtabellvyn. På sidan E-post kan du ange din adress och serverinformation så att du kan informeras så snart som något är detekterat.

Det kan också ladda upp händelserna, tillsammans med videon, till en FTP-server, vilket är användbart om du vill att saker säkerhetskopieras innan en inbrott hittar din bärbara dator.

Lyckligtvis har du nu skapat det ultimata utbyggbara hemmet CCTV-övervakningssystemet, det kommer aldrig att komma till det.

-------------------------------------------------------------------------------------------------------

Först publicerad i PC Format Issue 262