virtual_audio.cpp 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. /*
  2. XCC Utilities and Library
  3. Copyright (C) 2001 Olaf van der Spek <[email protected]>
  4. This program is free software: you can redistribute it and/or modify
  5. it under the terms of the GNU General Public License as published by
  6. the Free Software Foundation, either version 3 of the License, or
  7. (at your option) any later version.
  8. This program is distributed in the hope that it will be useful,
  9. but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. GNU General Public License for more details.
  12. You should have received a copy of the GNU General Public License
  13. along with this program. If not, see <https://www.gnu.org/licenses/>.
  14. */
  15. #include "stdafx.h"
  16. #include "virtual_audio.h"
  17. #include "aud_file_write.h"
  18. #include "wav_file.h"
  19. Cvirtual_audio::Cvirtual_audio()
  20. {
  21. }
  22. Cvirtual_audio::~Cvirtual_audio()
  23. {
  24. }
  25. void Cvirtual_audio::load(Cvirtual_file f, int c_samples, int samplerate, int cb_sample, int c_channels)
  26. {
  27. mc_samples = c_samples;
  28. m_samplerate = samplerate;
  29. mcb_sample = cb_sample;
  30. mc_channels = c_channels;
  31. m_f = f;
  32. m_f.compact();
  33. }
  34. Cvirtual_file Cvirtual_audio::save_as_aud() const
  35. {
  36. return aud_file_write(audio(), cb_audio(), c_samples(), samplerate(), c_channels());
  37. }
  38. int Cvirtual_audio::save_as_aud(string fname) const
  39. {
  40. return aud_file_write(fname, audio(), cb_audio(), c_samples(), samplerate(), c_channels());
  41. }
  42. Cvirtual_file Cvirtual_audio::save_as_wav_ima_adpcm() const
  43. {
  44. return wav_ima_adpcm_file_write(audio(), cb_audio(), c_samples(), samplerate(), c_channels());
  45. }
  46. int Cvirtual_audio::save_as_wav_ima_adpcm(string fname) const
  47. {
  48. return wav_ima_adpcm_file_write(fname, audio(), cb_audio(), c_samples(), samplerate(), c_channels());
  49. }
  50. Cvirtual_file Cvirtual_audio::save_as_wav_pcm() const
  51. {
  52. return wav_pcm_file_write(audio(), cb_audio(), samplerate(), cb_sample(), c_channels());
  53. }
  54. int Cvirtual_audio::save_as_wav_pcm(string fname) const
  55. {
  56. return wav_pcm_file_write(fname, audio(), cb_audio(), samplerate(), cb_sample(), c_channels());
  57. }