3.6.- Clips de audio, secuencias MIDI, clips de vídeo, entre otros Flashcards

1
Q

Sistema Android. Clase MediaPlayer. Potencia y vertatilidad (3)

A

En Android, la potencia de la clase MediaPlayer hace que reproducir clips de vídeo o audio en diferentes formatos sea igual. Siempre que el terminal disponga de los códecs para los formatos utilizados, el procedimiento de cargar el MediaPlayer con ellos y reproducirlos no se diferencia.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips (video y audio). Clase MediaPlayer (3)

A

Es posible elegir entre varios formatos, y que no es necesario cambiar la configuración del objeto MediaPlayer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips (video y audio). Carpetas res y raw (3)

A

En el directorio “res/raw” se insertan los clips de audio y vídeo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Interfaz gráfica (1)

A

En el ConstraintLayout añadir los botones para controlar el audio y el vídeo, y un VideoView para mostrar la secuencia de vídeo.
* TextView para audio (lblAudio): Muestra un texto que probablemente indica la presencia de un clip de audio.
* Botón para reproducir audio (btnPlayAudio): Inicia la reproducción de un clip de audio.
* Botón para detener audio (btnStopAudio): Detiene la reproducción del clip de audio.
* TextView para video (lblVideo): Muestra un texto que probablemente indica la presencia de un clip de video.
* Botón para reproducir video (btnPlayVideo): Inicia la reproducción de un clip de video.
* Botón para detener video (btnStopVideo): Detiene la reproducción del clip de video.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Traducciones (1)

A

El archivo de cadenas para internacionalización se ubica dentro de la ruta res/values/strings. Dentro del elemento <>resources> se crea una colección de elemento <>string> donde el atributo name es la clave y el contenido de la etiqueta es el valor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Definición clase (1)

A

Establece la base para trabajar con reproducción de audio con la clase MediaPlayer y vincula las vistas a través de kotlinx.android.synthetic.
* Importa las clases necesarias para trabajar con multimedia en Android, como MediaPlayer, Uri y MediaController.
* Extiende la clase AppCompatActivity para crear la actividad principal de la aplicación.
* Utiliza el sistema de vinculación de vistas (kotlinx.android.synthetic) para acceder a las vistas del diseño de la actividad.
* La variable mp se declara como private lateinit var.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método onCreate() (1)

A

El método onCreate se encarga de la inicialización de la interfaz de usuario y llama a métodos (initAudio() e initVideo()) para la inicialización y configuración de la reproducción de audio y video, respectivamente.
* Llama al método onCreate() de la superclase (AppCompatActivity) para inicializar la superclase antes de iniciarlizar la actividad actual.
* Establece el contenido de la actividad con el diseño definido en el archivo XML llamado activity_main.
* Llama al método initAudio() que contiene la lógica de inicialización y configuración para reproducir audio en la aplicación.
* Llama al método initVideo() que contiene la lógica de inicialización y configuración para reproducir video en la aplicación.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método initAudio() (1)

A

Inicializa y configura la reproducción de audio, proporcionando funciones para reproducir, pausar y detener la reproducción, junto con un manejo adecuado cuando se completa la reproducción.
* Crea un objeto MediaPlayer y lo inicializa con el archivo de audio que se encuentra en la carpeta res/raw de la aplicación.
* Establece un OnCompletionListener en el MediaPlayer. Este escucha se activa cuando la reproducción del audio se completa. Se llama al método stopAudio() y se muestra un mensaje Toast indicando que la reproducción ha finalizado.
* Configura un OnClickListener para el botón btnPlayAudio. Cuando se hace clic en este botón, se verifica si el MediaPlayer está reproduciendo. Si está reproduciendo, se pausa la reproducción; de lo contrario, se inicia la reproducción.
* Configura un OnClickListener para el botón btnStopAudio. Cuando se hace clic en este botón, se llama a stopAudio(), deteniendo la reproducción del audio.
* Configura el texto del botón btnPlayAudio con el valor de la cadena definida en los recursos con el identifizador “play”.
* Deshabilita el botón btnStopAudio, impidiendo que el usuario lo utilice hasta que se inicie la reproducción de audio.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método playAudio() (1)

A

Inicia la reproducción del audio utilizando el objeto MediaPlayer, actualiza el texto del botón de reproducción para indicar que ahora puede pausar la reproducción y habilita el botón de detención.
* Llama al método start() del objeto MediaPlayer (mp). Inicia la reproducción del audio desde el principio o desde donde se pausó anteriormente.
* Cambia el texto del botón btnPlayAudio al valor de la cadena definida en los recursos con el identificador “pause”.
* Habilita el botón btnStopAudio, permitiendo que el usuario lo utilice mientras la reproducción de audio está en curso.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método stopAudio() (1)

A

Detiene la reproducción del audio, prepara el MediaPlayer para una nueva reproducción desde el principio del archivo, coloca el cursor de reproducción en la posición 0, actualiza el texto del botón de reproducción y deshabilita el botón de detención.
* Detiene la reproducción del audio utilizando el método stop() del objeto MediaPlayer (mp).
* Llama al método prepare() del objeto MediaPlayer. Prepara el MediaPlayer para reproducir nuevamente el mismo archivo de audio. Llama a prepare() después de llamar a stop() para restablecer el estado del MediaPlayer.
* Coloca el cursor de reproducción en la posición 0 del archivo de audio y comezar la reproducción desde el principio del archivo.
* Cambia el texto del botón btnPlayAudio al valor de la cadena definida en los recursos con el identificador “play”. Esto indica visualmente que el botón ahora se puede usar para iniciar la reproducción.
* Deshabilita el botón btnStopAudio, impidiendo que el usuario lo utilice hasta que se inicie la reproducción de audio nuevamente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método pauseAudio() (1)

A

Pausa la reproducción del audio y actualiza el texto del botón de reproducción para indicar que ahora se puede utilizar para reanudar la reproducción.
* Pausa la reproducción del audio utilizando el método pause() del objeto MediaPlayer (mp). Esto detiene temporalmente la reproducción.
* Cambia el texto del botón btnPlayAudio al valor de la cadena definida en los recursos con el identificador “play”.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método initVideo() (1)

A

Sse encarga de la inicialización y configuración de la reproducción de video en una aplicación Android, proporcionando funciones para reproducir, pausar, reanudar y detener la reproducción, junto con un manejo adecuado cuando se completa la reproducción.
videoView.setOnCompletionListener { … }: Establece un OnCompletionListener en el VideoView. Este escucha se activa cuando la reproducción del video se completa. En este caso, al completarse la reproducción, se llama a stopVideo(), se muestra un mensaje Toast indicando que la reproducción ha finalizado y se realiza alguna acción adicional (que no está presente en el código proporcionado).
* Configura un OnClickListener para el botón btnPlayVideo. Cuando se hace clic en este botón, se utiliza una expresión when para determinar la acción a realizar según el estado actual del VideoView:
1. Si el video está reproduciéndose, se llama a pauseVideo().
2. Si la posición actual del video no es 0 (es decir, el video está pausado), se llama a resumeVideo().
3. En otros casos, se llama a playVideo() para iniciar la reproducción del video.
* Configura un OnClickListener para el botón btnStopVideo. Cuando se hace clic en este botón, se llama a stopVideo(), deteniendo la reproducción del video.
* Configura el texto del botón btnPlayVideo con el valor de la cadena definida en los recursos con el identificador “play”.
* Deshabilita el botón btnStopVideo, impidiendo que el usuario lo utilice hasta que se inicie la reproducción de video.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método playVideo() (1)

A

Inicia la reproducción de un archivo de video en un VideoView, configura un controlador de medios (MediaController), establece el enfoque en el VideoView, y actualiza la interfaz de usuario.
* Se establecen las URI (Uniform Resource Identifier) de los archivos de video en la carpeta res/raw de la aplicación mediante el método setVideoURI(Uri.parse(…)). En este caso, se está seleccionando el archivo de video con la extensión 3GP: “android.resource://$packageName/raw/video_3gp”.
* Se crea un objeto MediaController y se configura como el controlador de medios para el VideoView utilizando setMediaPlayer(videoView).
* Se establece el enfoque en el VideoView mediante el método requestFocus().
* Se inicia la reproducción del video utilizando el método start() del VideoView.
* Se actualiza el texto del botón btnPlayVideo a la cadena definida en los recursos con el identificador “pause”.
* Se habilita el botón btnStopVideo, permitiendo que el usuario lo utilice mientras la reproducción de video está en curso.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método resumeVideo() (1)

A

Reanuda la reproducción de un video en un VideoView que previamente fue pausado. Además, actualiza la interfaz de usuario.
* Llama al método start() del VideoView. Reanuda la reproducción del video desde el punto donde se pausó.
* Actualiza el texto del botón btnPlayVideo a la cadena definida en los recursos con el identificador “pause”.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método pauseVideo() (1)

A

Pausa la reproducción de un video en un VideoView y actualiza la interfaz de usuario.
* Llama al método pause() del VideoView. Esto pausa la reproducción del video en el punto actual.
* Actualiza el texto del botón btnPlayVideo a la cadena definida en los recursos con el identificador “play”.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método stopVideo() (1)

A

Detiene la reproducción de un video en un VideoView, libera los recursos asociados y actualiza la interfaz de usuario.
* Llama al método stopPlayback() del VideoView. Esto detiene la reproducción del video y libera los recursos asociados.
* Actualiza el texto del botón btnPlayVideo a la cadena definida en los recursos con el identificador “play”.
* Deshabilita el botón btnStopVideo, impidiendo que el usuario lo utilice hasta que se inicie la reproducción de video nuevamente.

17
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Definición clase 2 (1)

A

Se define una variable de tipo MediaPlayer para la reproducción de audio, y se utiliza el componente VideoView, que contiene internamente una instancia de MediaPlayer, para la reproducción de video.

18
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método onCreate(2) (1)

A

Se llaman dos funciones: una para iniciar la reproducción de audio y otra para iniciar la reproducción de video.

19
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método initAudio(2) (1)

A

Inicializa la variable MediaPlayer con el contexto y el identificador del archivo de audio. Se manejan dos tipos de archivos de audio (MIDI y OGG), y se utiliza el método onCompletion para mostrar un mensaje y cambiar el estado de los botones cuando la reproducción de audio se completa. Los botones btnPlayAudio y btnStopAudio controlan la reproducción, pausa y detención del audio con los métodos prepare(), stop() y start() y el parámetrp seekTo para el MediaPlayer.

20
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Método initVideo(2) (1)

A

Establece el código para el evento onCompletion, mostrando un mensaje al usuario con la función Toast() y actualizando el estado de los botones cuando la reproducción de video se completa. Los botones btnPlayVideo y btnStopVideo controlan la reproducción, pausa y detención del video con las funciones start() y stopPlayback().

21
Q

3.6.1. Clips de audio y vídeo

Aplicación de reproducción de clips. Controlador. Clases (3)

A

Se puede lograr el mismo resultado utilizando ExoPlayer en lugar de MediaPlayer, y se señala que para clips de audio también se podrían usar SoundPool o AudioTrack. No habría gran dferencia en lo que respecta al formato, ya que estas clases asumen la responsabilidad de utilizar los códecs adecuados en cada caso, librando al programador del trabajo duro.

22
Q

3.6.2. MIDI

Sistema Android. Conectar dispositivo (5)

A

La capacidad del sistema Android para controlar dispositivos MIDI conectados a él mediante USB o Bluetooth LE. Conecta el terminal Android a un ordenador de sobremesa mediante un cable USB, en las opciones de conexión aparece MIDI

23
Q

3.6.2. MIDI

Sistema Android. Lanzar comandos (5)

A

Un dispositivo Android puede conectarse a un dispositivo MIDI, ya sea hardware o software, para controlar o recibir comandos MIDI. Esto permite escenarios como recibir datos de un teclado MIDI para generar sonidos en una aplicación o desarrollar una aplicación que envíe comandos MIDI a un dispositivo hardware o a una aplicación en un PC para producir sonidos. La conexión MIDI posibilita la interacción entre dispositivos y la creación de experiencias musicales diversas.

24
Q

3.6.2. MIDI

Sistema Android. Librerías (5)

A

El SDK de Android proporciona la librería android.media.midi, permitiendo la enumeración y conexión a dispositivos MIDI, así como el envío y recepción de comandos. A partir de Android Q (API 29), se introduce la API nativa de MIDI con mejoras, aunque su implementación requiere conocimientos de lenguaje C. La documentación extensa de estas librerías está disponible para desarrolladores que necesiten crear aplicaciones de control de dispositivos MIDI.