Showing posts with label programação. Show all posts
Showing posts with label programação. Show all posts

Thursday, July 2, 2015

TCPRelay 0.4 beta 3

TCPRelay 0.4 beta 3 foi liberado! Baixe a versão de 32-bit ou 64-bit. Talvez seja necessário instalar o Microsoft .NET Framework 4.

O que há de novo nesta versão:
  • GUI
    • CORRIGIDO: TCPRelay não inicia em algumas circunstâncias quando não havia um endereço IP configurado em Vincular ao Endereço.
      Veja o tópico oficial no forum do XSplit onde há bastante feedback positivo sobre o software.

      Monday, May 11, 2015

      TCPRelay 0.4 beta 2

      TCPRelay 0.4 beta 2 foi liberado! Baixe a versão de 32-bit ou 64-bit. Talvez seja necessário instalar o Microsoft .NET Framework 4.

      O que há de novo nesta versão:
      • GUI
        • MELHORADO: melhorias cosméticas na janela de Configurações Avançadas.
        • CORRIGIDO: janela de Configurações Avançadas não abria novamente se fosse fechada com o botão X.
          Veja o tópico oficial no forum do XSplit onde há bastante feedback positivo sobre o software.

          Saturday, March 7, 2015

          TCPRelay 0.4 beta 1

          TCPRelay 0.4 alpha 3 foi liberado! Baixe a versão de 32-bit ou 64-bit. Talvez seja necessário instalar o Microsoft .NET Framework 4. Tenha em mente que esta é uma versão alfa; alguns recursos podem não funcionar corretamente.

          O que há de novo nesta versão:
          • GUI
            • NOVO: adicionada uma nova janela Configurações Avançadas para ajustar os parâmetros do socket
              • Tamanho do Buffer de Envio foi movido para esta janela
              • Adicionado Tamanho do Buffer de Recebimento
              • Adicionado No Delay
              • Adicionado Timeout de Conexão
              • Pode definir parâmetros para os sockets direcionados à aplicação e ao servidor remoto
              • [b1] Adicionada uma opção na tela de Configurações Avançadas para definir o endereço IP a ser vinculado para as conexões remotas
          Veja o tópico oficial no forum do XSplit onde há bastante feedback positivo sobre o software.

          Tuesday, March 3, 2015

          TCPRelay 0.4 alpha 4

          TCPRelay 0.4 alpha 3 foi liberado! Baixe a versão de 32-bit ou 64-bit. Talvez seja necessário instalar o Microsoft .NET Framework 4. Tenha em mente que esta é uma versão alfa; alguns recursos podem não funcionar corretamente.

          O que há de novo nesta versão:
          • GUI
            • NOVO: adicionada uma nova janela Configurações Avançadas para ajustar os parâmetros do socket
              • Tamanho do Buffer de Envio foi movido para esta janela
              • Adicionado Tamanho do Buffer de Recebimento
              • Adicionado No Delay
              • Adicionado Timeout de Conexão
              • Pode definir parâmetros para os sockets direcionados à aplicação e ao servidor remoto
          Veja o tópico oficial no forum do XSplit onde há bastante feedback positivo sobre o software.

          Thursday, February 26, 2015

          TCPRelay 0.4 alpha 3

          TCPRelay 0.4 alpha 3 foi liberado! Baixe a versão de 32-bit ou 64-bit. Talvez seja necessário instalar o Microsoft .NET Framework 4. Tenha em mente que esta é uma versão alfa; alguns recursos podem não funcionar corretamente.

          O que há de novo nesta versão:
          • Geral
            • NOVO: tamanho do buffer de envio do socket pode ser modificado pelo console e GUI.
              • Console: use o parâmetro -sbs:##.
              • GUI: use o novo campo Buffer de Envio para ajustar o tamanho do buffer.
              • O tamanho padrão é 8 KB.
              • Aumentar o buffer pode ajudar a reduzir ou eliminar perda de quadros, especialmente em conexões com alta latência para o servidor.
          Veja o tópico oficial no forum do XSplit onde há bastante feedback positivo sobre o software.

          Thursday, December 4, 2014

          TCPRelay agora é código aberto!

          Algumas pessoas vem me pedindo para abrir o código do TCPRelay. Eu finalmente decidi colocá-lo no GitHub depois de arrumar os processos de build deles.

          Aqui está a versão Java do TCPRelay. A última versão lançada é 0.1.1 beta. O código atual está na versão 0.2 e tem pequenas melhorias.
          Aqui está a versão .NET do TCPRelay. A última versão lançada é 0.4 alpha 2. As últimas versões lançadas são baseadas neste projeto.

          Divirtam-se com o código!

          Wednesday, November 5, 2014

          Novo canal do YouTube e outras coisas

          Olá galera! Eu e mais dois amigos começamos um novo canal no YouTube sobre nossos interesses geek: video games, quadrinhos, livros de ficção, filmes, seriados e muito mais! É o Geek Salad! (Não somos comestíveis.) Nós só estamos começando, então confiram!

          Eu não me esqueci sobre publicar o código-fonte do TCPRelay, o sintetizador em Java, o stream de jogos, e outras coisas que eu tenho falado no blog em inglês. Eu sou... só um pouco preguiçoso. :P

          Friday, August 29, 2014

          Escrevendo um sintetizador... em Java

          Java. Um sintetizador. Estou escrevendo o último com o primeiro. As primeiras perguntas que me fazem a respeito disso são: por que você está escrevendo um sintetizador? Por que Java?

          Estou realmente escrevendo um sintetizador subtrativo em Java. "Por que?", você me perguntaria. Tenho dois objetivos com este projeto:
          1. Desafiar a mim mesmo, aprender algo novo, e escrever software que vou gostar de usar com frequência.
          2. Demonstrar que Java é poderoso o suficiente para sintetizar áudio decente em tempo real.
          Nesta série de posts, vou descrever os desafios e compartilhar o conhecimento que adquiro ao longo desta aventura.

          (Nota: estarei usando links para a Wikipédia em inglês porque o conteúdo é muito mais completo que as versões em português.)

          Por que um sintetizador?

          Muita gente não sabe, mas eu sou fanático por música eletrônica (em particular: várias formas de Trance, incluindo Uplifting Trance, Goa Trance, Psychedelic Trance; Drum & Bass e variantes como Neurofunk; alguns Breakbeats; e outras coisas), o suficiente para começar a me envolver com produção musical. Estudei um pouco de teoria musical, procurei por tutoriais, dicas e truques em todo lugar e segui alguns canais no YouTube de grandes produtores por aí para aprender mais sobre a área. Brinquei com vários sintetizadores e efeitos e experimentei alguns DAWs, sendo FL Studio o meu favorito.

          O passo natural após esta fase de experimentação, para um programador ávido que está sempre em busca de um desafio, é aprender como essas coisas funcionam por dentro. E qual a melhor forma de fazer isso? Ora, mas é claro: escrever código!

          Claro que escrever um sintetizador (ou qualquer software, nesse caso) não se resume a escrever código. Você precisa saber os conceitos por trás do que deseja escrever.

          Para construir os mecanismos internos de um sintetizador, você precisa ter um bom fundamento em Processamento de Sinais Digitais, ou DSP na sigla em inglês, e conhecimento prático de MIDI se você quer que ele responda a instrumentos reais e DAWs. Também é bom aprender sobre a tecnologia VST da Steinberg, uma das mais populares interfaces de software para sintetizadores e efeitos de áudio, e tecnologias similares, como DXi, RTAS e Audio Units, pois elas vão permitir que você use seu plugin em praticamente qualquer DAW existente.

          Como um bônus, escrever meu próprio sintetizador significa que eu posso dar meu próprio toque às minhas músicas. (Apesar de que eu ainda tenho que terminar e publicar uma...)

          Por que Java?

          Minha linguagem escolhida foi o Java em parte por causa da experiência que eu tenho com ela, mas principalmente porque eu queria um desafio extra escrevendo um sintetizador em uma linguagem que é geralmente considerada inadequada para processamento numérico em tempo real (e provar que ela realmente está à altura da tarefa).

          Como eu gostaria que o sintetizador integrasse com o FL Studio, eu tive que procurar uma biblioteca Java que me fornecesse uma implementação de uma das interfaces de plugins de áudio supportadas pelo DAW. jVSTwRapper foi minha escolha; ela faz um ótimo trabalho de manter o overhead nativo-Java muito baixo e fornece uma API que lembra bem de perto a nativa em C++ ao mesmo tempo que dá aquele gostinho de orientação a objetos.

          Também tive que escrever uma GUI simples para testar o sintetizador por si só em Java sem precisar passar por um processo de build completo e reiniciar meu DAW toda vez que fazia alterações em código. Isto não foi tão desafiador quanto antes, pois eu já havia escrito um player de música tracker em Java (suportando MOD, S3M e IT) e o funcionamento é bem similar.

          Ah, e Java é a linguagem principal dos aplicativos para Android. Quem sabe no futuro vocês poderão estar brincando com meu sintetizador no seu smartphone. Já pensou que legal?


          Fiquem ligados!