Bez popisu

audiomanip.h 3.3KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. #ifndef AUDIOMANIP_H
  2. #define AUDIOMANIP_H
  3. #include <QAudioBuffer>
  4. ///\file
  5. ///
  6. // Define to make the name of the object easier for the student.
  7. /// \~English
  8. /// AudioBuffer is an object with left and right side of an stereo audio
  9. /// \~Spanish
  10. /// AudioBuffer es un objecte con el lado izquierdo y derecho de un audio estero.
  11. ///
  12. #define AudioBuffer QAudioBuffer::S16S
  13. // Prototypes for the functions to be implemented in the lab
  14. /// \fn void RemoveVocals(AudioBuffer frames[], int N)
  15. /// \~English
  16. /// \brief Given the audio frames of the sound clip, remove
  17. /// the vocals from the clip.
  18. /// \param frames array that contains audio samples, it will be modified
  19. /// this function.
  20. /// \param N number of audio samples (per channel)
  21. /// \~Spanish
  22. /// \brief Dadas las tramas de audio de un clip de sonido, remueve
  23. /// las vocales del clip
  24. /// \param arreglo de tramas que contiene las muestras, será modificado en
  25. /// esta funcion.
  26. /// \param N numero de muestras de audio (por canal)
  27. void RemoveVocals(AudioBuffer frames[], int N);
  28. /// \fn void AudioFadeIn(AudioBuffer frames[], int N, int fade_length)
  29. /// \~English
  30. /// \brief Perform an audio fade in of the sound clip
  31. /// \param frames array that contains audio samples, it will modified
  32. /// this function.
  33. /// \param N number of audio samples (per channel)
  34. /// \param fade_length length of the fade in, in terms of audio samples
  35. /// \~Spanish
  36. /// \brief Performa un desbanecimiento de audio de un clip de sonido
  37. /// \param arreglo de tramas que contiene las muestras, será modificado en
  38. /// esta funcion.
  39. /// \param N numero de muestras de audio (por canal)
  40. /// \param fade_length largo del desbanecimiento, en terminos de muestras de
  41. /// audio.
  42. ///
  43. void AudioFadeIn (AudioBuffer frames[], int N, int fade_length);
  44. /// \fn void AudioFadeOut(AudioBuffer frames[], int N, int fade_length)
  45. /// \~English
  46. /// \brief Perform an audio fade out of the sound clip
  47. /// \param frames array that contains audio samples, it will modified
  48. /// this function.
  49. /// \param N number of audio samples (per channel)
  50. /// \param fade_length length of the fade out, in terms of audio samples
  51. ///
  52. /// \~Spanish
  53. /// \brief Performa un incremento del sonido de audio de un clip de sonido
  54. /// \param arreglo de tramas que contiene las muestras, será modificado en
  55. /// esta funcion.
  56. /// \param N numero de muestras de audio (por canal)
  57. /// \param fade_length largo del incremento del sonido, en terminos de muestras de
  58. /// audio.
  59. ///
  60. void AudioFadeOut(AudioBuffer frames[], int N, int fade_length);
  61. /// \fn void LeftToRight(AudioBuffer frames[], int N, int pan_length)
  62. /// \~English
  63. /// \brief Performs a panning effect from left to right
  64. /// \param frames array that contains audio samples, it will modified
  65. /// this function.
  66. /// \param N number of audio samples (per channel)
  67. /// \param pan_length length of the panning effect, in terms of audio samples
  68. ///
  69. /// \~Spanish
  70. /// \brief Performa un efecto panoramico del audio de un clip de sonido
  71. /// \param arreglo de tramas que contiene las muestras, será modificado en
  72. /// esta funcion.
  73. /// \param N numero de muestras de audio (por canal)
  74. /// \param pan_length largo del efecto panoramico, en terminos de muestras de
  75. /// audio.
  76. void LeftToRight (AudioBuffer frames[], int N, int pan_length);
  77. #endif