De que se trata o artigo:

Este artigo apresenta a utilização de dados multimídia em aplicações Java ME. Para exemplificar estes recursos, são utilizados imagens simples e dinâmicas, execução de sons nativos do aparelho celular e sons de arquivos, e por fim, reprodução de arquivos de vídeo e animação. Em alguns momentos, a Mobile Media API foi utilizada.


Em que situação o tema é útil:

Este artigo pode ser útil a acadêmicos e estudantes que desejam utilizar dados multimídia em suas aplicações, bem como a desenvolvedores mais experientes que desejam fazer uso destes recursos.

Resumo DevMan:

Este artigo apresenta de forma simples a utilização dos recursos básicos de multimídia em aplicações Java ME. Dessa forma, pode ser utilizado por programadores iniciantes na tecnologia, uma vez que o exemplo apresentado é desenvolvido passo a passo, procurando facilitar ao máximo o desenvolvimento do aplicativo completo. Aos usuários avançados, é possível visualizar em poucas linhas de código a apresentação e reprodução de recursos multimídia.

Autores: Robison Cris Brito e Ricardo Ogliari

Multimídia é um termo que se refere à tecnologia digital utilizadas para criar, manipular, armazenar e pesquisar conteúdos que foge do tradicional conteúdo texto. No início, esse recurso era quase que exclusivo dos programas Desktop, já que a Internet na época era muito limitada, sendo que a maioria das pessoas acessavam a rede utilizando modem que chegavam no máximo a 56 Kpbs, inviabilizando com isso a transmissão de vídeos, sons e muitas vezes até imagens maiores.

Porém, a informática evoluiu muito daquela época para os dias de hoje, assim como as redes de comunicação. Hoje é possível assistir vídeos online em sites de compartilhamento de conteúdo, ouvir rádios de todas as partes do mundo através da Internet, e até mesmo assistir algumas emissoras de TV, isso graças à evolução da rede de comunicação, aos softwares de compactação de vídeo, som e imagem, e principalmente aos computadores, que deixaram de ser dispositivos limitados e passaram a ser fonte de entretenimento.

Da mesma forma, a telefonia celular evoluiu muito, e contamos hoje com aparelhos que são verdadeiros computadores, com alta velocidade de processamento, grande capacidade de armazenamento, telas grandes e de alta resolução para visualização de conteúdo, alto falantes polifônicos para reprodução de sons ainda mais sofisticados, inclusive sons estéreos e com efeitos 3D, sem contar com o acesso a uma rede cada vez mais rápido, onde não é necessário conexão via cabo ou wi-fi, dessa forma, podemos ter acesso a rede de dados da operadora com custo cada vez menor.

Na Figura 1 são apresentados alguns exemplos de telas de jogos com recursos multimídia disponíveis para aparelhos celulares hoje.

Figura 1. Exemplos de jogos com recursos multimídia utilizados em aplicações para celular.

Nesse novo cenário, os aplicativos para celulares podem utilizar recursos até então presentes apenas nos computadores mais avançados, e com certeza o maior de todos os recursos é a integração das várias mídias: som, vídeo e imagem, que juntas permitem o desenvolvimento de softwares e jogos cada vez mais atraentes.

E na grande revolução que estamos vivendo na telefonia móvel, uma linguagem tradicional ainda recebe destaque: a linguagem Java ME, esta madura, estando no mercado a mais de 10 anos.

Com Java ME é possível desenvolver aplicativos para vários tipos de dispositivos, incluindo aparelhos celulares (dos antigos celulares que ainda não contavam com câmera digital, bluetooth ou recursos multimídia) até os mais modernos smartphones, que dispõem de inúmeros sensores, receptores GPS, conectividade via bluetooth, wi-fi, GPRS, infravermelho, cabo, cartão de memória, etc, etc e etc.

Além disso, esta tecnologia permite o desenvolvimento de aplicações para uma grande quantidade de outros dispositivos limitados, porém, nem sempre pequenos, como a TV Digital, os Smart Cards, a utilização em circuitos digitais com tecnologias como TINI, até sua utilização em brinquedos, como Lego Mindstorm (http://mindstorms.lego.com/), este apresentado na Figura 2.

Figura 2. Configuração humanóide do Lego Mindstorm.

Assim, este artigo apresenta a utilização de dados multimídia em aplicações para celular utilizando a tecnologia Java ME, apresentando como se pode tirar proveito de recursos como imagens, vídeos e sons em aplicativos móveis.

Dados multimídia em aplicações para dispositivos móveis

Dentre os dados multimídias existentes, com certeza a mais antiga e mais fácil de utilizar são as imagens. Hoje, existe uma grande quantidade de tipos de arquivos de imagens, destacando-se os formatos JPEG, BMP, GIF e PNG. Porém, o formato aconselhável para aplicações mobile é o PNG, por se tratar de um formato de imagem multiplataforma, compatível com a grande maioria dos aparelhos celulares, inclusive os mais antigos, por possuir um algoritmo de compressão de imagem muito avançado, lembrando que, principalmente os aparelhos mais antigos, possuem limitação no poder de processamento, e mesmos os aparelhos mais modernos, ao trafegar dados na rede, costumam ser tarifados pela quantidade de bytes trafegados, assim, quanto menor os arquivos de imagem, barato e rápido será o aplicativo móvel.

Para apresentar um arquivo de imagem, por exemplo, com a extensão PNG, pode ser utilizada a classe Image, que se encontra dentro do pacote java.io presente no Java MicroEdition. A partir da instância desta classe, é possível passar esse objeto por parâmetro aos componentes visuais que esperam imagens, como por exemplo, os componentes tradicionais do pacote de componentes visuais javax.microedition.lcdui, destacando-se o componente ImageItem, List e ChoiceGroup (que são componentes de lista, os quais possuem a opção de mostrar imagem representando cada um dos elementos da lista), além de poder apresentar esta imagem diretamente em um componente Form ou Alert.

Outra forma de utilizar imagens em Java ME é a partir do Canvas, sendo este uma biblioteca para desenho de baixo nível (pixel a pixel) na tela do celular. Com esta biblioteca, que tem um funcionamento muito semelhante ao Canvas de outras linguagens de programação, é possível desenhar uma Image na tela e também desenhar elementos como pontos, círculos, linhas, quadrados, polígonos, além de poder pintar e colocar efeitos de preenchimento. Esta estratégia é a favorita para os desenvolvedores de jogos.

Também é possível com canvas alternar as imagens apresentadas na tela do aparelho celular, fazendo com que alternem entre 10 e 15 vezes por segundo. Essa rápida mudança de imagens pode causar o efeito de uma animação, ou vídeo, permitindo a movimentação de elementos da tela e inclusive a interação desses elementos com o usuário.

...
Quer ler esse conteúdo completo? Tenha acesso completo