Tag Archives: mplayer

Converting videos to n800

southpark running on Nokia n800

I found this useful tip about how to convert videos to watch on Nokia n800 using Mencoder.

mencoder input.ogg -vf scale=400:240 -oac mp3lame -ovc lavc -o output.avi

It’s converts a filed called input.ogg to a avi file output.avi with height 240 and width 400 (the device resolution is 800×480) , mp3lame audio codec and libavcodec video.

As this has become a daily operation to me, I create this simple script called 2n800:

#!/bin/sh
if [ $# -ge 1 ];
then
        mencoder $1 -vf scale=400:240 -oac mp3lame -ovc lavc -o ${1%\.*}.avi
else
        echo Usage:
        echo "\t$0 FILE"
fi

It transforms the first parameter like something.flv to something.avi. Putting this script as executable on your path like on /usr/bin/ you can easily call the command 2n800 followed with tha name of your video you want to convert. If is readable by Mplayer, it will be converted.

After you converted you video and sent to your n800, you can watch on Mplayer to Maemo. The result is perfect.

Camera nova e fazendo ela trabalhar bem com o Cinelerra

A um tempo atrás eu comprei uma câmera nova pra mim.

Como eu não quero posso comprar uma câmera boa mesmo agora eu preferi comprar uma bem barata que fizesse o básico. Uma câmera de preço médio iria ter poucas funções e eu iria ficar pensando —  se eu tivesse comprado aquela outra. Além disso uma câmera custa um pouco mais trás também um maior zelo e o meu zelo é muito limitado e eu já gasto com outras coisas. Ou seja, cheguei a conclusão que pra mim o ideal seria uma câmera barata que pudesse estar absolutamente sempre comigo, esteja eu a pé, de ônibus ou de carro. Assim eu posso tirar muitas, muitas fotos, já que o meu fim principal pra ela é a documentação de eventos e atividades e não um trabalho artístico.

oregon scientific

Dentro disso e uma certa urgência em voltar a tirar fotos (Campus Party de 2009 chegando) eu comprei nas Americanas (a loja mesmo, não a ponto-com) uma Oregon Scientific (nome estranho) de 5.0 Megapixels com um cartão de 1Gb, por R$ 200.  Ela é bem básica pra fotos já que não tem zoom optico e não se dá bem com movimentos mas a qualidade da gravação dos vídeos, inclusive com aúdio me surpreendeu.

laboratório de metareciclagem
Uma típica foto com ela. Essa em um telecentro da Casa Brasil.

#cparty
Um macro de um robô do ITA durante o Campus Party

Erámos felizes até eu começar a fazer meus primeiros experimentos com os vídeos dela com o Cinelerra (software que eu ainda engatinho).

O vídeo tudo bem mas o aúdio dos vídeos dela (uns arquivos AVI com vídeo codificado e áudio cru) ficavam bichados no Cinelerra mas tocavam bem no Mplayer ou outros tocadores. Como o vídeo estava legal eu só precisava extrair os audios por fora que aí eu podia colocar eles como uma trilha de aúdio do Cinelerra e problema resolvido. O problema é que sempre que eu ia extrair esse aúdio dava algum problema. A solução veio em uma thread da lista de usuários do Mencoder usando a dupla Mplayer e Sox:

mplayer -vc null -vo null -ao pcm video_da_camera.AVI
sox audiodump.wav -i -b -r 48000 -c 2 audio_do_video.wav

No caso eu estou usando a taxa de amostragem em 48kHz e dois canais de áudio (stereo) para ficar compatível com outros formatos que eu estou usando no Cinelerra.

Pronto, voltamos a ser felizes juntos, eu, a câmera e o Cinelerra.

Câmera Microdia no Ubuntu 8.04

Eu já havia postando anteriormente como fazer funcionar câmeras Microdia usando um driver proprietário e cheio de restrições. Boas novas. Agora desenvolvedores se uniram para construir um driver livre para essa série de câmeras e o driver livre já está bem melhor que o proprietário!

Câmera integrada

Antes de mais nada, nesse post eu estou usando o Ubuntu 8.04, seguindo de perto os passos do blog de Indra Gunawan, um notebook Amazon PC FL 31, a minha câmera é essa da foto acima e ela é lista em um lsusb como:

Bus 005 Device 002: ID 0c45:624f Microdia

Os números 0c45: já indicam que essa é uma câmera Microdia. No momento em que eu escrevo, o driver livre suporta as câmeras Microdias 6242, 624e, 624f, 6270, 627b, 62bb, 145f:013d e 045e:00f4. Para uma lista mais atualizada dê uma olhada no site oficial do driver livre.

Então o primeiro passo é você abrir um terminal e dar um lsusb e observar a saída. Outra coisa importante para você saber é a versão do seu Kernel. Dê um uname -a no terminal e observe a saída. Essa é a minha:

2.6.24-16-generic

Se essa não é sua versão do Kernel, não há alarde, é possível que também funcione com você, mesmo se com outra versão do Kernel ou mesmo outro sabor de Linux.

Vamos precisar de alguns pacotes adicionais, use o seu gerenciador de pacotes (no meu caso o APT) para instalar alguns pacotes que vamos precisar. A partir daqui você precisará estar logado como root.

apt-get install git-core gitk git-gui git-doc curl ctags build-essential

Se você também quiser compilar a documentação do driver, adicione o doxygen à lista. Agora baixamos a última versão do driver usando o git. De preferencia execute esse comando no seu diretório home, pois ele vai criar um diretório microdia que você pode querer preservar.

git clone http://repo.or.cz/r/microdia.git

Se você não recebeu nenhuam mensagem de erro e todo o código-fonte foi baixado, entre no diretório microdia e simplesmente digite:

make

Se tudo deu certo o código-fonte será compilado e você encontrará entre outras coisas um arquivo microdia.ko. Se você teve algum erro, provavelmente foi por algum pacote que você não tinha, baixe esse pacote tente compilar novamente.

Vamos carregar o módulo, como root:

modprobe videodev
insmod microdia.ko

Depois disso, dê um dmesg |grep Microdia -i.

[   39.799824] microdia: Microdia USB2.0 webcam driver startup
[   39.799873] microdia: Microdia USB2.0 Webcam – Product ID 624F.
[   39.799876] microdia: Release: 0100
[   39.799878] microdia: Number of interfaces : 1
[   39.801100] microdia: Microdia USB2.0 Camera is now controlling video device /dev/video0
[   39.801133] usbcore: registered new interface driver usb_microdia_driver
[   39.801138] microdia: v0.0.0 : Microdia USB Video Camera

Se você teve uma saída assim, então as coisas vão indo bem. Você já pode testar sua câmera. Você pode usar um software específico para isso como o Camorama ou usar o próprio Mplayer:

mplayer tv:// -tv driver=v4l:width=640:height=480:device=/dev/video0 -vo x11

Eu sugiro testar primeiro o Camorama porque esses parâmetros do Mplayer funcionam comigo e eu não posso garantir que vão funcionar também com a sua câmera. Principalmente, por conta da resolução que eu usei.

Mas não vá embora agora, quando você reiniciar o computador tudo isso vai pelo espaço. Vamos fazer para que esse módulo seja carregado sempre que você ligar o computador. Vamos cópiar o arquivo .ko para o diretório de módulos do kernel.

cp microdia.ko /lib/modules/`uname -r`/kernel/drivers/media/video/usbvideo/

Se você executou a algusn passos atrás o insmod, então limpe o driver da memória com um rmmod microdia. Agora rode depmod -a para gerar um novo modules.dep e mapear os arquivos no diretório de módulos.

Para terminar, adicione o módulo ao kernel com um

modprobe microdia

Agora o módulo vai ser carregado sempre que você iniciar o computador.

Agora alguns outros e brincadeiras úteis para você fazer com sua webcam. :-D

Espelho: muito útil no dia-a-dia, vale a pena criar um atalho na barra de tarefas ou no seu Desktop. Para usar o Mplayer como um espelho:

mplayer tv:// -tv driver=v4l:device=/dev/video0:width=640:height=480:noaudio -x 800 -y 600 -vf-add pp=hb:a/vb:a,hqdn3d,mirror

Effectv: O effectv é o melhor brinquedo para quem tem uma webcam. E agora ele já está disponível nos repositórios do Ubuntu:

apt-get install effectv

Para usa-lo, aqui eu chamo assim:

effectv -device /dev/video0 -size 640×480

Use as teclas para baixo ou para cima para mudar os efeitos. A tecla espaço reseta o efeito. As teclas numéricas acionam variações. Tab inverte horizontalmente, como em um espelho. Aqui alguns efeitos legais.

Edgeblurtv

HolographicTv

OpTv

SimuraTv

MatrixTv