Arquivo para a categoria 'Tutorial'

Como fazer imãs de geladeira com os adesivos do GetGlue

Para aqueles usuários do GetGlue, eu transformei os adesivos que recebi em imãs de geladeira. Um usuário do Twitter (@oileoh) me perguntou como foi que eu fiz, assim, resolvi criar este pequeno tutorial.

Começamos com a aquisição de uma folha imantada (não sei como é o nome do material, mas se você procurar por folha para fazer imãs, você encontrará). Consiste de uma folha com um lado imantado e o outro lado colante.

Folha imantada

Agora precisamos da cartela do GetGlue :)

Cartela de adesivos

Observe que a folha imantada vem com um plástico branco, que deve ser retirado e será neste lado da folha que serão colados os adesivos.

Plástico que cobre o lado colante da folha

Retire os adesivos da cartela e cole-os na folha.

Adesivos colados

Agora vamos recortar os adesivos da folha.

Recortando os adesivos

Recortando os adesivos

Recortando ao redor do adesivo

Tenha cuidado ao recortar ao redor do adesivo. Utilizei uma tesoura comum para isto.

Observe que, como o corte da tesoura não é perfeito, ficam umas rebarbas no adesivo.

Adesivos com rebarbas

Para resolver isto, resolvi lixar (com uma lixa de metal para unhas), para deixar mais redondo.

Lixando o adesivo. Lembre-se de lixar sempre no mesmo sentido.

Pronto. Tendo lixado todos os adesivos, basta agora conseguir a geladeira para afixá-los :) .

Adesivos finalizados.

Jailbreak do meu iPod touch 1G com firmware 3.1.3

Nesta semana, tive uma desagradável surpresa: o botão Home do meu iPod touch deixou de funcionar. Tentei várias vezes, mas nada de querer funcionar. O meu não tinha jailbreak, nunca tinha feito pois não via necessidade para tal, mas com este problema tive de procurar uma solução.

A solução que acabei encontrando foi utilizar o aplicativo Kirikae, que tem como uma de suas funções permitir que se use o botão Sleep do iPod touch (ou até mesmos gestos na tela do aparelho) para fazer a função do botão Home. Mas, para tal, o aparelho tem de estar com o jailbreak e o Cydia instalado.

Procurei algumas formas de fazer o jailbreak e em quase todas era necessário, durante o procedimento, manter pressionados os botões Sleep e Home ao mesmo tempo, mas com o Home do meu aparelho danificado ficava difícil. Então acabei encontrando outra solução: utilizar o aplicativo Spirit. No site está descrito que o Spirit pode fazer o jailbreak de iPod touch, iPhone e iPad com firmware 3.1.2, 3.1.3 e 3.2. O meu iPod touch é da primeira geração e está com o firmware 3.1.3. O processo todo descrevo abaixo:

  1. Conectei o iPod touch no computador;
  2. Abri o iTunes (tem de estar na versão mais recente) e fiz um sincronismo (para que fosse feito o backup, o que é muito importante caso desse errado :) );
  3. Terminado o sincronismo, fechei o iTunes;
  4. Baixei o Spirit para Windows;
  5. Executei o arquivo Spirit.exe;
  6. Apareceu uma tela com informações sobre meu aparelho (iPod touch 1G e iPhone OS 3.1.3) e um botão para realizar o jailbreak;
  7. Pressionei o botão e aguardei;
  8. O programa informou que o jailbreak tinha sido bem sucedido e apareceu um botão de Quit (que eu cliquei :) );
  9. Depois disso o iPod touch reiniciou e apareceu uma tela de fundo colorida com uma barra de progresso;
  10. Quando esta foi completada o aparelho estava completamente funcional;
  11. Executei o aplicativo Cydia, que atualizou sua base de dados e reiniciou o aparelho;
  12. Executei o Cydia mais uma vez e desta vez fui em Search e procurei pelo aplicativo Kirikae;
  13. Encontrei-o e o instalei. Quando a instalação terminou foi solicitado a reinicialização do aparelho;
  14. Após reiniciado, executei o Kirikea e, na opção Control, configurei para que, quando pressionar o botão Sleep ou pressionar por um tempo na barra de status (onde está o relógio), ele chame o Kirikae e eu possa voltar para o Springboard (o nome dado à tela onde estão os aplicativos do iPod touch) do iPod.

Executando Java no Maemo (Nokia N800) – Parte 3 – AWT

Dando continuidade aos artigos sobre Java no Maemo, abordaremos, neste, o uso da biblioteca gráfica AWT para desenvolvimento de aplicações Java.

Antes de mais nada, aconselho a leitura dos dois artigos anteriores [1] [2]. Se você já os leu, e estava ansiosamente esperando pela continuação :) , vamos lá.

Antes de executarmos nosso exemplo no N800, temos de instalar a biblioteca AWT. Mas, para isso, temos de ter acesso ao root no Maemo, para poder instalar o AWT utilizando o apt-get. Para isso, pode-se ler este tópico do wiki do próprio Maemo ou seguir os passos abaixo:

  1. O repositório maemo Extras esteja habilitado;
  2. Instale o aplicativo rootsh;
  3. Depois de instalado, abra o X Terminal e digite: sudo gainroot, para obter acesso de root;
  4. Execute agora o apt-get: apt-get classpath-common, para instalar o pacote com suporte ao AWT.

Agora vamos criar o nosso exemplo.

import java.awt.*;
import java.awt.event.*;

public class Primeiro extends Frame implements ActionListener
{
    private Button btnSair;
    private Label lblTexto;

    public Primeiro()
    {
        initComponents();
    }

    private void initComponents()
    {
        lblTexto = new Label("Bem-vindo ao Java com AWT no Maemo");
	btnSair = new Button("Sair");

        setLayout(null);
	setTitle("Primeiro");
        //labels
        addComponent(lblTexto, 20, 40, lblTexto.getText().length() * 10, 20);
        //botoes
        btnSair.addActionListener(this);
        addComponent(btnSair, 160, 230, 57, 24);
    }

    private void exitForm()
    {
        System.exit(0);
    }

    private void addComponent(Component obj, int x, int y, int width, int height)
    {
    	obj.setBounds(x, y, width, height);
    	add(obj);
    }

    public void actionPerformed(ActionEvent evt)
    {
	if(evt.getActionCommand().equals("Sair"))
    	{
    	    exitForm();
    	}
    }

    public static void main(String args[])
    {
        new Primeiro().setVisible(true);
    }
}

Digite o exemplo em seu edito de texto preferido, salve-o como Primeiro.java e compile-o (no computador):

javac Primeiro.java

Após a compilação será criado o arquivo Primeiro.class que deve ser copiado para o cartão de memória que será usado no N800 (em meu caso, é um cartão de 4 GB, e copiei o arquivo para o diretório java). Insira o cartão no N800 e abra mais uma vez o X Terminal. Digite:

cd /media/mmc1/java
java Primeiro

Uma tela, como a da figura abaixo, deve aparecer agora no N800.

Java AWT

Java AWT

Nada mais é que uma tela em que são exibidos um label contendo um texto e um botão de Sair de programa. Pronto, agora já podemos desenvolver aplicações em Java com AWT para  Maemo.

Bons códigos :) !

Executando Java no Maemo (Nokia N800) – Parte 2 – SWT

Bom, como eu havia dito, voltamos com a segunda parte do tutorial Executando Java no Maemo, mas agora focando no uso de interface gráfica, que é o que mais desejamos :) .

Conforme o site do Jalimo, eles recomendam o uso do Eclipse SWT. No caso do OpenMoko (segundo o mesmo site) este também executa aplicações com o AWT e Swing.

O SWT (Standard Widget Toolkit) é uma biblioteca de classes de interface gráfica desenvolvidas pela fundação Eclipse, a mesma que mantém a IDE Eclipse, e está disponível para vários sistemas operacionais, entre eles, Windows, Linux, MacOS etc.

Antes de criar o exemplo para teste, vamos baixar o pacote do SWT para o computador, pois, para compilar o exemplo no computador, precisaremos desta biblioteca. Vá ao site do SWT e procure por Releases, versão Stable (Figura 01).

Figura 01

Figura 01

Clique no link do seu sistema operacional (escolhi o Windows) que uma nova página se abrirá (Figura 02).

Figura 02

Figura 02

Clique na seta verde para baixar o arquivo (swt-3.4-win32-win32-x86.zip, para Windows; swt-3.4-gtk-linux-x86.zip, para Linux). Após baixado, descompacte o arquivo no diretório de sua escolha (exemplo, C:\javaN800\swt). Dentro do diretório, haverá um arquivo com nome swt.jar, este é a biblioteca SWT que será utilizada para compilar nosso exemplo.

Agora vamos criar a classe que será executada no N800. Digite o texto abaixo no editor de sua preferência:

import org.eclipse.swt.*;
import org.eclipse.swt.layout.*;
import org.eclipse.swt.widgets.*;

public class SimpleSwtSample
{
	public static void main(String[] args)
	{
		// pega o display
		Display display = Display.getDefault();
		// cria a janela principal da aplicacao
		final Shell shell = new Shell(display);
		shell.setLayout(new RowLayout(SWT.VERTICAL));
		// cria e adiciona um Label
		Label label = new Label(shell, SWT.CENTER);
		label.setText("Ola Maemo N800!");
		// cria e adiciona um Label para
		// motrar as informacoes do sistema
		Label lblSistema = new Label(shell, SWT.CENTER);
		lblSistema.setText(info());
		// cria e adiciona um Button
		Button button = new Button(shell, SWT.CENTER);
		button.setText("Fechar");
		// adicionar um Listener para fechar a aplicação
		button.addListener(SWT.Selection, new Listener()
		{
			public void handleEvent(Event arg0)
			{
				shell.dispose();
			}
		});
		// abre a janela principal
		shell.open();
		// inicia a interface grafica
		while(!shell.isDisposed())
		{
			(!display.readAndDispatch())
			{
				display.sleep();
			}
		}
	}

	public static String info()
	{
		String versaoJava = System.getProperty("java.version");
		String nomeSO = System.getProperty("os.name");
		String versaoSO = System.getProperty("os.version");
		return "Versao Java: " + versaoJava + "\nS.O.: " + nomeSO + " " + versaoSO;
	}
}

Salve-o como SimpleSwtSample.java, no diretório onde foi descompactado o SWT baixado e execute o comando abaixo:

javac -cp swt.jar SimpleSwtSample.java

Serão gerados dois arquivos, SimpleSwtSample.class e SimpleSwtSample$1.class, que devem ser copiados para um diretório no cartão de memória que será inserido no N800 (em meu caso o cartão que foi usado no primeiro tutorial, no diretório java).

Insira o cartão no N800, abra o X Terminal e digite:

cd /media/mmc1/java
java -cp /usr/share/java/swt-gtk.jar: SimpleSwtSample

O resultado deverá ser a tela abaixo:

Figura 01

Figura 03

A aplicação só faz escrever na tela uma mensagem de Olá Mundo e algumas informações sobre o sistema onde está instalado o Java. Ao se clicar no botão Fechar ou no X no canto superior direito a aplicação será fechada. Ah, e se você acha que é somente isso que dá para fazer com Java no Maemo, veja as telas do segundo exemplo, disponível no site do Jalimo.

Estes dois exemplos foram retirados do site do Jalimo, o primeiro eu modifiquei só um pouco e o segundo é tal como está lá. Estou disponibilizando para download o arquivo JavaMaemoSWT.zip (disponível no Box.net  e no Mediafire), tanto os arquivos já compilados como os fontes. Fiquem a vontada para se divertir.

Ah, e antes que em me esqueça, na próxima parte deste tutorial, irei mostrar como rodar aplicativos com o toolkitt grático AWT.

Até lá.

Convertendo vídeos para o Nokia N800 e iPod touch com legendas utilizando o Avidemux

Eu gosto de assistir algumas séries em meu iPod touch. Só que para assistir, geralmente, tenho de converter os vídeos para um formato que o iPod reconheça. Só que eu também possuo um Nokia N800, que também pode reproduzir vídeos (e com a tela que ele tem, é uma tentação maior ainda :) ).

Dia destes, num fórum em que participo, houveram algumas indagações a respeito de vídeos no N800. E eu resolvi que queria converter um vídeo que rodasse tanto no N800 quanto no iPod, assim em poderia matar dois coelhos com uma cajadada só :) .

Vasculhando bastante pela Internet, escolhi, depois de muita luta, uma ferramenta gráfica que rodasse tanto no Windows quanto no Ubuntu para a conversão dos vídeos. E a ferramenta escolhida foi o Avidemux. Sua versão atual é a 2.4.4 e está disponível para Windows, Linux e MacOS.

Baixe a versão para seu SO e depois instale. No meu micro de casa, que roda Windows Vista, baixei a versão 2.4.4 sem o instalador, assim, é só descompactar em um diretório qualquer e executar o avidemux2_gtk.exe. Esta é a tela inicial do programa.

Figura 01

Figura 01

Vamos agora abrir um vídeo no formato AVI, sem legendas, com áudio em inglês. Copie-o em uma pasta de sua preferência (por exemplo, C:\videos) dando-lhe um nome apropriado (exemplo, videoTeste.avi) e procure uma legenda para ele. No caso do vídeo que estou usando procurei uma legenda em português na Internet e troquei seu nome para videoTeste.srt (testei a conversão com legenda em formato .srt, mas o software permite o uso de outros formatos de legendas) e a copiei para o diretório onde está o vídeo.

O vídeo possui as seguintes especificações:
Container: AVI - Tamanho: 349 MB
Codec de vídeo: MPEG-4 Visual (XviD) (Streaming Video@L1) (BVOP) – 875kbps – 624 x 352 (16/9) – 23,976 fps
Codec de áudio: MPEG Audio (MP3) (Version 1) (Layer 3) (Joint stereo) – 112 kbps – 48 KHz – 2 canais

Vamos convertê-lo para MP4, com codec de vídeo MPEG-4, codec de áudio AAC e legendas em português embutidas. Clique em File->Open e vá até o diretório onde está o vídeo (Figura 02).

Figura 02

Figura 02

Escolha o vídeo e clique em Open. A tela que aparece (Figura 03) avisa que o arquivo contém áudio VBR em MP3 e pergunta se você gostaria de criar um mapa de tempo do áudio para manter a sincronia entre áudio e vídeo do arquivo.

Figura 03

Figura 03

Clique em Build Time Map e aguarde. Quando terminar uma outra tela se abrirá (Figura 04) perguntando se deseja fazer o unpack do bitstream do vídeo. Clique em Yes e aguarde mais um pouco.

Figura 04

Figura 04

Quando terminar o vídeo já estará carregado no programa (podendo, inclusive, até ser assistido) pronto para edição (ah, esqueci de dizer, o Avidemux, não é só uma ferramenta de conversão de vídeo, mas uma ferramente de edição de vídeo).

Figura 05

Figura 05

Vamos agora convertê-lo para o formato que desejamos. Na caixa de seleção Format, escolha MP4. Assim que for selecionado, as caixas de seleção Video e Audio ficarão acessíveis. Para escolher o codec de vídeo clique na caixa de seleção Video e escolha MPEG-4 ASP (Xvid4) e, para o codec de áudio, na caixa de seleção Audio escolha AAC (FAAC) (Figura 06).

Figura 06

Figura 06

Agora vamos configurar cada codec separadamente. Abaixo da caixa de seleção Video, clique no botão Configure. Será exibida uma tela (Figura 07) com quatro abas: Main, Motion & Misc, Quantization e Second Pass. Na aba Main (Figura 08), em Encoding Type, escolha Single Pass – Bitrate, em Target bitrate (kb/s) preencha com 800 (você pode escolher um valor maior, mas quanto maior, maior será o tamanho final do vídeo); na aba Motion & Misc (Figura 09), em Number of B-frames, preencha com 0; e clique em OK. Agora clique no botão Filters, logo abaixo da caixa de seleção Video.

Figura 07

Figura 07

Figura 08

Figura 08

Figura 09

Figura 09

Nas abas que aparecem na lateral esquerda, clique na Subtitles. Aparecerá uma caixa com vários formatos de subtitles (legendas) que podem ser adicionadas ao vídeo, clique na que tem o nome Subtitler (para as legendas .srt) e clique no sinal de mais que fica embaixo da caixa (Figura 10).

Figura 10

Figura 10

Quando clicado, aparecerá uma tela para preencher com a localização do arquivo de legenda (.srt), qual a fonte utilizada, bem como sua cor e posição na tela.

Figura 11

Figura 11

Assim, clique no botão Browse, ao lado da caixa de texto Subtitle file, para procurar pela legenda. Uma tela se abre com a opção para escolher e quando for selecionada clique em Open.

Figura 12

Figura 12

Caso a fonte TTF já não esteja selecionada, pode-se procurar por ela no computador bastando, para isso, clicar no botão Browse ao lado da caixa de texto Font (TTF). No meu caso, a fonte TTF Arial já estava escolhida, mas poderia ser qualquer outra. O Encoding você pode deixar o que está, ou escolher outra, desde que seja a mesma da codificação da legenda. A cor, por padrão, é o branco, mas, se você desejar, pode alterá-la também, bastando clicar no botão Select Color. Agora vamos posicionar nossa legenda no vídeo. Clique no botão Set Size and Position.

Figura 13

Figura 13

Na caixa de texto Font size, escolhemos o tamanho da fonte para o texto (escolhi 22). Na barra de rolagem horizontal (superior) você pode ‘navegar’ pelo vídeo para ver onde as legendas ficarão (que são demonstradas por aquelas três barras listradas em cima do vídeo) e na barra vertical (lado direito) você as posiciona no vídeo em relação à altura do mesmo (Figura 13). Tendo terminado, clique em OK. Clique novamente no botão OK da tela Subtitler. E se você clicar no botão Preview pode ‘navegar’ no vídeo já mostrando como ficará com a legenda (Figura 14). Clique no botão Close.

Figura 16

Figura 14

Agora vamos configurar o áudio. Logo abaixo da caixa de seleção Audio, clique em Configure. Na caixa de seleção Bitrate, escolha a taxa de bits do seu áudio (eu escolhi 96). Clique em OK.

Figura 15

Figura 15

E agora clique no botão Filters logo abaixo do botão Configure que você clicou antes. Clique na caixa de marcação do lado direito de Resampling (Hz) e agora preencha a caixa de texto com 44100. Clique em OK.

Figura 16

Figura 16

Agora podemos iniciar a conversão do nosso vídeo. Para isso, clique em File->Save->Save Video. Escolha o local onde salvar o arquivo e dê a ele um nome com a extensão .mp4 (em meu caso escolhi salvá-lo em C:\videos com o nome de videoTeste.mp4 :) ). Clique em Save e espere. Esta parte pode demorar, dependendo do computador que você tenha (Figura 17).

Figura 17

Figura 17

Quando tiver terminado, uma tela será mostrada informando que a conversão terminou (Figura 18). Agora é só copiar o vídeo para o N800 (no meu caso, consegui rodar o vídeo utilizando o MPlayer) ou para o iPod touch (pode ser um iPhone) para se divertir :) .

Figura 18

Figura 18

O vídeo convertido ficou com as seguintes características:
Container: MP4 - Tamanho: 311 MB
Codec de vídeo: MPEG-4 Visual (Simple@L3) – 799kbps – 624 x 352 (16/9) – 23,976 fps
Codec de áudio: AAC (Version 4) (LC) – 96 kbps – 44,1 KHz – 2 canais

Executando Java no Maemo (Nokia N800) – Parte 1

Depois de haver comprado o Nokia N800, procurei alguma forma de desenvolver para ele. A primeira coisa que pensei foi desenvolver algo em Java, pois além de ser a linguagem em que eu mais programei, queria testar se uma das minhas aplicações rodaria nele. A outra linguagem em que pensei foi Python, pois estou estudando-a e já fiz até alguns scripts que me foram bem úteis no notebook.

Após a escolha pelo Java inicialmente, resolvi procurar uma JVM para o N800 (na realidade que rode no Maemo, que é o sistema operacional que roda tanto no N800 quanto no N810).

A JVM que encontrei foi a Jalimo, que é um projeto com o intuito de disponibilizar uma JVM para dispositivos rodando Maemo ou OpenMoko. É baseada nos projetos CacaoJVM, JamVM e GNU Classpath.

Instalando no N800

Antes de instalar, devemos colocar o N800 no modo “Red Pill” ou “Pílula Vermelha” [1] que permite a instalação destes pacotes adicionais que pulam certos requisitos de segurança do sistema. Para ativar, proceda assim:

  1. Abra o Gerenciador de aplicativos;
  2. Clique em Menu->Ferramentas->Catálogo de aplicativos;
  3. Clique em Novo e preencha Endereço da Web com matrix e clique em Cancelar (Figura 1);
  4. Clique no botão Red e depois em Fechar (Figura 2).
screenshot06

Figura 1

screenshot07

Figura 2

Agora, vamos à instalação do Jalimo. Abrimos o navegador do N800 e digitamos o endereço https://wiki.evolvis.org/jalimo/index.php/Maemo.

Figura 3

Figura 3

No site aparecem várias setinhas verdes com o texto Click to install (Figura 3). Clicamos na primeira que está no início da página; esta irá instalar o Jalimo e mais o SWT bem como uma aplicação gráfica de exemplo. Na tela que aparecer (Figura 4) clique em Abrir e espere o Gerenciador de aplicativos ser aberto.

Figura 4

Figura 4

Assim que o Gerenciador for aberto basta aguardar um pouco que uma outra tela irá aparecer (Figura 5) informando que, para o software ser instalado, o catálogo correspondente precisa ser instalado. Se desejar saber qual catálogo está sendo adicionado basta clicar em Detalhes.

Figura 5

Figura 5

Clicamos em OK e o software começará a ser instalado. Outra tela se abrirá agora perguntando se o aplicativo jalimo-swt-example 0.1.3-0maemo~chinook-r0 pode ser instalado (Figura 6). Clicamos em OK para confirmar a instalação.

Figura 6

Figura 6

Aparecerá uma tela de aviso (Figura 7) e mais uma vez clicamos em OK e esperamos o processo de instalação ser concluído. Quando terminado aparecerá uma tela de confirmação de sucesso da instalação (Figura 8), basta clicar em OK e o Jalimo já estará instalado.

FIgura 7

FIgura 7

Figura 8

Figura 8

Testando com uma aplicação a ser executada no terminal

Para este teste criei uma classe que nada mais faz além de mostrar uma mensagem de texto e mais algumas informações sobre o sistema onde o java está instalado. Copie o texto abaixo no editor de sua preferência, salve-o como Teste.java e depois compile-o: javac Teste.java.

public class Teste
{
	public static void main(String args[])
	{
		String versaoJava = System.getProperty("java.version");
		String nomeSO = System.getProperty("os.name");
		String versaoSO = System.getProperty("os.version");

		System.out.println("Ola mundo Maemo!");
		System.out.println("Versao Java: " + versaoJava);
		System.out.println("S.O.: " + nomeSO + " " + versaoSO);
	}
}

Copie o arquivo gerado, Teste.class, para o N800 (eu copiei para um cartão de memória, dentro de um diretório java). Insira o cartão no N800 e execute o X Terminal (Menu de aplicativos->Utilitários->X Terminal). Quando o terminal abrir (Figura 9) digite:

cd /media/mmc1/java
java Teste

Figura 9

Figura 9

A saída será (Figura 10):

Ola mundo Maemo!
Versao Java: 1.5.0
S.O.: Linux 2.6.21-omap1

Figura 10

Figura 10

Onde mmc1 é o cartão de memória que fica no slot externo (o outro é o que fica na parte interna, junto da bateria do N800). Somente uma observação: ao invés de se digitar java Teste, podemos digitar também: cacao Teste, que é o nome interno da JVM da Jalimo.

Na segunda parte irei explicar como rodar uma aplicação gráfica em Java utilizando para isso o SWT. Até lá então.

Fontes:
[1] http://wiki.maemo.org/Red_Pill_mode

8.108.10

The Ubuntu Counter Project - user number # 21175
Livros só mudam pessoas

Atualizações Twitter

Comentários

Ezequiel em Quem sou eu
Fábio Medeiros em Quem sou eu
Ezequiel em Quem sou eu
Fábio Medeiros em Livros – ePub
Fábio Medeiros em Problemas com a tela do n…

Arquivos

Categorias


Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 112 outros seguidores

%d bloggers like this: