FISL13
28 de Junho de 2012, 0:00 - sem comentários ainda
Esse ano temos a 13ª edição do Fórum Internacional Software Livre - FISL13. Se puderem, façam o esforço de irem prestigiar nosso evento. Estou mais uma vez colaborando na organização da programação cultural do evento.
Mandelbrot interativo em ProcessingJS
8 de Março de 2012, 0:00 - sem comentários aindaBrincando um pouco com html5 canvas portei para processing.js o popular algoritmo que gera o fractal Mandelbrot.
Clique com botão do mouse para fazer zoom no fractal.
Edite o código online em http://studio.sketchpad.cc/kFOOepXahf
Novas funcionalidades para o Landell
7 de Março de 2012, 0:00 - sem comentários ainda
Nos últimos dias tenho me dedicado a estudar um pouco de Python e GTK+ motivado pelas novas funcionalidades que estou adicionando em meu fork do código da ferramenta de streaming de vídeo Landell.
A principal funcionalidade nova presente no repositório git "landel-fgdp" é o suporte ao protocolo de streaming FGDP utilizado pelo sistema Flumotion, que é a mais completa solução de streaming livre. Agora é possível enviar vídeo Ogg ou WebM do landell para um servidor Flumotion. Como o código do flumotion é python licenciado pela GPL, bastou copiar o código das classes que implementam o protocolo FGPD e fazer a integração com o sistema de Outputs do landell.
Outra inovação é um protótipo de overlay de mensagens de redes de microblogging [screenshot abaixo]. Já é possível configurar a ferramenta para carregar as mensagens do Twitter (postadas por um usuário ou todo o feed de uma #hashtag) e apresentá-las na tela do streaming com o avatar e a mensagem. O elemento gstreamer utilizado foi o rsvgoverlay o qual desenha imagens SVG nos quadros de vídeo. Em breve devo incluir o suporte a rede Identi.ca e ajeitar a interface gráfica de configuração.
Outras modificações não menos importantes são a inclusão de novos parâmetros no encoder do codec VP8 [imagem abaixo] e a geração de nomes válidos para arquivos de saída que já existam no disco (de suma importância para evitar que dados já gravados sejam sobrescritos acidentalmente).
Com este fork + um servidor flumotion é possível realizar transmissões profissionais no padrão WebM.
(crédito para o belo logotipo do projeto criado pelo amigo Valéssio)
lucasa
Transcodificação e streaming de áudio e vÃdeo com Nodejs
9 de Janeiro de 2012, 23:43 - sem comentários ainda
Avancei nos experimentos com transcodificação de áudio e vÃdeo com nodejs e gstreamer. Agora é possÃvel receber fluxos em diversos formatos e transcodificar para um fluxo HTTP em Ogg ou WebM. Código aqui: https://github.com/lucasa/node-streamer
Não recomendo o uso em produção, está mais para um quebra-galho.
TRANSCODING AND STREAMING
Live transcoding of audio streams from RTMP, OGG, MP3, WMV to Ogg+Vorbis or MP3.
Command line: "node node-transcoder-ogg-mp3.js URL STREAM_FILE_OUT.mp3 or .ogg PORT"
Example: "node node-transcoder-ogg-mp3.js mms://karazhan.senado.gov.br/wmtencoder/radio.wmv senado.ogg 9100"
The output url is: http://localhost:9100/senado.ogg
Live transcoding of video streams from RTMP, OGG, WebM, WMV to Ogg+Theora or WebM.
Command line: "node node-transcoder-ogg-thera.js URL STREAM_FILE_OUT.webm or .ogg PORT"
Example: "node node-transcoder-ogg-theora.js mms://midia.al.rs.gov.br/tval assembeliars.ogg 1234"
The output url is: http://localhost:1234/assembeliars.ogg
Transcodificação e streaming de áudio e vídeo com Nodejs
9 de Janeiro de 2012, 0:00 - sem comentários ainda
Avancei nos experimentos com transcodificação de áudio e vídeo com nodejs e gstreamer. Agora é possível receber fluxos em diversos formatos e transcodificar para um fluxo HTTP em Ogg ou WebM. Código aqui: https://github.com/lucasa/node-streamer
Não recomendo o uso em produção, está mais para um quebra-galho.
TRANSCODING AND STREAMING
Live transcoding of audio streams from RTMP, OGG, MP3, WMV to Ogg+Vorbis or MP3.
Command line: "node node-transcoder-ogg-mp3.js URL STREAM_FILE_OUT.mp3 or .ogg PORT"
Example: "node node-transcoder-ogg-mp3.js mms://karazhan.senado.gov.br/wmtencoder/radio.wmv senado.ogg 9100"
The output url is: http://localhost:9100/senado.ogg
Live transcoding of video streams from RTMP, OGG, WebM, WMV to Ogg+Theora or WebM.
Command line: "node node-transcoder-ogg-thera.js URL STREAM_FILE_OUT.webm or .ogg PORT"
Example: "node node-transcoder-ogg-theora.js mms://midia.al.rs.gov.br/tval assembeliars.ogg 1234"
The output url is: http://localhost:1234/assembeliars.ogg
Agora Tem Que Hackear
3 de Dezembro de 2011, 0:00 - sem comentários aindaPost publicado originalmente no blog coletivo Trezentos.
Agora Tem Que Hackear
Por Lucasa.
Bom, e agora!?
A Lei de Geral de Acesso a Informação foi sancionada. O que nós cidadãos faremos? O que Queremos Saber? A bola está conosco agora. O Brasil faz as pazes com um dos princípios democráticos fundamentais que é dar acesso público e livre às informações públicas. Ainda bem que nosso estado não é mínimo e por isso há aí alguns Petabytes de dados passíveis de cópia. Se contarmos com abrangência de conteúdos que esta lei disponibiliza para consulta, há um vasto território de cruzamentos recombinantes das informações geradas pelo ecossistema estatal.
Agora o gargalo está na falta de preparo para cumprir a lei e também na má vontade dos que se acham proprietários de determinados tipos de conteúdo. Este é um cenário complexo que podemos considerar como o marco oficial do Estado Brasileiro pós-ditadura na Sociedade da Informação e, por que não, no amadurecimento de uma Esfera Pública e na legalização da prática do hacking cívico (doa a quem doer). Agora não dependemos de boa vontade, apenas de conseguir mobilizar multidões e pedir em coro: “- libera aí ‘chefia’!”. Espero que se torne prática corriqueira a reflexão e o questionamento da propriedade intelectual do Estado. Eu acredito que a produção técnica e cultural criada pelos entes públicos deve ficar livre para ser redistribuída, transformada e utilizada para qualquer fim, ou seja, coberta por uma licença de domínio público ou, melhor ainda, numa licença Copyleft. Estão livres, segundo esta interpretação stricto senso da lei, por exemplo, o material educativo criado para dar treinamento à funcionários públicos, todos os bancos de dados do IBGE e também todos os softwares já criados por todos os órgãos estatais para execução de seus próprios processos, inclusive a documentação dos projetos futuros. E isso não é pouca coisa não, o estado se torna uma grande maquina de inovação ao abrir suas entranhas para o remix público. Um prato cheio para hackers de informações como o bando da Transparência Hackday.
Não é mais necessário debater se os softwares criados pelo governo deveriam ser livres, agora eles são inegavelmente públicos. Se um burocrata de plantão quiser salvaguardar algum software ou outro tipo de informação estatal dos olhos do povo, que registre este como sendo de acesso restrito, vá pedir a assinatura da presidente da república e publique no diário oficial. Lembremos o caso do programa IRPF - um código fonte não é um banco de dados. Os ativistas do software Livre e da cultura livre podem ajudar apresentar essas novidades cívicas à população brasileira, que então poderá se organizar e reclamar às vistas documentos e processos que estejam velados.
Pra deixar as coisas mais escuras e mais interessantes: Os pedidos de acesso a uma base nova que ainda não tenha sido publicada devem ser abertos e amplamente divulgados? Se fomentado oficialmente, esse feedback retroalimentaria o processo, criando uma interessante fonte de meta-informação, a informação a respeito do processo de consulta de informações. Ter algo como um “trending topics” dos pedidos de acesso a dados estatais é algo bem interessante.
Não adianta só reclamar, tem que hackear.
#Ocupar o Estado é preciso.
Criando um servidor de streaming de vÃdeo com Nodejs
7 de Agosto de 2011, 16:02 - sem comentários aindaNodejs é um a tecnologia nova que tem agradado a vários desenvolvedores web pois permite executar código javascript de alto nÃvel no servidor possibilitando a criação de uma camada middleware de comunicação com o browser cliente. Essa caracterÃstica de comunicação por pacotes HTTP simplifica a criação de um servidor de vÃdeo usando gstreamer.
Comecei os experimentos de streaming de vÃdeo motivado por este post do blog Devendra @ Work que mostra como utilizar sockets para receber os dados da saÃda do pipeline gstreamer (não posso esquecer dos papos legais sobre video livre com o amigo Lincon). Por agora estou entretido em criar um servidor de streaming utilizando o elemento "tcpserversink" que trata de forma transparente as conexões e desconexões de sockets clientes. O node-streamer responde à s requisições GET do programa cliente, seja ele um navegador ou player de vÃdeo, com uma stream de pacotes recebidos do socket conectado ao servidor TCP do pipeline. Simples, né!?
Vou continuar os experimentos de streaming com a implementação de um pipeline de transcodificação de fluxos de áudio ao vivo (ogg para mp3 e vice versa) e também a criação de uma interface html para configuração do pipeline a ser executado, possibilitando o uso do node-streamer sem precisar lidar diretamente com o código javascript.
Para quem quiser começar a brincar com nodejs, sigam o roteiro da instalação no GNU/Linux que meu amigo MaurÃcio Vieira postou.
Criando um servidor de streaming de vídeo com Nodejs
7 de Agosto de 2011, 0:00 - sem comentários aindaNodejs é um a tecnologia nova que tem agradado a vários desenvolvedores web pois permite executar código javascript de alto nível no servidor possibilitando a criação de uma camada middleware de comunicação com o browser cliente. Essa característica de comunicação por pacotes HTTP simplifica a criação de um servidor de vídeo usando gstreamer.
Comecei os experimentos de streaming de vídeo motivado por este post do blog Devendra @ Work que mostra como utilizar sockets para receber os dados da saída do pipeline gstreamer (não posso esquecer dos papos legais sobre video livre com o amigo Lincon). Por agora estou entretido em criar um servidor de streaming utilizando o elemento "tcpserversink" que trata de forma transparente as conexões e desconexões de sockets clientes. O node-streamer responde às requisições GET do programa cliente, seja ele um navegador ou player de vídeo, com uma stream de pacotes recebidos do socket conectado ao servidor TCP do pipeline. Simples, né!?
Vou continuar os experimentos de streaming com a implementação de um pipeline de transcodificação de fluxos de áudio ao vivo (ogg para mp3 e vice versa) e também a criação de uma interface html para configuração do pipeline a ser executado, possibilitando o uso do node-streamer sem precisar lidar diretamente com o código javascript.
Para quem quiser começar a brincar com nodejs, sigam o roteiro da instalação no GNU/Linux que meu amigo Maurício Vieira postou.
IV Encontro Nordestino de Software Livre
12 de Setembro de 2010, 0:00 - sem comentários aindaNo IV ENSL serão apresentadas palestras técnicas, painéis e casos de sucesso em empresas, instituições de ensino e órgãos públicos com o uso e desenvolvimento de Software Livre. Esse ano, em especial, dentro do IV ENSL também ocorrerão o VII Fórum GNOME e o III Fórum KDE Brasil – Edição Nordeste, ambos eventos de âmbito nacional. O público estimado para esta edição do evento é composto por profissionais e entusiastas da Tecnologia da Informação e Comunicação (TIC), professores e estudantes, reunindo representantes das esferas empresarial, governamental, acadêmica e da sociedade civil.
O envio de propostas pode ser feito até o dia 20 de setembro de 2010, no sistema de submissões: http://rn.softwarelivre.org/documentos/papers/speaker/
Eu irei ao evento representando o SERPRO e apresentarei a palestra Transmissão de Vídeo com Software Livre. Farei um compacto da oficina de mesmo título a que realizaei no CONSEGI 2010.
Saiu o release 0.6 do programa de streaming de vÃdeo sltv
17 de Março de 2010, 15:13 - sem comentários aindaSó pra avisar que saiu o release 0.6 do sltv.
SLTV v0.6 (2010/03/03), baixe o tarball aqui: http://sltv.holoscopio.com/sltv-0.6.tar.gz
Mais informações aqui: http://sltv.holoscopio.com/
O pacote para Debian também foi liberado, acesso o link acima para informações sobre a instalação.
Para baixar a versão de desenvolvimento acesse o wiki do projeto.
Notas da última versão (0.6):
- suporte a múliplas saÃdas simultâneas;
- cada saÃda possui sua própria configuração, incluindo configurações de encoding;
- suporte a versões do Debian Lenny do gstreamer e python;
- várias mudanças cosméticas na interface;
- remoção de UI para escolha de encoding;
- mudanças de vários defaults nas configurações.