Categories
Uncategorized

Cidades que já visitei

Seguindo a idéia do Rickbit, fui montar o mapa das cidades que já visitei. Acrescentei também as cidades onde ja morei em destaque e fiz comentários pra cada cidade…

Faça também o seu mapinha de cidades e compartilhe com seus amigos… É divertido…

girino 12:28, 4 Março 2008 (BRT)

Categories
Uncategorized

2008 February 01 15:50:49 BRST

o maior terrorista poético do Brasil

Categories
Uncategorized

E eu lá sei editar vídeo?

Como sempre, tudo começa com a lilica!

O adestrador da Lilica me pediu se eu não conseguia editar uns vídeos pra ele colocar no site dele. Mas dessa vez ele não queria “o de sempre”, mas algo mais sofisticado. Uns detalhezinhos a mais… É que andaram “roubando” [1] uns vídeos e fotos dele, editando pra retirar onde ele aparecia e usando na divulgação de outros adestradores. Ele queria então uma coisa simples: Colocar o nome dele no vídeo!

Err… pode até ser simples pra alguém com um mac ou com um 3d studio da vida… Mas no meu Ubuntu veio de guerra? Putz, tou lascado!

Bom, fui caminhando pelas pedras onde ja tinha trilhado… Comecei com o Avidemux, velho conhecido! Mas aí notei uma coisa, que não tinha notado da última vez: ele corta o final do áudio!!! sério, pergo uns 3 frames do áudio! Num vídeo sozinho, beleza, o final não serve pra nada mesmo. Mas quando faço edição e junto os vídeos, aí de mim. Fica tudo sambado, faltando pedaço.

Mas tudo tem solução… Eu me rendi à linha de comando, com o:

ffmpeg

Na verdade, tudo começa ANTES do ffmpeg :). Começa com o cat 🙂 sério! Descobri que juntar vídeos no formato AVI é a coisa mais ridícula do mundo! Basta um:

$ cat video1.avi video2.avi > video_nosync.avi

Err… Mas nem tanto né? tinha de ter um porem! Quando a gente faz isso, os players so reconhecem (e só tocam) o primeiro vídeo. Os outros ficam perdidos no arquivão. Então, seus problemas se acabaram-se, basta usar o super-ultra-power-legalzinho…

mencoder

Que nada mais é que o mplayer rodado na linha de comando. Ele sabe como re-indexar os AVIs pra que a emenda funcione melhor que o soneto 😉 basta um:

$ mencoder -forceidx -ovc copy -oac copy video_nosync.avi -o video_sync.avi

e seu video agora está magicamente unido e com os indices ressincronizados[2].

Aí, nesse ponto, eu voltava pro avidemux, inseria uma legenda gambiarrada (criava um arquivo SRT com uma única entrada que durava mais que o tempo do vídeo e manda inserir legenda). CLARO que o som sambava, então eu usava o ffmpeg pra reinserir o som do arquivo original, enfim uma gambiarra só. Além do que, ficava muito ruinzinho, aquela “legenda” com o nome do adestrador.

Mas é claro que tinha jeito melhor! Descobri que o ffmpeg pode usar umas bibliotecas chamadas vhook, e uma delas se chama magicamente:

watermark.so

Simmmmm!!! Marca d’água!!! E la vamos nós descobrir como usar!

Procura de lá, procura de cá! No final a única documentação que descobri foi, pasmem, os comentários do próprio código fonte (ê maldito mundo open source que abriga pessoais tais!). Enfim, descobri o que queria: Basta manter o fundo num tom de cinza assim:           [3]. Aí, o que for mais escuro que isso, ele “escurece” no vídeo, e o que for mais claro, ele clareia[4].

De posse das informações, lancei mão do querido e amado…

Gimp

Sim, o photoshop dos pobres e oprimidos, do governo Lulla e de quem mais for comunista, hippie sujo ou coisa que o valha! Pois então. Fui logo fazendo firula e inventando moda: Uma marca d’água em 3D ia ficar supimpa[5]. Pois então lancei mão de TODOS meus conhecimentos de Gimp! Mas foi fácil:

Primeiro, criei uma nova imagem do tamanh odo meu vídeo (640×480, no caso). Usando o baldinho de tinta derramado, pintei o fundo com o cinza #808080 lá de cima. Depois criei uma camada de texto (basta clicar na letrinha “A” na barra de ferramentas), e fui ajustando o tamanh oda fonte até ocupar bem a tela. Ajustei a posição do texto na tela (tem uma ferramentinha bacana ali na barrinha também que centraliza tudo pra nois, chamada Alignment tool, cujo qual o ícone é um quadradim com umas setas saindo em todas as direções.

Pode fazer a besteira que quiser com as letrinhas, A única coisa muito, mas muito importante, é de colorir elas de cinza! E adivinha qual??? O famoso cinza #808080 ;).

Agora sim, vamos no menu de “Filters”, depois em “Distorts” e por fim “Emboss”. Esse carinha é que vai dar o nosso efeito 3D. Ajuste seu “Emboss” a vontade. Eu pessoalmente usei os valores:

Azimuth 30.00
Elevation 40.00
Depth 3

Depois, pra dar um jeitinho de ficar mais transparente, eu ajusto o brilho e o contraste das letras, no menu Colors. No meu caso, eu usei um brilho de 50 e um contraste de -40. O lance é simples: quanto menor o contraste, mais transparente, e quanto maior o brilho, melhor aparecem as letras quando a cena do vídeo fica escura. Se quiser, dê uma brincada com os valores e escolha os que forem melhores pro seu vídeo.

Salve seu arquivo como GIF e parta pra usr, finalmente, o

ffmpeg

O lance todo é que eu ralei pra aprender a usar esse bicho, lendo man, vendo exemplos na internet etc e tal! E ficou até fácil: De posse do vídeo completo

video.avi

e do gif da marca d’água

logo.gif

, basta um simples comando:

$ ffmpeg -i video.avi -vhook '/usr/lib/vhook/watermark.so -f logo.gif' video_final.avi

Opa! Perai caceta!

Esse vídeo aí vai ficar comprimido com os valores “default” e vai ficar ruim pra cacete. Vamos melhorar essa situação. Eu gosto de alterar o fator de qualidade dele, e forçar o uso de mpeg4 (Divx, para os íntimos). Além disso, gosto do meu som em mp2 (o ffmpeg não comprime em mp3, pelo menos não no meu ubuntu) e com 128kbps. Então eu tasco logo assim:

$ ffmpeg -i video.avi -vhook '/usr/lib/vhook/watermark.so -f logo.gif' 
         -vcodec mpeg4 -qmax 6 -acodec mp2 -ab 128 video_final.avi

Cara, isso tá quase perfeito! Só falta uma coisinha atoa pra ficar demais:

Trilha Sonora

Atenção:

Muito cuidado com a trilha sonora pois invariavelmente ela estará protegida por direitos autorais.

Isso mesmo! Cuidado com a trilha! Para uso pessoal, não comercial, a lei permite que você copie pequenos trechos de uma obra (e isso inclui a música, assim como qualquer coisa!), mas para uso comercial ou trechos grandes são proibidíssimos de serem copiados.

Trocando em miúdos: copiar 30 segundos de uma música para incluir no vídeo do batizado do seu filho pode! Copiar a música inteira num vídeo que será vendido, não pode NEM FODENO[6]! Qualquer coisa entre um e outro, use o bom senso. Se a música tem só 30 segundos, aí não rola de copiar 29 segundos dela, né?

Enfim, de posse do seu bom senso ou do telefone do seu advogado, escolha a música a ser usada. Eu vou escolher uma música que seja livre ou em domínio público, pra não me dar mal nesse exemplo 😉

Hum.. achei no domínio público umas músicas em domínio público (duh!). Vou usar uma clássica que vocês logo vão reconhecer 😉 E como está em domínio público eu nem mesmo preciso dizer quem é o autor, olha que maravilha 🙂[7]

Então de posse da música, só o que preciso é mixá-la com o som original. Pra isso eu uso o audacity, que é um editor de audio muito do bão :). Mas antes, claro, extrair a trilha de audio do nosso vídeo original. Pra isso, claro, ffmpeg to the rescue:

$ ffmpeg -i video_final.avi -vn -acodec copy saida.mp2

Agora a gente abre os dois audios com o audacity (ele tem interface gráfica, viu? Abrir significa tão somente ir no menu “File” e dar “Open”), mixe os dois sons[8] e salve num novo arquivo! A idéia é copiar da trilha sonora um trecho com o tamanho exato do audio original do vídeo. Eu gosto de dar um ganho de -10dB[9] para o audio original, assim a trilha sobressai sem esconder todo o som. Algumas coisas que podem ser necessárias: reduzir o numero de canais (de estéreo pra mono), alterar o “sample rate” dos dois audios para ficarem iguais (use 48000 ou 44100 que são valores “padrão”) e por fim mixar mesmo!

Depois de devidamente mixada (e com o tamanho certo do video), basta trocar a trilha de audio do video original:

$ ffmpeg -i audio_com_trilha.mp3 -i video_final.avi -acodec copy -vcodec copy video_com_trilha.avi

E com isso podemos…

Juntar tudo

e fazer mais um belíssimo vídeo da Lilica. O vídeo vocês já conhecem, do youtube (e quem não conhece ainda vai conhecer), mas agora ele vai ser garibado com marca d’água e trilha sonora! Então vamos lá:

Primeira coisa que fiz foi preparar minha marca d’água. É essa daqui ó:

marca d'água

marca d’água

Depois, juntar os vídeos… Ops… esqueci! Os vídeos estão em MPG e preciso passar eles pra avi antes de juntar… Então vamos lá:

$ for file in *.MPG; do ffmpeg -i $file -acodec copy -vcodec copy -f avi ${file%.*}.avi; done

Aí sim posso juntá-los:

$ cat MOV0036*.avi > tmp_unsync.avi
$ mencoder -forceidx -ovc copy -oac copy tmp_unsync.avi -o tmp_sync.avi

Preparar a trilha sonora é à parte, então vamos extrair o audio:

$ ffmpeg -i tmp_sync.avi -acodec copy -f wav audio_orig.wav

que depois de editado no audacity virou

audio_final.wav

.

E fazer a grande cartada que é juntar tudo (som, vídeo e marca d’água) de uma vez só:

$ ffmpeg -i audio_final.wav -i tmp_sync.avi 
         -vhook '/usr/lib/vhook/watermark.so -f watermark.gif' 
         -vcodec mpeg4 -qmax 6 -acodec mp2 video_final.avi

Et voilá! O resultado final, aqui no youtube (ou disponível pra download no meu site http://www.girino.org/tutorial_video):

Resultado final, que tal?

Notas

  1. ? Na verdade o termo correto seria violação de propriedade intelectual e do direito de imagem, mas vá lá.. se Até a RIAA fala que é roubo, porque eu não posso 😉
  2. ? Seja lá o que isso for…
  3. ? Pra quem não sacou é a cor #808080, em código de cores do HTML. Ou seja, intensidade 128 em todos os bytes de cor RGB. Mais mastigadinh oque isso eu nem sei explicar!
  4. ? Em termos mais técnicos ele soma os valores dos pixels (Ou será que o plural de píxel é píxeis? Vai saber…) em cada frame com a diferença entre o pixel correspondente da imagem e o valor RGB 0x808080
  5. ? eita gíria véia…
  6. ? segundo o adestrador isso é gíria de mineiro…
  7. ? No domínio público essa música está em formato midi e eu usei o timidity pra transformá-la em um formato que o ffmpeg reconheça…
  8. ? Vou ficar devendo essa, fica pra outra aulinha!
  9. ? na verdade uma atenuação, mas vá lá…

girino 23:14, 24 Janeiro 2008 (BRST)

Categories
Uncategorized

Wordlists, hackintosh e coisas diversas…

Terminei o ano de 2007 com 400 a 500 acessos diários. Comecei 2008 com cerca de 50. Motivo? Exclui minhas wordlists do google usando o robots.txt[1] e as ferramentas do google para webmasters.

Alguém poderia argumentar que mais hits são melhores pra mim, mas meu site “vive” de propaganda e o download direto de um arquivo não traz nenhum lucro, e gasta minha banda. E minha motivação pra ter o site não é econômica (“lucrei” apenas uns 50 reais nesses 9 meses de site), é prática: tenho controle total sobre meu site pessoal, posso fazer dele o que bem entender. Poderia ter um blog aqui, um fotolog acolá, uma wiki sei-la onde. Mas não quero, quero controle das minhas coisas, dá licença?

Quando a gente põe alguma coisa na web, um blog, fotos, etc, a gente quer é reconhecimento. E as wordlists não tem nem mesmo uma referência ao meu nome, meu site, nada! Procuravam no google, baixavam a wordlist, e nem descobriam que eu existia.

Em resumo, eu gastava banda e não ganhava nada em troca. Tirei do google, tenho menos acesso, mas pelo menos as buscas no google que retornam meu site ficaram mais fáceis de monitorar, e posso continuar distribuindo as wordlists pra quem REALMENTE precisa de uma.

E pro isso, resolvei aumentar minhas wordlists:

Wordlists com a wikipedia

Sim, isso mesmo. Usei o banco de dados da Wikipedia pra gerar wordlists novas. Ficaram gigantescas. A wordlist em português[2] tem quase 2 milhões de palavras. A wordlist em inglês[2] tem uma ordem de grandeza a mais. Comparado com minhas wordlists bobinhas antigas, são monstrengos enormes. MAs tenho algumas idéias pra fazer no futuro (se não for mais um projeto que eu vou abandonar, claro):

  • Contar a freqüência das palavras e fazer wordlists menores com as palavras mais frequentes.
  • Fazer wordlists a partir de blogs, sites de notícias e sites de relacionamentos.

Porque desse último? Porque a linguagem da wikipedia é bem mais “formal” que a linguagem usada no dia a dia da internet. E se alguém quer uma wordlist, sabemos todos pra que é: avaliar segurança de senhas (ou quebrar senhas mesmo, vá lá). Senhas tem maior probabilidade de serem encontradas na linguagem do dia a dia do que na linguagem formal da wikipedia. Alias, nas 3 senhas aqui de casa (minha, da Anita e da minha mãe) a wordlist da wikipedia em portugûes não achou nenhuma. Tenho certeza que com uma baseada em blogs o resultado seria bem diferente.

Mas claro que eu interrompi o trabalho no meio proque surgiu algo mais interessante pra fazer:

Meu Hackintosh

Pra quem não sabe, MacOSX é o sistema operacional mais metrosexual do mundo. E como bom metrosexual, ele é altamente seletivo: só roda em computadores da Apple. Só em computadores da Apple? Não! Uma pequena tribo de gauleses… err… estória errada… Não! Tudo que é proteção desse tipo está fadada a cair nas mãos dos piratas[3]. E dessa vez não foi diferente: o OSX ganhou o osx86, que é um patch pra rodar osx em qualquer micro x86.

Como eu tinha em minhas mãos um DVD de instalação do macos, resolvi experimentar. Preparei tudo segundo os tutoriais e quando tudo estava pronto, bootei meu lindo e maravilhoso OSX recém instalado! Mas… hum.. infelizmente… nem tudo funcionou! A rede por exemplo não foi reconhecida nem com os drivers mais novos! O vídeo, por outro lado, funcionou, porque o OSX tem suporte a VESA. Só que… apenas na resolução de 1024×768. E meu monitor é widescreen! Resultado: tudo deformado. Briguei durante um tempão com o vídeo, e nada! Por fim, desisti. Já estava com a intenção de trocar minha placa de vídeo, que não tem suporte 3D no Linux, por uma melhorzinha. Agora tenho mais um motivo: fazer o hackintosh ficar bonitinho!

A rede eu resolvi fácil: desmontei um micro velho e “ranquei” a placa 3com que tinha nele. Rebootei o hackintosh e… voila! reconheceu NA HORA! já entrei navegando. E o bicho é bonitinho mesmo! Os icones pulando[4], o arco-iris giratório[5], as telas se contorcendo pra minimizar[6]. Tudo muito bacana. Os softwares com uma aparência impecável. Nada do visual “pesado” do windows (principalmente do vista, que parece que precisam abusar dos recursos da máquina pra dizer que o negócio presta). Tudo com aparência leve e desimpedida[7]. Gen-te… A-MEI!!!. Sério, dá pra notar a diferença no enfoque. Parece que levam o KISS a sério, sem abrir mão do design.

Enfim, fiquei satisfeito com o resultado. Quando tiver “tempo” ($$$) pretendo investir numa nova placa de vídeo que seja suportada pelo bichinho e ver como fica com uma resolução decente. Quem sabe no futuro até compre um mac[8]. Além do que, o Muriloq postou no blogue dele um videozinho do linux embirobando que nem o OSX que me deu água na boca: será que consigo o melhor de dois mundos? Um SO aberto e flexível que seja biíto ingual macos? Veremos, veremos, fica pra outra estória num outro “senta que lá vem a estória”.

Notas

  1. ? Mais informações de como fazer isso em robots.txt
  2. ? 2,0 2,1 Quer dizer, tem um monte de palavras extrangeiras no meio tanto da em português quanto da em inglês. É que na wikipédia tem os tais interwikis que referenciam outras wikipedias. Além é claro de palavras estrangeiras usadas no meio dos textos e em citações.
  3. ? espero que entendam que quando digo piratas estou sendo irônico! Sou totalmente a favor e apoio a galera que faz engenharia reversa em hardware e disponibiliza meios totalmente legais de se instalar um software em outra plataforma.
  4. ? gay!
  5. ? GAY!
  6. ? GAAAAAYYYYYYYYY!!!!!!!!!!
  7. ? BOIOLA, PEROBA, VIAAAAADDDDDDDOOOOOOO mesmo!!!!
  8. ?Carol?

girino 16:19, 7 Janeiro 2008 (BRST)

Categories
Uncategorized

Fedora 8: First Impressions

Não lembro mesmo onde vi, acho que no Slashdot, Digg ou algum lugar assim. Era um comentário sobre o Fedora 8 ser melhor que o Ubuntu. Curioso, resolvi experimentar. Baixei primeiro os live cds, e depois o DVD de instalação. Instalei, claro numa máquina virtual (tou usando VirtualBox depois que eu descobri. Apesar de menos completo que o vmware, é mais user friendly e é open source, o que me deixa tendencioso a usá-lo 🙂 Anyway,aqui vão minhas primeiras impressões:

Instalação default (Gnome)

  • Comparando com o Ubuntu 7.10 (que é o que eu estou acostumado) achei mais pesado, mas usável numa máquina moderna.A inicialização demora mais, e a coisa toda parece mais carregada. Comparando o tamanho dos HDs nas máquinas virtuais, vejo que ocupa mais espaço também (4.5Gb contra 3.5Gb do ubuntu). O sistema de atualizações/instalação de pacotes é mais lento, mas nada que atrapalhe demais. De resto, está muito bom. No mesmo nível do ubuntu. A tela de login, alias, é mil vezes mais bonitinha. Kudos pro Fedora (mas ainda não me fez sair do ubuntu não). Tem um porém de “purismo”. No Ubuntu é muito mais fácil instalar softwares proprietários. O Fedora te implora pra usar Ogg/Vorbis no lugar de MP3, mas no final deixa você fazer o que quer. O sistema de instalador do debian (apt-get, que é o padrão do ubuntu) também é mais flexível pra quem é fuçador.
feature Fedora 8 ou Ubuntu 7.10 comentário
Instalador pau a pau, com ligeira vantagem pro ubuntu O fedora começa com uma tela de texto (curses) pra depois entrar em modo gráfico. O Ubuntu cai no modo gráfico direto.
“peso” do sistema ligeira vantagem pro Ubuntu Não testei em uma máquina antiga, mas o Ubuntu ficou mais leve na VM que eu usei. Ocupou também menos espaço em disco.
Tela de login Fedora, de longe! A tela de login do Ubuntu é “unix like” demais. A do Fedora é bem bonitinha, já com a lista de usuários (que no ubuntu precisa ser habilitada depois) e num quadrinho azul bem desenhado, com fontes e icones bacanas.
Sistema de atualizações Ubuntu I just love Debian/apt-get ;). Não me conformo com o apt-get não ser o padrão em todos os linuxes 😉
codecs, drivers proprietários, etc ligeira vantagem pro ubuntu Porque é menos burocrático

Só que o Fedora não é só Gnome! Então resolvi comparar o KDE com o Kubuntu:

Instalação KDE

Na verdade, não é uma nova instalação. Basta habilitar o KDE no instalador de pacotes e boas. Tudo se instala (o ubuntu tem os pacotes do kubuntu, mas nesse ponto ele é realmente mais burocrático. Ponto pro Fedora). Instalei em português, porque uma coisa que tinha notado na casa da minha sogra é que o kubuntu em português CHUPA TEMPO GRANDE, cheio de partes mal traduzidas e erros de tradução. Fiquei Satisfeitíssimo! Tradução muito boa e completa. Não vi ainda nenhuma frase em inglês. Kudos triplos pro Fedora. Também fiquei satisfeito de não ver a mistureba Gnome/KDE que é o kubuntu. Dependendo do que se instala o synaptic aparece no meio dos menus do KDE. Enfim, o atualizador/instalador do Fedora é melhor integrado com o KDE.

Pra mim, sinceramente, nesse quesito não precisa d etabela comparativa: Fedora é MUITO MELHOR que o kubuntu. Lembrando, claro, que é mais pesado, logo não recomendo pra computadores antigos. Mas nesses eu provavelmente iria com uma distro baseada em Xfce, como o Xubuntu. Alias, não avaliei o fedora com Xfce, mas pra ser imparcial teria de reinstalar APENAS com o xfce e ver se fica pesado.

Alguém sabe se existe um jeito de simular uma maquina “mais lenta” com vmware, VirtualBox ou similar?

girino 16:05, 1 Janeiro 2008 (BRST)

Categories
Uncategorized

Coisas que precisam ser blogadas com urgência

Tava hoje fuçando as estatísticas de acesso no meu site (que quadruplicaram desde o dia 18 de dezembro, não sei porque) e achei no meio das string de buscas mais usadas:

  • nes fores speed grodd ground

Se tem algúem com a MANHA total de inglÊs é ocara que procurou por este jogo no meu site[1].

Notas

  1. ? o cara deveria estar buscando Need for Speed Underground.

girino 15:38, 24 Dezembro 2007 (BRST)

Update

Mais coisas estronhas:

  • orgonograma da empresa representado por passaros cagando
  • escoteiro viadim
  • horrorosa mocreia apavorante gordurosa parece mais um elefante
  • dablio dablio dablio ponto baixaki ponto com ponto be eri
Categories
Uncategorized

Sonho Esquisito

Putz,

Hoje a noite tive um sonho esquisitíssimo! Sonhei que:

Minha irmã quer entrar pra legião estrangeira

Vou contando o que me lembro…

Começou num piquenique, estávamos num campo de gramíneas meio ressecadas e arbustos retorcidos, bromélias, etc. O chão era meio rochoso e acidentado, tinha várias colinas. Se fosse pra chutar, chutaria aquelas paisagens bucólicas das regiões mediterrâneas. Dado o resto do sonho, chuto ser no sul da França… E minha irmã deixa cair um folheto da pasta dela. Curioso, fui ver o que era, e falava de provas e testes, pensei logo que era um vestibular. Mas ela logo me mostrou os homens fortinhos de uniforme militar camuflado e me disse:

Daí a pouco me vi conversando com uma instrutora/personal trainer que tínhamos contratado pra treinar minha irmã pra prova da legião. Ela me fazia perguntas cabulosas, como se eu tivesse autoridade pra decidir sobre a vida da minha irmã. Perguntou se era pra fazer o treinamento com água ou sem água (e nisso se seguiu uma longa discussão sobre os efeitos de tomar água durante o treinamento físico e se ela deve ser gelada ou não, mas não lembro bem dos detalhes), tempo de treinamento, tipo de treinamento, se era pra fazer preparação psicológica, se era pra fazer preparação pras provas teóricas (esse eu lembro de dizer que não precisava, que o fraco dela era a parte física mesmo).

No final, paramos na porta do quartel/centro de recrutamento da legião onde vários recrutas entravam para se inscrever e fazer os testes. Ali encontramos minha irmã, que não estava presente desde o momento do piquenique. E começamos a contar pra ela sobre o que discutíamos. Conversamos em francês com alguns recrutas, mas minha irmã ficou calada. Eu insisti pra ela falar em francês porque adorava o sotaque do sul da França que ela tinha[1], mas ela insistia em ficar calada. Acho que meu subconciente sabia que não conseguiria reproduzir corretamente o sotaque dela, por isso não deixou ela falar!

Acho que o sonho terminou aí mesmo, porque me virei de lado e a Lilica estava na cama, e eu espremi ela e ela esperneou e me acordou. Mas fica o registro do sonho esquisito onde minha irmã decide entrar pra legião estrangeira.

Ponderações soltas

  • Algumas semanas atrás eu conversei sobre a legião com o adestrador da Lilica,. Quando jovem ele pensou em se alistar, mas acabou optando por ficar na PM mesmo. (Ele não durou muito na PM porque não deixaram ele trabalhar com cães, que sempre foi a especialidade dele. Ele acabou virando adestrador como particular mesmo. Hoje ele é dos mais antigos adestradores de Brasília e a maioria dos adestradores mais novos fez curso ou treinamento com ele).
  • Eu andei pesquisando sobre a legião na internet mais ou menos na mesma época, isso tudo deve ter acumulado no meu subconciente.
  • Minha irmã me chamou ontem no MSN e eu estava offline.
  • A personal trainer parecia com a Lila, da maracujá, só que vestida com roupa militar camuflada.
  • Eu lembro de durante o sonho ter comentado sobre o salário do legionário ser de 2 mil euros, mas na verdade é de 1205 euros, podendo chegar a 3567 se for enviado em missões fixas no estrangeiro[2].
  • A Sede da legião hoje em dia fica em Aubagne, no sul da frança. Meu subconciente deveria se lembrar disso e por isso escolheu a paisagem mediterrânea. Acabei de descobrir que em Aubagne é só o quartel general. O centro de recrutamento, que é onde deveríamos estar fica em Nogent-sur-Marne, na região parisiense.

Notas

  1. ? Ela morou em Toulouse quando criança, por isso tem um sotaque bem diferente do meu que é de voyou de banlieue parisienne.
  2. ? salários da legião estrangeira

girino 11:09, 20 Dezembro 2007 (BRST)

Categories
Uncategorized

ECMAScript, Avidemux e vídeos da Lilica

Mais uma vez a Lilica fez showzinho nesse sábado. Mas sabe como é? Colocar dúzias de filminhos de 30 segundos no seuTubo é um porre, e no final ninguém vê nenhum deles. (eu ia por o vídeo no final, mas como tem um script enoooooooorme por lá, ninguém ia ver, então resolvi por ele aqui mesmo):

Vídeo da apresentação da Lilica com os comandos mais “legais”.

Resolvi então “brincar” de editar os vídeos, pra fazer um videozão resumo do show todo que ficasse mais bacana. Mas que ferramenta usar????

Avidemux

Bom, de cara eu pensei no avidemux. É que tempos atrás quando procurei por um jeito de embutir legendas em vídeos no linux, eu acabei me deparando com ele (no windows eu usava o virtualdub, mas como meu notebook foi doado e eu não uso software pirata, agora estou usando o ubuntu em casa). Quem conhece o virtualdub vai gostar: é praticamente a mesma coisa, só que com uma interface mais amigável. E parece que existe pra windows também.

Em termos de funcionalidades, não chega a ser o bambambam, mas faz quase tudo. Claro que nada é de graça! Dá uma trabalheira fazer qualquer coisa nele. Mas ontem, nessa mexida toda, descobri uma coisa fantástica: Dá pra fazer scripts em ECMAScript que automatizam todo o processo de edição de vídeos!

ECMAScript

ECMAScript, pra quem não sabe, é o famoso Javascript. Quer dizer, quando roda dentro de um browser da Netscape, chama Javascript. Quando roda no IE, chama JScript, e quando roda em qualquer outro lugar chama ECMAScript. Mas é a mesma porcaria!

Scripts pro avidemux são super simples (as opções são bem limitadas) e o único inconveniente que eu achei é que eu tenho de saber o número de frames de cada arquivo com antecedência. Deve ter outro jeito, mas não achei :(. Quem quiser aprender, tem um tutorialzinho bacana em http://www.avidemux.org/admWiki/index.php?title=Scripting_tutorial.

A única coisa chata são os codecs, que pedem uns parâmetros em formatos estronhos! Mas consegui uma manha pra configurá-los: Eu crio um projeto “dummy” pela interface gráfica e mando salvar o projeto. O resultado é um script que eu posso usar como “cola” no meu. No final ficou até bacana. Dá pra otimizar ainda, mas por enquanto ficou assim:

//AD  <- Needed to identify//
 
var app = new Avidemux();
var dir = "/home/girino/Desktop/backup_foto_video/show_lilica_14_dez_2007";
var tmp_prefix = "/tmp/asdf_";
 
var silence_file = dir + "/silence.mp3";
 
var movies = new Array(
dir+"/01-cumprimenta.avi",
dir+"/02-rastejando.avi",
dir+"/03-morta.avi",
dir+"/04-urso_sem_guia.avi",
dir+"/05-urso_com_guia.avi",
dir+"/06-rolando.avi"
);
var sizes = new Array(
199,
622,
1522,
367,
406,
537
);
var images = new Array(
dir+"/slides/01-cumprimenta.png",
dir+"/slides/02-Rastejando.png",
dir+"/slides/03-Morta.png",
dir+"/slides/04-urso1.png",
dir+"/slides/05-urso2.png",
dir+"/slides/06-rolando.png",
dir+"/slides/XX-final.png"
);
 
var final_list = new Array();
var final_sizes = new Array();
var final_fade = new Array();
 
// *** functions *** //
// prepares fade out scenes
function record_temp_video(video, pos, temp, size) {
	print("**** record_temp_video begin");
	print("**here0 = " + video);
        app.load(video);
	print("**here1");
        app.clearSegments();
        for (var i = 0; i < size; i++) {
                app.addSegment(0,pos,1);
        }
	print("**here2");
        app.video.setFps1000(25000);
        app.video.codec("Mjpeg","CQ=4","8 5a 00 00 00 00 00 00 00 ");
        app.audio.reset();
	print("**here3");
        app.audio.load("MP3",silence_file);
        app.audio.codec("lame",64,12,"00 00 00 00 03 00 00 00 02 00 00 00 ");
        app.audio.normalizeMode=0;
        app.audio.normalizeValue=0;
        app.audio.delay=0;
        app.audio.mixer("MONO");
        app.audio.resample=32000;
        app.setContainer("AVI");
	print("**here4");
        app.save(temp);
	print("**** record_temp_video end");
}
 
var tmp_counter = 0
function make_movie(image, length) {
	var tmp_name = tmp_prefix + tmp_counter;
	tmp_counter++;
 
	print("*** make_movie begin");
	// makes the temp video
	record_temp_video(image, 0, tmp_name, length);
	print("*** make_movie end");
 
	return tmp_name;
}
 
function make_fade_out(movie, size, length) {
	var tmp_name = tmp_prefix + tmp_counter;
	tmp_counter++;
 
	print("*** make_fade_out begin");
	// makes the temp video
	record_temp_video(movie, size-1, tmp_name, length);
	print("*** make_fade_out end");
 
	return tmp_name;
}
 
// initializes with 10 frame fade in of first image
final_list[final_list.length] = make_movie(images[0], 10);
final_sizes[final_sizes.length] = 10;
 
var i = 0;
for (i = 0; i < movies.length; i++) {
	// title image
	print("*** i = " + i);
	print("*** images[i] = " + images[i]);
	final_list[final_list.length] = make_movie(images[i], 40);
	final_sizes[final_sizes.length] = 40;
	final_fade[final_fade.length] = 1;
	// movie
	final_list[final_list.length] = movies[i];
	final_sizes[final_sizes.length] = sizes[i];
	final_fade[final_fade.length] = 1;
	// fade out
	final_list[final_list.length] = make_fade_out(movies[i], sizes[i], 10);
	final_sizes[final_sizes.length] = 10;
	final_fade[final_fade.length] = 0;
}
 
// ends with credits
final_list[final_list.length] = make_movie(images[i], 50);
final_sizes[final_sizes.length] = 50;
final_fade[final_fade.length] = 1;
 
// now adds them all in the right order
app.load(final_list[0]);
for (i = 1; i < final_list.length; i++) {
	app.append(final_list[i]);
}
 
// appends segments
app.clearSegments();
for (i = 0; i < final_list.length; i++) {
	print("*** adding:");
	print(i + " : " + final_sizes[i]);
	app.addSegment(i,0,final_sizes[i]);
}
 
// filters
var pos = 0;
// first filter is fade in
pos = pos + final_sizes[0];
app.video.addFilter("fade",
			"startFade="+(pos-10),
			"endFade="+pos,
			"inOut=1",
			"toBlack=1");
for (i = 1; i < final_list.length; i++) {
	pos = pos + final_sizes[i];
	if (final_fade[i] == 1) {
		app.video.addFilter("fade",
				"startFade="+(pos-10),
				"endFade="+pos,
				"inOut=0",
				"toBlack=0");
	}
}
// final fade to black
app.video.addFilter("fade",
		"startFade="+(pos-10),
		"endFade="+pos,
		"inOut=0",
		"toBlack=1");
 
// save video
app.video.codec("FFMpeg4","CBR=1000000","140 05 00 00 00 00 01 00 00 02 00 00 00 1f 00 00 00 " +
                                            "03 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 " +
                                            "00 00 00 00 01 00 00 00 00 00 00 00 cd cc 4c 3d " +
                                            "01 00 00 00 0a d7 23 3c 01 00 00 00 00 00 00 3f " +
                                            "00 00 00 3f 00 00 00 00 00 00 00 00 00 00 00 00 " +
                                            "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 " +
                                            "02 00 00 00 40 1f 00 00 00 00 00 00 00 00 00 00 " +
                                            "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 " +
                                            "00 00 00 00 00 00 00 00 00 00 00 00 ");
 
// and audio
app.audio.reset();
app.audio.codec("lame",64,12,"00 00 00 00 03 00 00 00 02 00 00 00 ");
app.audio.normalizeMode=0;
app.audio.normalizeValue=0;
app.audio.delay=0;
app.audio.mixer("MONO");
 
// and save
app.setContainer("AVI");
app.save(dir + "/saida.avi");
setSuccess(1);
app.Exit();
 
//DEBUG
print("**** BEGIN ****");
print(movies.length);
print(final_list.length);
print(final_list);
print(final_sizes);
print("**** END ****");
 
 
//End of script

O resultado, vocês já viram lá em cima!

girino 00:35, 19 Dezembro 2007 (BRST)

Categories
Uncategorized

Internet Radio

Tou sumido, confesso! Agora entro de férias e devo aparecer mais um pouco por aqui. Vamos deixar por aqui então as novidades:

Pirenópolis

Semana passada fomos a pirenópolis. Fotos?

Talvez eu crie coragem e escreva uma resenha.

Internet Radio

Minha brincadeira desse final de semana foi por uma “rádio” pra funcionar na internet. Pra quem quiser ir dando uma olhada, se eu tiver online o endereço da radio é esse:

Pra quem tem menos preguiça, conto a estória completa:

Comecei tentando conectar no servidor de um colega com o [shoutcast http://www.shoutcast.com/]. Cara, já tentaram achar um cliente de shoutcast decente no linux? Eu tentei e digo: Que merda! Tentei tudo que achei. Soluções que usavam o jackd, como:

  • Internet DJ Console (Não consegui inserir arquivos na playlist, mas chegou a funcionar num dado momento usando o driver “dummy” do jackd, ou seja, os outros ouviam a radio, mas eu nao :()
  • DJPlay (que eu não consegui descobrir como mandar ele conectar)

Num dado momento, apelei. Decidi que o icecast deveria ser melhor integrado com o ubuntu, certo? Errado! Quando eu finalmente consegui fazer a radio funcionar no icecast2 (porque os clientes nativos do ubuntu nao sao compilados usando LAME, e por isso so usam ogg/vorbis) usando xmms2, descobri que quando passava de uma musica pra outra o player que tivesse conectado perdia a conexão e o ouvinte tinha de conectar de novo (é mole?). Isso já era 4 da manhã de ontem! Resolvi deixar pra hoje.

Briguei ainda um pouco pela manhã, mas sem sucesso. Quer dizer, tive sucesso. Fiz um servidor de icecast2 rodando ogg/vorbis e tudo mais, só pra descobrir que no windows ninguém tem codec ogg/vorbis instalado! Grandes meldas minha rádio né? que ninguém ia ouvir porque só o otário aqui usa linux!

Por fim, apelei: fui no site do shoutcast e, pasmem, descobri que ele tem um server e um cliente de linha de comando pra linux. Não é open source, claro. Mas funciona! Ralei um pouco pra editar os arquivos de configuração, que não são muito fáceis. Mas em 2 ou 3 horas consegui! Server e cliente rodando perfeitos. Neguim do windows e do linux (e do mac… o carlão acessou) acessando! Show de bola. Acessem aí: http://amsx.no-ip.org:8008/

girino 22:37, 9 Dezembro 2007 (BRST)

Categories
Uncategorized

Monitor novo, paginação e outras notícias…

De presente de casamento, ganhei um monitor novo. Um Samsung SyncMaster 931BW. Dessa vez, finalmente, nenhum dead pixel! Considerando a briga com o submarino com o monitor da Phillips com dead e stuck pixels (no final acabei devolvendo e recebendo a grana de volta) achei quase um milagre abrir a caia e ele estar perfeito. Nem massagem ou coisa do gênero precisou!

Aproveitei o monitor novo e fiquei até de madrugada no micro. Implementei, como podem ver, um esquema de paginação no blog (o mediawiki já suportava isso, só precisei aprender a usar) e acrescentei os widgets do linkTo pra ver se traz mais algum público pro blog, que anda mesmo meio parado. Pelo menos o numero de hits parece ter aumentado bastante. Vamos ver.

girino 16:23, 24 Novembro 2007 (BRST)

%d bloggers like this: