javax.microedition.amms

Propaganda
Mobile Media API - JSR 135
Advanced Multimedia Supplements - JSR 234
Grupo 5
Wanessa Machado do Amaral
Everton Luiz de Almeida Gago Júnior
1
Advanced Multimedia Supplements - JSR
234
z
z
z
Estabelecido a partir da Mobile Media API (MMAPI – JSR
135).
Novos controles em javax.microedition.amms.control e sub
pacotes.
Novas extensões em javax.microedition.amms
2
Pacotes
z
javax.microedition.amms
z
javax.microedition.amms.control
z
javax.microedition.amms.audio3d
z
javax.microedition.amms.audioeffect
z
javax.microedition.amms.camera
z
javax.microedition.amms.imageeffect
z
javax.microedition.amms.tunner
3
javax.microedition.amms
z
Module
z
EffectModule
z
SoundSource3D
z
MediaProcessor
z
GlobalManager
z
MediaProcessorListener
z
Spectator
4
Module
z
A interface Module deriva da interface Controllable,
permitindo adicionar ou remover Players e canais de MIDI.
−
Um objeto Module não pode ser obtido a partir de qualquer
lugar, geralmente as sub-interfaces EffectModule e
SoundSource3D são utilizadas.
−
EffectModule permite aplicar uma seqüencia de efeitos
comuns, otimizando o processamento de áudio.
−
SoundSource3D representa uma fonte sonora.
5
MediaProcessor
z
z
É uma interface de pós-processamento que deriva da
interface Controllable, e destina-se a diferentes tipos de
mídia.
Estados do MediaProcessor:
−
UNREALIZED – Não está pronto para tratar entrada, e saída ainda não
definida.
−
REALIZED – Pronto para iniciar, porém nenhuma transformação está em
curso.
−
STARTED – Iniciado.
−
STOPPED – Interrompido temporariamente.
−
UNKNOWN – Comprimento da mídia ou progresso do tratamento é
desconhecido.
6
MediaProcessorListener
z
z
É uma interface utilizada para receber eventos gerados por
um MediaProcessor.
Estados:
−
PROCESSING_ABORTED – Transformação interrompida, e o estado do
MediaProcessor é UNREALIZED.
−
PROCESSING_COMPLETED - Transformação completa, e o estado do
MediaProcessor é UNREALIZED.
−
PROCESSING_ERROR – Tratamento interrompido devido a erros, estado
do MediaProcessor é REALIZED.
−
PROCESSING_STARTED – Indica que o MediaProcessor foi iniciado e está
processando a entrada.
−
PROCESSING_STOPPED – Indica que o MediaProcessor foi pausado.
−
PROCESSING_REALIZED – O estado do MediaProcessor foi transferido de
UNREALIZED para REALIZED.
7
GlobalManager
z
z
A classe GlobalManager trata a criação de EffectsModules,
SoundSource3D e MediaProcessor´s.
Exemplos:
−
EffectModule em = GlobalManager.createEffectModule();
−
MediaProcessor mp = GlobalManager.createMediaProcessor(String
inputType);
−
SoundSource3D ss = GlobalManager.createSoundSource3D();
8
Spectator
z
Classe que implementa a interface Controllable, e pode ser
obtido a partir da classe GlobalManager
(GlobalManager.getSpectator()). A classe Spectator
representa um ouvinte no espaço virtual acústico.
9
javax.microedition.amms.control
z
AudioFormatControl
z
ContainerFormatControl
z
EffectControl
z
EffectOrderControl
z
FormatControl
z
ImageFormatControl
z
MIDIChannelControl
z
PanControl
z
PriorityControl
z
VideoFormatControl
1
0
ContainerFormatControl
z
z
Interface que deriva de FormatControl, permitindo controlar
e configurar o container de formatos, especificando o
formato de arquivos de áudio-vídeo, através do método
setFormat(String).
Se um Player ou um MediaProcessor provê um
ContainerFormatControl, este provê um
AudioFormatControl e um VideoFormatControl.
1
1
FormatControl
z
z
Formatos são alterados quando a mídia é capturada de um
player, ou, se o mesmo sofrer alteração durante o
processamento da mídia por um MediaProcessor.
A interface FormatControl possui métodos para especificar
os parâmetros e configurações que afetam formatos.
−
String format = getFormat();
−
setFormat(String format);
1
2
AudioFormatControl
z
z
Interface que deriva de FormatControl, responsável por
gerenciar configurações e formatos de áudio, adicionando
codec para diferentes formatos de mídia.
Configurando registro de áudio MP3 para 128 kbps:
AudioFormatControl format = (AudioFormatControl)
player.getControl(“AudioFormatControl”);
format.setFormat(“audio/mpeg”);
format.setParameter(FormatControl.PARAM_VERSION_TYPE, MPEG1_layer_3”);
format.setParameter(FormatControl.PARAM_BITRATE, 128000);
1
3
EffectControl
z
z
É uma interface para controlar filtros abstratos com
diferentes configurações. Individualmente, os efeitos
podem ter vários parâmetros.
Valores de Escopo
−
SCOPE_LIVE_AND_RECORD – Constante utilizada para identificar partes
do efeito.
−
SCOPE_LIVE_ONLY – Constante utilizada para identificar a parte ativa do
efeito (parte apresentada na tela).
−
SCOPE_RECORD_ONLY – Constante utilizada para identificar partes dos
registros de efeitos.
1
4
EffectOrderControl
z
z
É uma interface projetada para especificar a ordem dos
efeitos representados por EffectControls.
Exemplo:
−
Int eo = getEffectOrder(EffectControl effect);
−
EffectControls ec[] = getEffectOrders();
−
Int eo = setEffectOrder(EffectControl effect, int order);
1
5
MIDIChannelControl
z
z
MIDIChannelControl é um controle que oferece acesso a
canais de MIDI especificos, essencialmente este provê
funcionalidades por canal, não por player.
Exemplos:
−
Control c = getChannelControl(String controlType, int channel);
−
Control c[] = getChannelControls(int channel);
1
6
PanControl
z
z
É uma interface que manipula o Player em uma saída estéreo. Se a
entrada também for estéreo, este controla o balanço entre os canais.
Configuração:
No caso de fonte mono, o plano entre o canal esquerdo e direito pode
ser especificado usando um valor inteiro entre -100 e 100.
z
Balanço:
No caso de fonte estéreo o balanceamento entre o canal esquerdo e
direito pode ser especificado utilizando um valor inteiro entre -100 e
100.
z
Métodos:
−
int pan = getPan();
−
setPan(int pan);
1
7
PriorityControl
z
z
z
É uma interface para manipular a prioridade do Player em
relação a outros Players.
Métodos:
−
int priority = getPriority();
−
setPriority(int priority);
A prioridade pode variar entre 0 e 100, o valor padrão
assumido é 50.
1
8
javax.microedition.amms.control.audio3d
z
CommitControl
z
DistanceAttenuationControl
z
LocationControl
z
ObstructionControl
z
OrientationControl
1
9
CommitControl
z
z
Provê um mecanismo que habilita vários parâmetros de
áudio para que sejam atualizados simultaneamente. Se
suportado, este pode ser obtido a partir de um
GlobalManager.
Exemplo:
CommitControl cc = (CommitControl)
GlobalManager.getControl(“javax.microedition.amms.control.audio3d.CommitC
ontrol”);
2
0
DistanceAttenuationControl
z
z
É uma interface que controla a forma em que o som de
uma determinada origem sofre atenuação, se existir
suporte para som, este, pode ser obtido através de um
SoundSource3D.
Exemplo:
DistanceAttenuationControl dac = (DistanceAttenuationControl)
SoundSource3D.getControl(“javax.microedition.amms.control.audio3d.
DistanceAttenuationControl”);
2
1
LocationControl
z
z
LocationControl é uma interface que manipula a localização
de um objeto no espaço virtual acústico.
Valores Padrão:
−
X=0
−
Y=0
−
Z=0
2
2
ObstructionControl
z
Provê um mecanismo que controla o nível de um sinal
sonoro de sua origem para o Spectator. Este provê a
capacidade de filtrar (atenuar) a alta freqüência de
componentes de um sinal específico.
2
3
OrientationControl
z
z
É uma interface que manipula a orientação de um objeto no
espaço virtual.
Orientação é a representação da direção no espaço virtual
acústico, e é definida em rotação de ângulos sobre uma
coordenada.
2
4
javax.microedition.amms.control.audioeffect
z
AudioVirtualizerControl
z
ChorusControl
z
EqualizerControl
2
5
AudioVirtualizerControl
z
É um efeito para virtualizar canais de áudio. O
comportamento deste efeito é dependente do número dos
mesmos disponíveis no Player. No caso de um Player
estéreo, este efeito é utilizado quando a alargamento de
banda.
2
6
ChorusControl
z
z
z
ChorusControl é uma interface que manipula as
configurações de áudio de um efeito chamado chorus, e
seu caso especial flanger.
Chorus é um grupo de fontes sonoras semelhantes,
reproduzindo o mesmo som.
Flanger é um caso especial de chorus. Duas fontes
semelhantes são reproduzidas próximas uma da outra,
gerando um efeito com som parecido ao de um avião a
jato.
2
7
EqualizerControl
z
z
EqualizerControl é um áudio EffectControl que manipula as
configurações de equalização para um ou mais Players. Equalizadores
são normalmente utilizados por duas razões.
−
Compensar a freqüência de resposta de um sistema para tornar o som mais
natural;
−
Criar efeitos a partir do som.
Essa interface permite a fonte sonora ser filtrada através de um
equalizador. O equalizador pode ser configurado de três formas
diferentes:
−
Utilizando pré-configuração de graves;
−
Utilizando pré-configurações e controles agudos;
−
Fixação de faixas individuais de freqüência.
2
8
javax.microedition.amms.control.camera
z
CameraControl
z
ExposureControl
z
FlashControl
z
SnapshotControl
z
ZoomControl
2
9
CameraControl
z
z
CameraControl gerencia as funções do dispositivo de
câmera. Quando um player iniciar a captura de stream de
uma câmara, os dados são fornecidos ao CameraControl
através dos métodos getControl() e getControls().
Métodos:
−
int getVideoResolution();
−
int getCameraRotation();
z
ROTATE_NONE
z
ROTATE_LEFT
z
ROTATE_RIGHT
z
UNKNOWN
3
0
ExposureControl
z
z
ExposureControl controla a exposição do dispositivo de
câmera. A Exposição baseia-se em três componentes:
−
Abertura;
−
Velocidade (também conhecido com exposição de
tempo);
−
Sensibilidade;
O Player fornece os streams capturados de uma câmara
para o ExposureControl através dos métodos getControl() e
getControls().
3
1
FlashControl
z
z
FlashControl controla o flash do dispositivo de câmera. O
flash normalmente demora algum tempo para ser
habilitado, assim quando está sendo utilizado, o tempo
exato depende do dispositivo. O modo padrão para o flash
é desligado.
Estados:
−
AUTO: Flash automático de acordo com as condições de iluminação.
−
AUTO_WITH_REDEYEREDUCE: Flash automático de acordo com as condições de
iluminação, e se necessário utilizará a redução de olhos vermelhos.
−
FILLIN: Flash reduzido.
−
FORCE: O flash da câmera é ligado.
−
FORCE_WITH_REDEYEREDUCE: O flash da câmera é ligado, e utiliza redução de
olhos vermelhos.
−
OFF: O flash da câmera é desligado.
3
2
SnapshotControl
z
z
SnapshotControl Com esse controle é possível filmar várias
imagens, e armazena-las no sistema de arquivos. Estas
podem ser adicionadas no diretório a partir do método
setDirectory(), que deve gravar a imagem no diretório que
está sendo indicado como ativo.
O diretório ativo pode ser consultado através do método
getDirectory().
3
3
ZoomControl
z
z
ZoomControl controla a aproximação, do dispositivo de
câmera digital.
Controles:
−
NEXT: Move as configurações para o próximo nível.
−
PREVIOUS: Move as configurações para o nível anterior.
−
UNKNOWN Valor desconhecido.
3
4
javax.microedition.amms.control.imageeffect
z
ImageEffectControl
z
ImageTonalityControl
z
ImageTransformControl
z
OverlayControl
z
WhiteBalanceControl
3
5
ImageEffectControl
z
z
É um filtro que define efeitos para imagens. Por exemplo
imagens monocromáticas e negativos.
Exemplo:
−
setPresent(“monochrome ”);
−
setPresent(“negative”);
3
6
ImageTonalityControl
z
ImageTonalityControl é um efeito que pode ser usado para definir
configurações de imagem:
−
z
z
Brilho, Contraste, Gama.
As configurações podem ser definidas da seguinte forma:
−
Valor absoluto entre 0 e 100;
−
Configuração relativa (PREVIOUS ou NEXT);
−
Nível Automático (AUTO).
Métodos:
−
setBrightness(int level);
−
setContrast(int level);
−
setGamma(int level);
3
7
ImageTransformControl
z
ImageTransformControl é usada para cortar, esticar e rodar
imagens.
Exemplo:
String cn = “javax.microedition.amms.imageeffect.ImageTransformControl”;
ImageTransformControl tc = myMediaProcessor.getControl(cn);
int origWidth = tc.getSourceWidth();
int origHeight = tc.getSourceHeight();
tc.setSourceRect(0, 0, origWidth, -origHeight);
tc.setTargetSize(0, 0, 0);
3
8
ImageTransformControl
3
9
OverlayControl
z
OverlayControl controla a sobreposição de imagens em
cima de vídeo ou imagem estática. Isso pode ser útil ao
adicionar quadros para uma fotografia.
−
Imagens referenciadas como objetos (apoiar diferentes
tecnologias).
−
Imagens podem ser adicionadas parcialmente ou
totalmente fora do vídeo.
4
0
WhiteBalanceControl
z
z
WhiteBalanceControl manipula o equilíbrio de cores
brancas em imagens e vídeo.
Estes padrões podem ser apoiados por:
−
sunlight (luz normal do dia);
−
tungsten (Filamentos de iluminação comumente utilizado em lâmpadas);
−
fluorescent;
−
flash (Equilíbrio ideal de branco para o modo flash integrado do dispositivo).
4
1
javax.microedition.amms.control.tuner
z
RDSControl
z
TunerControl
4
2
RDSControl
z
RDSControl é uma interface para acessar o sistema de
dados de rádio para VHF / FM radiodifusão sonora (RDS).
As configurações de um player RDSControl podem
também ser utilizadas com Broadcast Radio Data System
(RBDS).
4
3
TunerControl
z
z
TunerControl é uma interface para controlar o sintonizador
de configurações de um Player.
Estados:
−
AUTO – Modo estéreo automático.
−
MODULATION_AM – Modulação AM.
−
MODULATION_FM – Modulação FM.
−
MONO – Mono.
−
STEREO – Estéreo.
4
4
Download