Reproducir sonidos en tu app

Juan Gabriel Sonidos y Música , , , , ,
0
music-header

En este tutorial de AVAudioPlayer, vamos a seguir un ejemplo para reproducir sonidos en tu app utilizando un archivo de audio que añadiremos a nuestro proyecto de Xcode. No creerás lo fácil y sencillo que es!

Añadir el framework a tu proyecto

Lo primero que debemos hacer es añadir el framework AVFoundation  a nuestro proyecto.

project-settings

Para ello, vamos a la pestaña General tab de nuestro proyecto de Xcode. Los frameworks y librerías se encuentran en la sección del final. Si hacemos click en el símbolo de ‘+’, veremos una pantalla donde poder buscar y añadir el AVFoundation Framework al proyecto.

avfoundation_framework

Añadir el sonido a tu proyecto

Para este ejemplo, necesitaremos un archivo de audio mp3 o wav. Puedes encontrar muchos en este Audio Jungle or bien descargar este archivo MP3 que utilizaré yo en el ejemplo y que he compuesto especialmente para el tutorial. Cuando tengas el archivo, simplemente arrástralo al Proyecto de Xcode y será añadido automáticamente como un recurso más de tu proyecto.

adding-sound

Importando el Framework

En la clase en la que quieras reproducir el sonido, necesitarás importar las clases del framework AVFoundation. Al inicio del archivo de implementación, el .m, importa el framework del siguiente modo:

Crear e inicializar el AVAudioPlayer

En este ejemplo, vamos a reproducir el sonido en la clase principal ViewController. Para ello, vamos a instanciar una variable en el  ViewController.m para guardar referencia a nuestro objeto AVAudioPlayer:

A continuación, en el método viewDidLoad vamos a crear un nuevo objeto AVAudioPlayer e inicializarlo con el archivo de sonido que hemos añadido antes al proyecto del siguiente modo:

  • Líneas 6-7, es donde construimos un string con el acceso al recurso gráfico en forma de directorio más el nombre del archivo de sonido. Si nos fijamos, Objective-C tiene métodos de clase para acceder a las carpetas de recursos de nuestros proyectos, lo que nos facilita el trabajo considerablemente. Finalmente, utilizamos ese string para crear un archivo NSURL, el cual utilizaremos para inicializar nuestro AVAudioPlayer.
  • Línea 10, creamos una nueva instancia de AVAudioPlayer utilizando la variable global creada anteriormente y la inicializamos con el objeto NSURL anterior.  Ya estamos listos para utilizar otros métodos típicos de esta clase.

Reproducir sonidos

Donde quieras reproducir el sonido, simplemente llama al método play del objeto AVAudioPlayer. Nada más sencillo!

Algunos métodos que pueden serte útiles para el control de la reproducción son también

La clase AVAudioPlayer tiene otras más propiedades y método para el control de la reproducción (por ejemplo, el número de bucles que deseamos repetir) así como otras propiedades que nos dan información acerca del archivo de sonido, como su duración. Comprueba la documentación para la referencia de clases de Apple para más información!

 

Descárgate el Proyecto final de Xcode para probar la librería AVAudioPlayer para iOS.

Nuevo contenido cada semana

Cada semana publicaremos uno o dos tutoriales para complementar los contenidos del Curso de Desarrollo de Apps para iOS 9 en Objective-C para ayudarte en tu aprendizaje. Poco a poco aprenderás a utilizar todas las funcionalidades de los dispositivos iOS, conectar con un servidor o incluso publicar tu idea real en el App Store

Accede al curso completo para

  • Aprende programación para iOS desde cero
  • Construye tu primera app para iPhone paso a paso
  • Descarga el código fuente para consultarlo en cualquier momento
  • Nuevo contenido adicional cada semana

¡Oferta limitada! ¡Consigue hasta un 75% de descuento!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

¿Preparado para llevar tus habilidades de programación más allá?

Sí, ¡quiero unirme!