modulo 10 midp 2.0 y mmapi 1.1
TRANSCRIPT
![Page 1: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/1.jpg)
Utilizando MIDP 2.1 y MMAPI 1.1
Mobile
Information
Device
Profile
Mobile
Media
Application
Programming
Interface
![Page 2: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/2.jpg)
•Objetivo
•Desarrollo del contenido
•Soporte multimedia enMIDP 2.0
•DataSource
•Manager
•Player
•Captura de Audio y Video
•Propiedades del Sistema para Multimedia
•Resumen de Clases para el manejo de multimedia con
MIDP 2.0 y MMAPI 1.1
•Comentarios finales a través del simulador
Contenido
![Page 3: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/3.jpg)
Describir de manera general el contenido de
las API MIDP 2.0 y MMAPI 1.1
Objetivo
![Page 4: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/4.jpg)
Sonidos monotónicos pueden ser producidos
con:
Manager.playTone(int nota, int duracion,
int volumen)
- nota .- puede variar de 0 a 127
- duracion .- expresada en milisegundos
- volumen - de 0 a 100 (porcentaje del
volumen actual)
Desarrollando código para utilizar tonos
![Page 5: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/5.jpg)
IllegalArgumentException
Es lanzada si la nota o la duración esta
fuera del rango
MediaException- se lanza, sí el tono no
puede ser reproducido por algún problema
relacionado al dispositivo
Desarrollando código para utilizar tonos (2)
![Page 6: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/6.jpg)
Para sonidos de mayor complejidad, es a través de
un reproductor de secuencias Tone.
Player p=
Manager.createPlayer(Manager.TONE_DEVIC
E_LOCATOR)
- TIENE que implementar ToneControl y
DEBERÍA implementar las interfaces
VolumeControl y StopTimeControl
Desarrollando código para utilizar tonos (3)
![Page 7: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/7.jpg)
ToneControl.SILENCE
VolumeControl establece el volumen del Player
0>= y <=100
Qué pasa si ponemos un valor menor a 0?
Qué pasaría si ponemos 120?
Desarrollando código para utilizar tonos (4)
![Page 8: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/8.jpg)
TimeControl detiene Player después de cierto tiempo. Es como un
la función de sleep en la TV
Una vez que el Player es detenido, el tiempo de stop es reseteado. O
también se puede con la constante RESET.
Un IllegalStateException, se lanza sí se estableció el tiempo en
que se debe de detener el Player, y posteriormente se intenta llamar al
método setStopTime(int tiempo)
Desarrollando código para utilizar tonos (5)
![Page 9: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/9.jpg)
MIDP 2.0 soporte para media
Es un subset de la MMAPI. Por lo
tanto es compatible con MMAPI 1.1
MIDP 2.0 soporta sólo audio. Los
controles gráficos y de video son
excluidos.
![Page 10: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/10.jpg)
Clase Función Diferencia con MMAPI 1.1
Manager Sirve para crear Players No soporta DataSource
Player Ejecuta archivos de media Subset de características , no
soporta MIDI
Control Interfaz para control de media
ToneControl Controla el formato tonos por
secuencia
VolumeControl Controla el volumen
Controllable Super-interface para Player No SourceStream sub-
subinterface
PlayerListener Listener para los eventos del Player Subset of features
MIDP 2.0 soporte para media (2)
![Page 11: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/11.jpg)
DataSource
DataSource es una clase abstracta que
puede ser extendida, para crear streaming
de contenido personalizado.
Extensiones de DataSource son preferible
sobre objetos InputStreams, ya que tienen
la capacidad de brincar a un tiempo
especificado del contenido.
![Page 12: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/12.jpg)
DataSource (String locator) crea un objeto para
un locator URL
DataSource.connect() para conectar con la
fuente
DataSource.start() iniciar la transferencia de
datos
DataSource.stop() detiene la transferencia de
datos
DataSource.disconnect() desconectar de la
fuente
DataSource (2)
![Page 13: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/13.jpg)
Manager
El Manager es una «fábrica» para crear
Players basados en el tipo de contenido
asociado al stream.
Manager.createPlayer() puede recibir
String, con la dirección URL
Manager.playTone() reproduce un tono
![Page 14: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/14.jpg)
Player
• Se encuentra en el paquete
javax.microedition.media
• La Interfaz Player hereda de Controllable.
• Reproduce datos multmedia (video, audio, etc..).
Figura 1. Ciclo de vida de un Player.
UNREALIZED
Cuando crea un Player
No hay info completa
Invocación a(causa
IllegalStateException)
getContentType()
set/getTimeBase()
setMediaTime()
getControls()
getControl()
REALIZED
Hay información
completa.
No se puede pasar a
UNREALIZED
PREFETCHED
Listo para iniciarse.
STARTED
Ha iniciado.
Llamadas a (
IllegalStateException)
setTimeBase()
setLoopCount()CLOSED
Libera recursos.
![Page 15: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/15.jpg)
Player (2)
• El metodo Player.setMediaTime(): colocar
el puntero de reproducción de manera
aleatoria en un tiempo específico.
• Adelantar o regresar la reproducción de los
datos a un minuto específico.
• La cantidad de veces que se puede repetir
la reproducción está entre 1 y 127.
Colocamos un –1 para indicar que se
reproducirá de manera indefinida.
![Page 16: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/16.jpg)
Captura de video y audio
• Requerimos JSR-135 Mobile Media API.
• Podemos realizara utilizando la interfaz
RecordControl.
![Page 17: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/17.jpg)
Captura de video y audio (2)
• Requerimos JSR-135 Mobile Media API.
• Podemos realizara utilizando la interfaz
RecordControl.
![Page 18: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/18.jpg)
Clases en MIDP 2.0 y MMAPI 1.1
• Controllable.
– Player implementa la interface y reproduce
multimedia. TimeBase es utilizada por el Player
para controlar el tiempo.
– SourceStream implementa la interface y
proporciona un soporte para un protocolo común.
No está en MIDP 2.
– DataSource proporciona protocolos multimedia
comunes. No está en MIDP 2.0.
• Manager es la fábrica para implementar los Player
– Constantes para una secuencia de tonos
(TONE_DEVICE_LOCATOR) para MIDI
(MIDI_DEVICE_LOCATOR). MIDI no se soporta
en MIDP 2.0.
![Page 19: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/19.jpg)
Clases en MIDP 2.0 y MMAPI 1.1
• Control es la interface padre de todos los controles que
puede implementar el Player.
• Controles de Audio
– ToneControl controla el formato de la secuencia de
tonos. Soportado en MIDP 2.0.
– VolumeCntrol controla el volumen del Player.
Soportado en MIDP 2.0.
– MIDIControl controla la reproducción de los MIDI.
– PitchControl controla el tono de una nota MIDI
– TempoControl controla el tiempo de una nota MIDI.
• Controles de Video
– VideoControl controla la reproducción de video.
– FramePositioningControl controla la formación del
video.
![Page 20: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/20.jpg)
Clases en MIDP 2.0 y MMAPI 1.1
• Controles generales
– StopTimeControl permite cambiar el tiempo de
espera predeterminado.
– RateControl es usado en conjunto con TimeBase
para ajustar el tiempo utilizado por el Player.
– GUIControl es usado para mostrar una interfaz de
usuario para el Player asociado.
– RecordControl es usado para grabar el multimedia
reproducido por el Player.
– MetaDataControl puede ser utilizado para obtener
algunos meta-datos acerca del contenido
multimedia.
• PlayerListener es la interfaz listener que puede ser
implementada y registrada para los eventos del Player.
![Page 21: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/21.jpg)
Propiedades del sistema para Video y Audio
Propiedad Descripción
supports.mixing
True o False. Se soporta la reproducción de cuando menosdos tonos simultáneos
supports.audio.captureTrue si la captura de audio essoportada
supports.video.captureTrue si la captura de video essoportada
supports.recordingTrue si se puede grabar datosmultimedia
audio.encodingsRegresa el formato de captura de audio soportado
video.encodingsRegresa el formato de captura de video soportado
video.snapshot.encodings
Regresa el formato de captura de imagen soportado
![Page 22: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/22.jpg)
Preguntas del Simulador
![Page 23: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/23.jpg)
Preguntas del Simulador (2)
![Page 24: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/24.jpg)
Preguntas del Simulador (3)
![Page 25: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/25.jpg)
Preguntas del Simulador (4)
![Page 26: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/26.jpg)
Preguntas del Simulador (5)
![Page 27: Modulo 10 MIDP 2.0 y MMAPI 1.1](https://reader034.vdocuments.net/reader034/viewer/2022042700/5595a3001a28ab34748b4642/html5/thumbnails/27.jpg)
Preguntas del Simulador (6)