Arquivo de 07/07/2010

Algumas referencias legais e importantes!

O SUSE Moblin combinado com os processadores Intel Atom netbooks equivale a uma mudança de paradigma na computação.

A Novell lançou o SUSE ® Moblin, o primeiro sistema operacional de desktop totalmente suportado para netbooks e nettops. Utilizando os recursos de categoria empresarial do SUSE Linux Enterprise Desktop, o SUSE Moblin está optimizado para Internet, mídia social, e uso de colaboração Web-centric.

O SUSE Moblin possui uma variedade de aplicações de escritório e produtividade e aplicações de mídia social tornando-se o sistema operacional preferido para a plataforma de procesadores Atom.

Do executivo para o trabalhador rural; estudante universitário à pré-adolescente, todos podem se beneficiar desta nova solução.

Ela une a velocidade do tempo de inicialização com as funções de usabilidade do Moblin e o legado de inovação da Novell

O SUSE Moblin possui os seguintes aplicativos pré-carregados: Adobe Flash, Adobe Acrobat Reader, Novell Mono, Moonlight da Novell, OpenOffice.org Novell Edition (pacote Office) e integração com aplicações de mídia social (Facebook, Last FM, MySpace, Flickr).

O SUSE Moblin foi demonstrado na Consumer Electronics Show 2010 (CES), com parceiros da MSI e Samsung. Os produtos estão disponíveis em algumas regiões.

Segue alguns videos de exemplo

Overview

MyZone and Peole

Social Media

Connecting to Network

Referencia:

http://www.novell.com/promo/lp/moblin.html

Sempre que preciso copiar CD ou DVD danificado para o meu computador, para tentar recuperar algum arquivo, eu faço com o seguinte comando:

$ cdrdao copy

O comando acima quando executado copia o conteúdo da unidade de CD/DVD padrão do sistema para um arquivo cddataxxxx.bin dentro do diretório atual.

Outro método que uso para poder copiar CD/DVD danificados é o comando:

$ dd if=/dev/scd0 of=arquivo

O comando acima copia o conteúdo do disco /dev/scd0 para o arquivo definido.

DICA: para entender melhor como trabalhar com estes comandos, consulte o manual através do comando: man comando

Exemplo: man dd

Publicado por Rodrigo Zimmermann

Lançado Ruby 1.9.2 RC1

Publicado: 07/07/2010 em Sem categoria

Foi lançado um primeiro Release Candidate para o Ruby 1.9.2, sendo a versão que apresenta maior compatibilidade com o 1.9.1. As alterações constantes neste lançamento incluem muitos novos métodos, um novo socket API com suporte à IPv6, novas codificações, uma classe Random que suporta geradores de vários números aleatórios e grandes melhorias em Regexp. Outras alterações incluem novos métodos adicionados para Array, Enumerable, Enumerator, File, Env, Digest e muitas outras classes. Além disso, houve a correção de cerca de 130 falhas encontradas.

Os desenvolvedores pedem que os usuários façam testes com a versão lançada e que toda e qualquer eventualidade negativa encontrada neste RC1, seja relatada para que os devidos ajustes sejam feitos. Para consultar todas as alterações ocorridas, basta visitar o seu Change Log.

Saiba Mais:

[1] Ruby 1.9.2 :
http://www.ruby-lang.org/en/news/201…1-is-released/

[2] Reportar Bugs:
http://redmine.ruby-lang.org/projects/show/ruby-19/

A quantidade de banda nos meios de transmissão (quer seja wirelesss, xDSL ou fibra) está cada vez maior o que permite com que se pense em novas aplicações e serviços prestados. Um dos grandes desafios sempre foi a transmissão de TV (ou filmes, vídeos, etc.) via IP. O Youtube consegue fazer um bom trabalho, através de um bom protocolos de compressão e uma boa disponibilidade de banda, mas na grande maioria das vezes, os seus vídeos só precisam de um tempo de carga relativamente grande (considerando a impaciência dos usuários) e só tem uma recepção suave (sem pausas) nas menores resoluções.

Multicast

Uma das dificuldades do Youtube é que a Internet não suporta Multicast. Na verdade, a grande maioria dos roteadores utilizados hoje nos backbones de Internet já tem esse recurso, apenas que não são habilitados porque as operadoras não tem interesse (além do que iria consumir processamento).

No entanto em redes privativas, como a de provedores de acesso Internet (tanto no backbone como acesso dos clientes) é possível habilitar o multicast.

Eu escrevi a algum tempo atrás um artigo sobre multicast, recomendo para quem quer saber mais:

http://under-linux.org/blogs/mlrodri…ulticast-1134/

Em resumo, o multicast transmite uma vez só o vídeo (independentemente de quantas pessoas estejam assistindo), o que economiza banda. Se um vídeo está sendo transmitido a 2Mbps em modo normal, cada usuário irá gastar 2Mbps, assim 20 usuários vendo esse vídeo irão gastar 40Mbps do backbone da rede. Se um vídeo de 2Mbps está sendo transmitido em multicast, ele poderá ser visto por milhares de pessoas ao mesmo tempo e irá gastar apenas 2Mbps do backbone.

Vale lembrar que para isso funcionar, a rede toda (todos os equipamentos da rede) precisam suportar multicast.

A Transmissão

Outro problema comum para quem quer transmitir TV ou vídeo via IP é a codificação (transformar a imagem em IP). Nesse caso o Mídia Player VLC se torna uma ótima ferramenta.

Para quem não conhece, eu definiria o VLC como um “faz-tudo-multimidia”. É impressionante a quantidade de recursos que ele possui. Você pode baixá-lo e conhecer mais aqui:

http://www.videolan.org/vlc/

Uma das coisas mais interessantes que ele faz é transmitir um vídeo em multicast através do protocolo IGMP. Você pode transmitir a partir de um arquivo gravado (vários formatos possíveis), pode fazer através da câmera do computador ou da placa de captura de vídeo (por exemplo, para capturar uma canal de TV a cabo). O VLC permite várias fontes possíveis de sinal.

Para transmitir em multicast, é bastante simples. No menu Mídia, selecione Fluxo (o VLC em português chama o multicast de Fluxo). Na aba Arquivo, seleciona Adicionar… para escolher o seu arquivo (você pode selecionar vários para serem transmitidos na sequência), depois clique em Fluxo.

Na próxima tela serão dadas algumas opções avançadas (esta é a parte mais chata). Clique em Destinos e na opção Novo destino selecione UDP, clique em Exibir localmente (para que você também veja o que está sendo transmitido) e adicionar. Será pedido um IP e Porta, esse IP é importante que seja um endereço de multicast (não é um IP normal nem um IP da sua rede). Por exemplo coloque 224.10.10.10 (esse será o IP de multicast que os usuários irão acessar para visualizar o vídeo, no multicast não se usa o IP da rede).

Depois basta clicar em Fluxo novamente para iniciar. Para receber o vídeo, os usuários podem usar também o VLC (ou Windows Media Player) para assistir esse IP de multicast.

Resumo

A tecnologia de multicast requer que os equipamentos da rede suporte esse protocolo. Os switches, access point, etc tem que suportar protocolos de multicast (ou multicast snooping), como o IGMP (em IPv4) ou MLD (em IPv6) mas isso está cada vez mais presente nos equipamentos.

O VLC é uma ferramenta open source excelente para a geração e transmissão das imagens (repare que no multicast um único PC pode tranquilamente transmitir para milhões de usuários ao mesmo tempo).

A única parte mais complicada é compreender esse protocolo de multicast (como ele funciona e como se configura os equipamentos para utilizá-lo), mas não é nenhum bicho de sete cabeças e depois que você compreender como ele funciona, verá que é até bem simples. Em breve devo publicar aqui alguns tutoriais de como configurar multicast em alguns modelos de equipamento.

por mlrodrig

  • A quantidade de banda nos meios de transmissão (quer seja wirelesss, xDSL ou fibra) está cada vez maior o que permite com que se pense em novas aplicações e serviços prestados. Um dos grandes desafios sempre foi a transmissão de TV (ou filmes, vídeos, etc.) via IP. O Youtube consegue fazer um bom trabalho, através de um bom protocolos de compressão e uma boa disponibilidade de banda, mas na grande maioria das vezes, os seus vídeos só precisam de um tempo de carga relativamente grande (considerando a impaciência dos usuários) e só tem uma recepção suave (sem pausas) nas menores resoluções.

    Multicast

    Uma das dificuldades do Youtube é que a Internet não suporta Multicast. Na verdade, a grande maioria dos roteadores utilizados hoje nos backbones de Internet já tem esse recurso, apenas que não são habilitados porque as operadoras não tem interesse (além do que iria consumir processamento).

    No entanto em redes privativas, como a de provedores de acesso Internet (tanto no backbone como acesso dos clientes) é possível habilitar o multicast.

    Eu escrevi a algum tempo atrás um artigo sobre multicast, recomendo para quem quer saber mais:

    http://under-linux.org/blogs/mlrodri…ulticast-1134/

    Em resumo, o multicast transmite uma vez só o vídeo (independentemente de quantas pessoas estejam assistindo), o que economiza banda. Se um vídeo está sendo transmitido a 2Mbps em modo normal, cada usuário irá gastar 2Mbps, assim 20 usuários vendo esse vídeo irão gastar 40Mbps do backbone da rede. Se um vídeo de 2Mbps está sendo transmitido em multicast, ele poderá ser visto por milhares de pessoas ao mesmo tempo e irá gastar apenas 2Mbps do backbone.

    Vale lembrar que para isso funcionar, a rede toda (todos os equipamentos da rede) precisam suportar multicast.

    A Transmissão

    Outro problema comum para quem quer transmitir TV ou vídeo via IP é a codificação (transformar a imagem em IP). Nesse caso o Mídia Player VLC se torna uma ótima ferramenta.

    Para quem não conhece, eu definiria o VLC como um “faz-tudo-multimidia”. É impressionante a quantidade de recursos que ele possui. Você pode baixá-lo e conhecer mais aqui:

    http://www.videolan.org/vlc/

    Uma das coisas mais interessantes que ele faz é transmitir um vídeo em multicast através do protocolo IGMP. Você pode transmitir a partir de um arquivo gravado (vários formatos possíveis), pode fazer através da câmera do computador ou da placa de captura de vídeo (por exemplo, para capturar uma canal de TV a cabo). O VLC permite várias fontes possíveis de sinal.

    Para transmitir em multicast, é bastante simples. No menu Mídia, selecione Fluxo (o VLC em português chama o multicast de Fluxo). Na aba Arquivo, seleciona Adicionar… para escolher o seu arquivo (você pode selecionar vários para serem transmitidos na sequência), depois clique em Fluxo.

    Na próxima tela serão dadas algumas opções avançadas (esta é a parte mais chata). Clique em Destinos e na opção Novo destino selecione UDP, clique em Exibir localmente (para que você também veja o que está sendo transmitido) e adicionar. Será pedido um IP e Porta, esse IP é importante que seja um endereço de multicast (não é um IP normal nem um IP da sua rede). Por exemplo coloque 224.10.10.10 (esse será o IP de multicast que os usuários irão acessar para visualizar o vídeo, no multicast não se usa o IP da rede).

    Depois basta clicar em Fluxo novamente para iniciar. Para receber o vídeo, os usuários podem usar também o VLC (ou Windows Media Player) para assistir esse IP de multicast.

    Resumo

    A tecnologia de multicast requer que os equipamentos da rede suporte esse protocolo. Os switches, access point, etc tem que suportar protocolos de multicast (ou multicast snooping), como o IGMP (em IPv4) ou MLD (em IPv6) mas isso está cada vez mais presente nos equipamentos.

    O VLC é uma ferramenta open source excelente para a geração e transmissão das imagens (repare que no multicast um único PC pode tranquilamente transmitir para milhões de usuários ao mesmo tempo).

    A única parte mais complicada é compreender esse protocolo de multicast (como ele funciona e como se configura os equipamentos para utilizá-lo), mas não é nenhum bicho de sete cabeças e depois que você compreender como ele funciona, verá que é até bem simples. Em breve devo publicar aqui alguns tutoriais de como configurar multicast em alguns modelos de equipamento.

    // Este artigo foi publicado originalmente no blog: Usando VLC para transmitir TVoIP iniciado por mlrodrig

    //

    //


    // 0)
    {
    postvars += ‘&postid=’ + comment_postid;
    }
    if (document.getElementById(title_name) != undefined
    && document.getElementById(title_name).value != ”)
    {
    postvars += ‘&title=’ + PHP.urlencode(document.getElementById(title_name).value);
    }
    if (document.getElementById(user_name) != undefined && document.getElementById(user_name).value != ”)
    {
    postvars += ‘&username=’ + PHP.urlencode(document.getElementById(user_name).value);
    }
    if (document.getElementById(captcha_text) != undefined && document.getElementById(captcha_text).value != ”
    && document.getElementById(post_hash) != undefined && document.getElementById(post_hash).value != ”)
    {
    postvars += ‘&humanverify[input]=’ + PHP.urlencode(document.getElementById(captcha_text).value);
    postvars += ‘&humanverify[hash]=’ + PHP.urlencode(document.getElementById(post_hash).value);
    // add check for re-captcha in case board is set up for that
    if (document.getElementById(‘recaptcha_challenge_field’) != undefined && document.getElementById(‘recaptcha_challenge_field’).value != ”)
    {
    postvars += ‘&recaptcha_challenge_field=’ + PHP.urlencode(document.getElementById(‘recaptcha_challenge_field’).value);
    }
    if (document.getElementById(‘recaptcha_response_field’) != undefined && document.getElementById(‘recaptcha_response_field’).value != ”)
    {
    postvars += ‘&recaptcha_response_field=’ + PHP.urlencode(document.getElementById(‘recaptcha_response_field’).value);
    }
    }
    else if (document.getElementById(‘humanverify’) && document.getElementById(post_hash))
    {
    postvars += ‘&humanverify[input]=’ + PHP.urlencode(document.getElementById(‘humanverify’).value);
    postvars += ‘&humanverify[hash]=’ + PHP.urlencode(document.getElementById(post_hash).value);
    }
    var returnNode = fetch_object(‘return_node’);
    if (returnNode != ‘undefined’ && returnNode.value != ”)
    {
    postvars += ‘&return_node=’ + returnNode.value;
    }
    // check if facebook publish checkbox is present and checked
    var fbPubCb = fetch_object(‘fb_dopublish’);
    if (fbPubCb != null && fbPubCb.checked == 1)
    {
    postvars += ‘&fb_dopublish=1′;
    }
    if (vB_Editor[editor_name] != undefined)
    {
    postvars += ‘&message=’ + PHP.urlencode(vB_Editor[editor_name].get_editor_contents());
    }

    // make an ajax request for a new reply
    YAHOO.util.Connect.asyncRequest(“POST”, “newreply.php?do=postreply”, {
    success: function(ajax)
    {
    ajax_req = false;
    if (ajax.responseXML)
    {
    // check if there were errors in the ajax response
    var errorsText = “”;
    // get the errors XML element
    var errorsXML = ajax.responseXML.getElementsByTagName(“errors”);
    // get the errors DOM element
    var errorsDOM = (errorsXML && errorsXML.length > 0) ? errorsXML[0] : null;
    if (errorsDOM)
    {
    // loop through each error, and append it to error text
    while(errorsDOM.hasChildNodes() == true)
    {
    // make sure it is an error node before we append the it to error text
    if (errorsDOM.firstChild.nodeName == “error”)
    {
    // FF and IE handle DOM differently, make sure we grab the error text for either case
    errorsText += (errorsDOM.firstChild.firstChild.nodeValue?errorsDOM.firstChild.firstChild.nodeValue:errorsDOM.firstChild.firstChild.nodeTypedValue) + “\n\n”;
    }
    errorsDOM.removeChild(errorsDOM.firstChild);
    }
    }

    // if there were errors, alert the user
    // otherwise refresh the page to show new comment
    if (errorsText != “”)
    {
    alert(errorsText);
    }
    else
    {
    refreshPage();
    }
    }
    },
    failure: vBulletin_AJAX_Error_Handler,
    timeout: vB_Default_Timeout,
    scope: this
    }, SESSIONURL + “securitytoken=” + SECURITYTOKEN + “&” + postvars);
    }

    return false;
    }
    // ]]>

    Comentários Comentar
    //

    • Reduzir Tamanho
      Aumentar Tamanho

      Alterar Modo do Editor

    • Alinhar à esquerda Centralizar Alinhar à direita
    • Lista Ordenada Lista Não Ordenada Diminuir Recuo Aumentar Recuo
    • Inserir Link Remover Link Inserir Link para Email Inserir Imagem Inserir Vídeo
    • Colocar tags [QUOTE] em torno do texto selecionado
    • Colocar tags [CODE] em torno do texto selecionado Colocar tags [HTML] em torno do texto selecionado Colocar tags [PHP] em torno do texto selecionado
    • :rock:
    • :shot:
    • :stupido:
    • :tomato:
    • :willy:
    • :captain:
    • :musicus:
    • :dancing2:
    • :p
    • :egg:
    • :adore:
    • :flowers:
    • :banghead:
    • :heeeelllllooooo:
    • :birthday:
    • :joyman:
    • :questionmark:
    • :secruity:
    • :stickyman:
    • :thrasher:

    //