LineIn.cpp 678 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #include "LineIn.h"
  2. #include "main.h"
  3. #include "audio.h"
  4. int LineIn::Play()
  5. {
  6. paused = false;
  7. posinms = 0;
  8. line.is_seekable = 0;
  9. line.SetInfo(44*4*8, 44, 2, 1);
  10. line.SAVSAInit(0, 44100);
  11. line.VSASetInfo(2, 44100);
  12. {
  13. short dta[576*2] = {0, };
  14. line.VSAAddPCMData(dta, 2, 16, 0);
  15. line.SAAddPCMData(dta, 2, 16, 0);
  16. }
  17. if (audioInit(1))
  18. {}
  19. return 0;
  20. }
  21. void LineIn::Stop()
  22. {
  23. audioQuit();
  24. }
  25. void LineIn::Pause()
  26. {
  27. posinms = audioGetPos();
  28. audioPause(1);
  29. paused = true;
  30. }
  31. void LineIn::Unpause()
  32. {
  33. audioPause(0);
  34. paused = false;
  35. }
  36. int LineIn::GetLength()
  37. {
  38. return -1000;
  39. }
  40. int LineIn::GetOutputTime()
  41. {
  42. if (paused)
  43. return posinms;
  44. return audioGetPos();
  45. }