www.tirinhas.com

segunda-feira, 27 de julho de 2009

Como baixar streaming de vídeo

No site que está o vídeo, verifique o código-fonte (botão direito => código fonte) e procure algo do tipo:
HREF="mms://algumacoisa.wmv"

$ mplayer --dumpstream mms://algumacoisa.wmv

O Vídeo será salvo com o nome de stream.dump, no diretório em que o terminal está.
É interessante a mensagem apresentada após o término do download:

Everything done. Thank you for downloading a media file containing proprietary and patented technology. core dumped ;)

Este não é o único modo de se salvar streaming. O próprio Konqueror, navegador do KDE, facilita o processo.
Pode-se clicar com o botão direito no plugin do mplayer na página e escolher "salvar como /home/caminho...". O arquivo salvo contém o link para ser baixado com o mplayer.
Ou, ainda, pode-se simplesmente esperar que o konqueror faça o processo todo sem intervenção.

domingo, 26 de julho de 2009

Habilitar Video Preview no Konqueror

A exibição de miniaturas para os arquivos multimídia é um recurso que havia me chamado a atenção no Gnome, mas eu ainda não o havia visto em funcionamento no KDE.
Em Ver=>Pré-visualizar temos as como habilitar as pré-visualizações para os tipos de arquivos que quisermos, mas os arquivos de vídeo não aparecem na lista.
Procurando nas configurações do Konqueror, em Pré-visualizações & Metadados, habilitei os protocolos file, media e videodvd, mas as miniaturas
Pesquisando uma solução em fóruns, cheguei a encontrar uma sugestão de se instalar o kdemultimedia para habilitar o video preview. Embora resolva o problema, a instalação do kdemultimedia traz uma quantidade muito grande de programas. Trata-se portanto, de uma solução exagerada.
Na minha instalação do Gentoo, este recurso funcionou simplesmente com a instalação dos pacotes
kdemultimedia-arts e artsplugin-xine.

terça-feira, 7 de julho de 2009

Complementos do Firefox para pular a espera do Rapidshare e Megaupload

Cansado daquela espera do Rapidshare e de, além da espera, ter que preencher aquelas letras chatas para começar o download no Megaupload? Seus problemas acabaram! (e não é tabajara!)
Com o Mozilla Firefox é possível "pular" essas etapas chatas, através da instalação de alguns complementos.

Primeiramente, é necessário instalar o complemento Skipscreen
https://addons.mozilla.org/pt-BR/firefox/addon/11243

Agora o download no Rapidshare inicia automaticamente após o término do tempo de espera. A tela de espera não é literalmente "pulada", mas agora não necessita de interação com o usuário.

Feito isso, instalaremos o complemento Greasemonkey para, então, instalar um script que vai preencher o Captcha do Megaupload automaticamente.
https://addons.mozilla.org/pt-BR/firefox/addon/748

http://userscripts.org/scripts/show/38736



sábado, 13 de junho de 2009

Supertux


Para os que ainda não conhecem, o Supertux é um clone do clássico Mario.
Ele está disponível nos repositórios das principais distribuições, mas em muitas delas, a versão disponível é a 0.1.3, muito defasada em relação ao atual desenvolvimento do jogo.
Tentei instalar a versão 0.3.1 no meu Gentoo, primeiro através do pacote do Autopackage e, depois, pelo código fonte, mas não obtive sucesso. Com o Autopackage, retornava um erro informando que o Openal foi encontrado, mas com a versão incorreta, e o instalador parou. Com a tarball, a compilação parou após mostrar vários erros de sintaxe (?).
Depois, resolvi tentar a instalação da versão mais recente e, na wiki encontrei as instruções:

Primeiramente é necessário instalar os pré-requisitos:

No Gentoo
# emerge -avn subversion ftjam media-libs/openal physfs libsdl sdl-image libvorbis libogg

No Debian
# apt-get install subversion autoconf automake jam g++
# apt-get install libsdl1.2-dev libsdl-image1.2-dev libphysfs-dev libvorbis-dev libogg-dev libopenal-dev

É conveniente criar uma pasta para armazenar os programas compilados com os fontes obtidos via subversion para uma melhor organização.
$ mkdir /home/usuario/subversion

A seguir, entraremos no diretório criado e baixaremos as fontes.
$ cd /home/usuario/subversion
$ svn checkout http://supertux.lethargik.org/svn/supertux/trunk/supertux

Este último comando cria uma pasta chamada "supertux" e nela armazena os fontes.
Agora, dentro da pasta "supertux", criaremos outra pasta para arnazenar o jogo compilado.
$ cd supertux
$ mkdir build
$ cd build

Com tudo preparado, criaremos os Makefiles necessários:

# cmake -DDEBUG=ON ..

Agora, para gerar o executável:
# make

Agora o executável foi gerado, não sendo necessário instalar o jogo, bastando executá-lo. Mas se quiser instalá-lo, para que ele possa ser chamado digitando "supertux2" em um terminal, faça:
# make install

terça-feira, 21 de abril de 2009

Sequências Polinomiais

Abaixo estão algumas séries, utilizadas para determinar funções trigonométricas.










A seguir, implementei algumas dessas funções matemáticas em C++.

Cálculo de x elevado a n
double pot( double x, unsigned int n)
{
double p = 1; unsigned int i;
for (i = 1; i<=n; i++)
p = p*x;
return p;
}


Fatorial de n:
long double fat(unsigned int n)
{
if (n <= 1 ) return 1;
else{
long double f = 1; unsigned int j;
for ( j = 1; j <= n; j++)
f = f*j;
return f;
}
}

Seno de x
double sen(double x)
{

x = x *pi() / 180.0;
int i, k; double p, s , x2;
x2 = -x * x;
p = x;
s = p;
k = 3;
while ( mod(p) > 1E-20)
{
p = p * x2 / ( k*(k-1));
s = s+p;
k = k+2;
}
return s;
}


Módulo de x;
double mod( double x)
{
if (x <= 0)
x = -x;
return x;
}

Cosseno de x
double cosseno(double x)
{
x = x *pi() / 180.0;
int k=1;
double c = 0.0;
double p=1.0;
double q = -x * x;
while ( mod(p) > 1E-20)
{
c = c + p;
p = p* (q / ( k * ( k +1)));
k = k+2;
}
return c;
}

Cálculo do valor de pi
double pi()
{
int c=1; double s=0, i;
for (i=2;i<=1E7;i++)
{
c = -c;
s = s+4.0/(2*i-1)*c;
}
s = s+4;
return s;
}

quarta-feira, 15 de abril de 2009

Brain Workshop

Um simples exercício mental pode aumentar sua memória recente e sua inteligência?

Um estudo recente mostrou que um teste específico de memória, chamado Dual N-Back, pode efetivamente aumentar sua memória recente e inteligência fluida. Foi uma descoberta importante pois, até então, acreditava-se ser a inteligência fluida imutável.
Inteligência fluida, é aquela que usamos quando nos deparamos com um problema novo, é a habilidade que temos em resolvê-lo.

O Brain Workshop procura replicar as condições do estudo original, feito em 2008. (Mais informações sobre a pesquisa, aqui). Está disponível para Windows, Linux e Mac.

Dual 1-back - o modo mais simples

  1. Executar Brain Workshop.
  2. Pressionar Espaço para entrar no Workshop.
  3. Pressionar M para mudar para o modo manual.
  4. Pressionar F1 para reduzir o nível N-back para 1.
  5. Pressione Espaço para começar uma sessão Dual 1-Back. Cada sessão dura aproximadamente um minuto

Você verá um quadrado aparecer a cada 3 segundos, abompanhado pelo som de uma letra. Se não ouvir nada, verifique se os alto-falantes não estão mudos.

  • Presssione A (position match) se a posição do quadrado azul é a mesma que apareceu na rodada anterior.
  • Pressione L (letter match) se a letra que ouvir for a mesma que apareceu na amostra anterior.

No modo Standard, o jogo já começa com o Dual-2-back e automaticamente aumenta o nível (N-back) quando o índice de acertos supera 80%, e reduz o nível, quando o índice fica abaixo de 50% por três vezes.

O Dual do nome do jogo, vem do fato de que você está recordando dois estímulos - a posição do quadrado e a letra que ouviu. O 1-Back indica quantas rodadas você deve retornar e lembrar para decidir se a posição da amostra ou o som da letra coincide com a atual.

O Modo Standard

No Modo Standard (aquele acessado diretamente quando se pressiona a tecla de espaço para entrar no jogo) o jogo inicial no Dual 2-Back.

Este modo é mais desafiador que o manual, pois cada vez que seu índice de acertos chega a 80%, o nível é automaticamente aumentado (se estava no 2-back, passa para o 3-back) e, se o índice de acertos ficar abaixo de 50% três vezes, o nível é reduzido.

Em qualquer que seja o modo, há a possibilidade de visualizar um gráfico com seu desempenho. O gráfico mostra a variação da média diária do nível N-Back, ou seja, o nível 2-back tem peso 2, o 3-back peso 3 e assim por diante.


** O jogo não tem tradução para o português. Entretanto, isso não faz muita diferença, uma vez que deve-se apenas ouvir o som das letras e recordá-lo. Não é necessário entender o significado do que é dito.


Instalação do Brain Workshop

O Brain Workshop tem como dependência o avbin, que pode ser baixado aqui: http://code.google.com/p/avbin/

A instalação é feita através de um script dentro do próprio pacote:

tar -zxvf avbin-linux-x86-32-7.tar.gz
cd avbin-linux-x86-32-7/
sudo ./install.sh

O Brain Workshop pode ser baixado na área de downloads Linux do site e executado. Por ser um script Python, não necessita instalação. Apenas descompacte o arquivo e execute o script:

unzip brainworkshop-4.2.zip
cd brainworkshop
python brainworkshop.pyw

Aqui no openSUSE, ele já está disponível no Yast, mas o AVBin teve que ser instalado separadamente.

Seguem alguns screenshots do programa:




Abaixo, os tipos de jogo: o Position N-Back e o Audio N-Back, são os modos mais simples, estimulando apenas um sentido.



A tela de início do jogo, em modo Manual.

quinta-feira, 9 de abril de 2009

C++ para Linux - Code Blocks

Para os estudantes de programação que achavam não haver uma opção semelhante ao Dev-C++ para Linux, o Code::Blocks pode ser uma boa alernativa, sendo multiplataforme e tendo, inclusive, uma interface semelhante ao Dev-C++.





O programa fará algumas perguntas, como o compilador a ser usado, e a pasta onde salvar o projeto.





Por fim, a compilação e execução do programa exemplo, que pode ser acessada com a tecla F9.


Após a instalação, quando tentei executar o exemplo, não acontecia nada e aparecia a mensagem:

"teste - Debug" uses an invalid compiler. Probably the toolchain path within the compiler options is not setup correctly?! Skipping...
Nothing to be done.


Vá ao menu "Settings->Compiler and debugger" do codeblocks. Então selecione seu compilador na lista e escolha a aba "Toolchain executables".Agora configure o caminho dos binários do compilador, no meu caso em /usr/. Não adicione a pasta bin, pois o programa irá procurá-la na pasta informada (para /usr/bin, deve-se informar apenas /usr). Dependendo da distro usada, o nome do executável pode variar, como no caso do OpenSUSE



Esta solução foi estraída do fórum do codeblocks em http://forums.codeblocks.org/index.php?topic=8603.0