class main AboutMe { exec(); }
Tem piada como é que uma simples webcam com 10 anos, um pc com Linux e dois programas conseguem fazer!
Ok, vou passar a explicar, há dias la estive eu a instalar a minha webcam USB em linux (Creative webcam Pro qualquer coisa assim), Depois de a ter posto em funcionamento (gqcam) la me deixei tentar por um programa chamado “motion”.
Esta aplicação consegue tornar qualquer computador numa arma eficiente no que diz respeito à vídeo vigilância, tudo isto com uma simples webcam! Imaginem, que tem um cachopo com poucos meses e todos os dias uma ama vêm a sua casa para ocupar-se do bébé. Ao colocar a sua webcam, o computador automaticamente tira fotogramas quando sente movimento, apenas movimento! Logo, imaginem o que é chegar à casa e ter todo o dia da ama gravado no vosso pc :P
Isto de criar fotogramas ao movimento permite muitos outros usos, como segurança de lojas, locais, casas etc...
E como instalar este motion? Bem, nada de mais fácil, alias, acho que o mais difícil foi mesmo andar a procura dos drivers da minha webcam, porque comparativamente, a instalação do motion foi simplesmente trivial:

ruben@aioros:~$ sudo apt-get install motion


Depois da instalação, basta configurar o ficheiro de configuração em: /etc/motion/motion.conf e alterar alguns valores. Este passo apenas vai servir para que possamos ver a criação dos fotogramas em tempo real (por defeito está no /var/lib , uma pasta não muito fácil de aceder como simples utilizador).

target_dir /home/ruben/webcam

hehehe, pois é, o motion também tem destas coisas (verificar se a firewall permite ligações no porto 8000)

webcam_port 8000

E com esta opção ligamos a webcam para o mundo :)

webcam_localhost on

Depois de executar o motion (basta teclar motion), ele irá começar o seu trabalho, detectando os movimentos em frente à webcam. E não só, como também ligamos a webcam para o mundo, está neste momento a produzir imagens para http://localhost:8000 :P



O problema agora, não são as imagens, mas sim a quantidade de imagens que o motion está a produzir em poucos minutos. E que tal produzir um vídeo disto?
Os mais cuscos terão certamente reparado que no ficheiro de configuração do motion, existe uma opção para fazer vídeos. No entanto, já tentei e o resultado não é assim nada de especial. Para já deu erros até meter nojo, e claro a qualidade final não era conveniente.

Lembrei-me do programa que é usado para fazer codificação de vídeos (divx, xvid etc..) em Linux, o Mencoder. Para o instalar basta mais uma vez aptegar:

ruben@aioros:~$ sudo apt-get install mencoder

(talvez peça para instalar algumas dependências, está tudo bem, podem seguir em frente à confiança!). Uma vez instalado, basta correr o mencoder para produzir o vídeo que está na nossa pasta:

ruben@aioros:~$ mencoder mf:///home/ruben/webcam/*.jpg -mf w=320:h=240:fps=10:type=jpg -ovc lavc -lavcopts vcodec=mpeg4 -oac copy -o /home/ruben/video.avi
MEncoder 2:1.0~rc1-0ubuntu13.1 (C) 2000-2006 MPlayer Team
CPU: Intel(R) Pentium(R) M processor 1500MHz (Family: 6, Model: 9, Stepping: 5)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.
success: format: 16  data: 0x0 - 0x0
MF file format detected.
[mf] search expr: /home/ruben/webcam/*.jpg
[mf] number of files: 1170 (4680)
VIDEO:  [IJPG]  320x240  24bpp  10.000 fps    0.0 kbps ( 0.0 kbyte/s)
[V] filefmt:16  fourcc:0x47504A49  size:320x240  fps:10.00  ftime:=0.1000
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffmjpeg] vfm: ffmpeg (FFmpeg MJPEG decoder)
==========================================================================
VDec: vo config request - 320 x 240 (preferred colorspace: Planar YV12)
VDec: using Planar YV12 as output csp (no 3)
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
videocodec: libavcodec (320x240 fourcc=34504d46 [FMP4])
New_Face failed. Maybe the font path is wrong.
Please supply the text font file (~/.mplayer/subfont.ttf).
subtitle font: load_sub_face failed.
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
Pos: 117.0s   1170f ( 0%) 81.34fps Trem:   0min   0mb  A-V:0.000 [568:0]]
Flushing video frames
Writing index...
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
 
Video stream:  568.771 kbit/s  (71096 B/s)  size: 8318275 bytes  117.000 secs  1170 frames
ruben@aioros:~$  


Se tudo correr bem, deverão ver algo parecido com isto. Caso contrário algo no processo deve ter falhado... Por vezes, uma leitura mais calma ajuda em entender e solucionar os problemas.

Continuando, agora que temos o motion e o mencoder em funcionamento, e que tal fazer um script que irá ser executado de 24 em 24 horas construindo assim o vídeo do dia?

ruben@aioros:~/scripts$ nano makeDaillyVideo.sh


#!/bin/bash
 
data=`date +%Y%m%d`
 
rm -fr /home/ruben/webcam/$data
mkdir /home/ruben/webcam/$data
mv -f /home/ruben/webcam/*.jpg /home/ruben/webcam/$data
mencoder mf:///home/ruben/webcam/$data/*.jpg -mf w=320:h=240:fps=10:type=jpg -ovc lavc -lavcopts vcodec=mpeg4 -oac copy -o /home/ruben/$data.avi
sudo rm -fr /home/ruben/webcam/$data


O que faz este script? Muito simples, primeiro cria uma variável ($data) com ANO+MES+DIA, depois apaga uma pasta e todo o seu conteúdo caso já existisse (isso pode acontecer se o script for  abortado), depois volta a criar a mesma pasta (agora é de vez !), move todas as imagens disponíveis na pasta do motion para uma pasta temporária.
Uma vez este processo de pastas e ficheiros concluída, o script faz uma chamada ao mencoder e produz o vídeo final que irá encontrar-se na home do utilizador com o ficheiro .avi
A última linha remove todas as imagens produzidas pelo motion que estavam dentro da pasta temporária (incluindo a pasta temporária).

Para que isto tudo funciona, tem que finalmente colocar o script como executável:

ruben@aioros:~/scripts$ chmod +x makeDaillyVideo.sh

Para por o script em funcionamento de 24h em 24h, basta copia-lo para pasta /etc/cron.daily :P


Sem comentário, seja o primeiro! | Publicado por Ruben Alves @ 13/03/08 14:17
Escrever um comentário ao texto: "Home.Security"
Nome*:
E-mail*:
Página web
(não obrigatório):
"Quanto dá dez mais Catorze"
(Resposta: 20,22 ou 24?)*:
Mensagem*:


  ÚLTIMO MÊS: Agosto 2011

  Sobre.Pessoas.pt (21/08/11)
  Pensamento.dia.em.pleno.Agosto.pt (18/08/11)
  E foi assim que... (18/08/11)
  Julho.em.Imagens.2011 (18/08/11)

  TEXTOS EM ALTA!

  iPhone5 - my predictions.com (07/03/11)
  parvo.que.sou.pt (22/02/11)
  2G,3G,4G e agora 5G! (08/02/11)
  Novo.Projecto:Pedra-alta.com (01/02/11)
  website.updates-status-v1.pt (30/01/11)



FOTOGRAFIA ALEATÓRIA: Aquecimento Global

Aquecimento Global

Ruben... Quem sou? Nascido em Novembro de 1980, Sagitáriano puro e duro com ascendente Aquário. Sou canhoto, adoro arte, computadores, fotografia, redes, programação, design, música. Odeio futebol, bacalhau e injustiça.

Neste momento sou um Jovem de 30 anos, curioso pela vida, curioso por tudo o que mexe, tudo que respira, que faça ruídos. Encanto-me facilmente com uma gota de água a bater no vidro mas não fico impressionado com um Ferrari. Gosto das coisas simples da vida, um olhar, um sorriso, um simples gesto. Adoro amar, como gosto de ser amado. Não troco o meu leitor DVD por uma PlayStation, no entanto trocaria um filme por uma bela fotografia.

Não sou complexo, apenas perplexo... tudo depende do ponto de vista.

[...] Farto de escrever... | pausa II

~~~


No meio de tudo isto, tenho este lugar cibernético. Um recanto pontualmente actualizado, apontado como um blog, mantenho a minha ideia que antes de ter esta pretensão, considero que é antes de mais nada um simples sítio web onde escrevo, descrevo, apresento, coloco perguntas, dúvidas e afirmações. Com os textos, coabitem vários espaços representativos do meu Espaço.

Talvez seja o lugar mais sensato para me conhecer... Ou pelo menos, iniciar-se nesta longa viagem que é o meu Ser...
[...] Farto de escrever..| stop .

Correio.electrónico:
mail AT ruben-alves PONTO com

Telefone:
919.181.***

A minha Página no Twitter.


creative commons