Está en la página 1de 7

Multimedia en Android.

Ricardo Sánchez Córdova

Herramientas de programación Móvil

Instituto IACC

27/10/2019
INSTRUCCIONES:

Lea atentamente la situación planteada y responda a las solicitudes:

Streamify, una empresa dedicada a la transmisión inalámbrica de medios digitales, lo ha


contratado para su equipo Android. La nueva aplicación que están desarrollando será capaz de
enviar medios de manera inalámbrica entre clientes. Sus tareas dentro del equipo de desarrollo
son:

1. Listar los tipos de medios que Android es capaz de reconocer.

Respuesta:

Medios que Android reconoce:


El sistema operativo Android, posee una forma de poder distinguir los diferentes medios
tales como video, audio e imágenes. Los cuales pueden ser consumidas por casi cualquier
aplicación desarrollada. El llamado MediaStore permite a las aplicaciones externas
acceder a información de los metadatos con los registros y poder listar por categorías la
información de los medios clasificadas en audio, imágenes y video. Además de poder
utilizar la editar y registrar nueva información de la misma.

Captura de Imágenes:
De forma nativa, Android posee soporte para cámara fotográfica, por lo tanto, cualquier
aplicación externa puede hacer consumo de la misma utilizando un “intent”, el cual debe
ser declarado en el manifest de la aplicación que se está desarrollando.

Utilizando el método “startActivity()” se hace el llamado a la aplicación que por defecto


controla la cámara y la información resultante se recibe utilizando el método
“startActivityForResult()” el cual nos entrega la data de la imagen en un objeto genérico
del tipo buldle, el cual contiene la imagen y la ruta en donde se desea almacenar dicha
imagen.
Audio y Video:
Al igual que las imágenes, el audio y video se pude utilizar “intent” que es genérico
llamado “Action_View” para Audio y “Video_View” para videos por el cual se ejecuta
una petición indicando el formato del archivo que se quiere utilizar.

Además, se puede utilizar otra clase genérica de Android llamada “MediaPlayer” la cual
podemos integrar a nuestra aplicación y crear nuestro propio reproductor.
2. Mostrar qué objeto permite hacer transmisión inalámbrica de audio. ¿Qué permisos
se necesitan incluir en el manifest?

Respuesta:

Dispositivo de transmisión inalámbrica de audio:


Se puede utilizar el dispositivo integrado Bluetooth, que la mayoría de los equipos posee
integrado, con el cual se debe utilizar la clase objeto “BluetoothAdapter” en primera
instancia utilizar y obtener permisos de integración del origen. La clase “BluetoothDecive”
que representara el dispositivo remoto de reproducción, por el cual se solicitan permisos
de conexión.

Existe una variada lista de clases de implementación utilizando Bluetooth para las
diversas acciones, tales como reproducir música de manera inalámbrica, o como para
controlar otros dispositivos, a su vez, el envío de datos de un dispositivo a otro.
3. Mencionar cuáles son los pasos mediante los cuales se puede capturar audio. Si
desea puede utilizar pseudocódigo para mayor claridad.

Respuesta:

La capturar audio es posible realizarla utilizando la clase MediaRecorder.

Diagrama de estado del grabador de medios

Error Initial
Reset()
Error occurs or an
invalid call
setAudioSource()/
Release() setVideoSource()
Reset()

Released Initialized

setAudioSource()/
setVideoSource()

setOutputFormat()
Reset()
Reset()/
stop()

DataSource
Recording
Configurado

prepare()
Reset()

start()

Prepared
Al emplear la metodología descrita en el diagrama de del grabador de medios, dónde está
indicando la procedencia del micrófono, también el formato de salida, como así también, la
codificación que tiene y por último la ruta en la cual esta se almacenará, es decir el inicio y el fin
de la grabación.

MediaRecorder recorder = new MediaRecorder();


recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setOutputFile(PATH_NAME);
recorder.prepare();
recorder.start(); // Inicio de la grabacion
...
recorder.stop();
recorder.reset();
setAudioSource()
recorder.release(); //
Bibliografía

Contenidos Semana 5
Recursos Adicionales Semana 5

También podría gustarte