aboutsummaryrefslogtreecommitdiff
path: root/Src/Plugins/Input/in_linein/LineIn.cpp
blob: 073761aff6ecd1f5233e10b413344223bfcdf744 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include "LineIn.h"
#include "main.h"
#include "audio.h"
int LineIn::Play()
{
	paused = false;
	posinms = 0;
	line.is_seekable = 0;
	line.SetInfo(44*4*8, 44, 2, 1);
	line.SAVSAInit(0, 44100);
	line.VSASetInfo(2, 44100);
	{
		short dta[576*2] = {0, };
		line.VSAAddPCMData(dta, 2, 16, 0);
		line.SAAddPCMData(dta, 2, 16, 0);
	}
	if (audioInit(1))
	{}
	return 0;
}

void LineIn::Stop()
{
	audioQuit();
}

void LineIn::Pause()
{
	posinms = audioGetPos();
	audioPause(1);
	paused = true;
}

void LineIn::Unpause()
{
	audioPause(0);
	paused = false;
}

int LineIn::GetLength()
{
	return -1000;
}

int LineIn::GetOutputTime()
{
	if (paused)
		return posinms;
	return audioGetPos();
}