Initial community commit
This commit is contained in:
parent
537bcbc862
commit
fc06254474
16440 changed files with 4239995 additions and 2 deletions
50
Src/Plugins/Input/in_linein/LineIn.cpp
Normal file
50
Src/Plugins/Input/in_linein/LineIn.cpp
Normal file
|
@ -0,0 +1,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();
|
||||
}
|
25
Src/Plugins/Input/in_linein/LineIn.h
Normal file
25
Src/Plugins/Input/in_linein/LineIn.h
Normal file
|
@ -0,0 +1,25 @@
|
|||
#ifndef NULLSOFT_LINEINH
|
||||
#define NULLSOFT_LINEINH
|
||||
|
||||
class LineIn
|
||||
{
|
||||
public:
|
||||
LineIn() : posinms(0), paused(false)
|
||||
{}
|
||||
int Play();
|
||||
void Stop();
|
||||
void Pause();
|
||||
void Unpause();
|
||||
int GetLength();
|
||||
int GetOutputTime();
|
||||
bool IsPaused() { return paused; }
|
||||
void SetOutputTime(int time_in_ms)
|
||||
{}
|
||||
void SetVolume(int a_v, int a_p)
|
||||
{}
|
||||
private:
|
||||
int posinms;
|
||||
bool paused;
|
||||
};
|
||||
|
||||
#endif
|
113
Src/Plugins/Input/in_linein/audio.cpp
Normal file
113
Src/Plugins/Input/in_linein/audio.cpp
Normal file
|
@ -0,0 +1,113 @@
|
|||
#include <windows.h>
|
||||
#include "Audio.h"
|
||||
#include "main.h"
|
||||
#pragma intrinsic(memcpy, memset)
|
||||
static int start_clock,paused;
|
||||
static HWAVEIN hWaveIn;
|
||||
static unsigned short data_latest[576*2];
|
||||
static unsigned short data_buffers[2][576*2];
|
||||
static WAVEHDR wave_hdrs[2];
|
||||
static HANDLE hThread;
|
||||
static int done;
|
||||
static int Thread(int *a);
|
||||
static int a_v=128, a_p=0;
|
||||
int initted;
|
||||
|
||||
int audioInit(int sample)
|
||||
{
|
||||
int x;
|
||||
WAVEFORMATEX wft;
|
||||
int threadid;
|
||||
start_clock=GetTickCount();
|
||||
paused=0;
|
||||
if (!sample) return initted=0;
|
||||
wft.wFormatTag = WAVE_FORMAT_PCM;
|
||||
wft.nChannels = 2;
|
||||
wft.nSamplesPerSec = 44100;
|
||||
wft.nBlockAlign = 2*2;
|
||||
wft.nAvgBytesPerSec = wft.nSamplesPerSec*wft.nBlockAlign;
|
||||
wft.wBitsPerSample = 16;
|
||||
wft.cbSize = 0;
|
||||
if (waveInOpen(&hWaveIn,WAVE_MAPPER,&wft,0,0,0) != MMSYSERR_NOERROR)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
for (x = 0; x < 2; x ++)
|
||||
{
|
||||
memset(&wave_hdrs[x],0,sizeof(wave_hdrs[x]));
|
||||
wave_hdrs[x].lpData = (char *) data_buffers[x];
|
||||
wave_hdrs[x].dwBufferLength = 576*2*sizeof(short);
|
||||
waveInPrepareHeader(hWaveIn,&wave_hdrs[x],sizeof(wave_hdrs[0]));
|
||||
waveInAddBuffer(hWaveIn,&wave_hdrs[x],sizeof(wave_hdrs[0]));
|
||||
}
|
||||
initted=1;
|
||||
done=0;
|
||||
waveInStart(hWaveIn);
|
||||
hThread = CreateThread(NULL,0,(unsigned long (__stdcall *)(void*)) Thread,&done,0,(unsigned long *)&threadid);
|
||||
//SetThreadPriority(hThread,THREAD_PRIORITY_HIGHEST);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void audioPause(int s)
|
||||
{
|
||||
if (s)
|
||||
{
|
||||
if (!paused)
|
||||
{
|
||||
paused=1;
|
||||
if (initted) waveInStop(hWaveIn);
|
||||
start_clock = GetTickCount()-start_clock;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (paused)
|
||||
{
|
||||
if (initted) waveInStart(hWaveIn);
|
||||
start_clock=GetTickCount()-start_clock;
|
||||
paused=0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void audioQuit()
|
||||
{
|
||||
if (!initted) return;
|
||||
done=1;
|
||||
WaitForSingleObject(hThread,INFINITE);
|
||||
waveInStop(hWaveIn);
|
||||
waveInReset(hWaveIn);
|
||||
while (waveInClose(hWaveIn) == WAVERR_STILLPLAYING) Sleep(10);
|
||||
CloseHandle(hThread);
|
||||
}
|
||||
|
||||
int audioGetPos()
|
||||
{
|
||||
if (paused) return start_clock;
|
||||
return GetTickCount()-start_clock;
|
||||
}
|
||||
|
||||
|
||||
void audioSetPos(int ms)
|
||||
{
|
||||
start_clock = GetTickCount()-ms;
|
||||
}
|
||||
|
||||
static int Thread(int *a)
|
||||
{
|
||||
int w;
|
||||
while (!*a)
|
||||
{
|
||||
Sleep(10);
|
||||
if (wave_hdrs[0].dwFlags & WHDR_DONE) w=0;
|
||||
else if (wave_hdrs[1].dwFlags & WHDR_DONE) w=1;
|
||||
else continue;
|
||||
memcpy(data_latest,wave_hdrs[w].lpData,576*2*sizeof(short));
|
||||
wave_hdrs[w].dwFlags=WHDR_PREPARED;
|
||||
waveInAddBuffer(hWaveIn,&wave_hdrs[w],sizeof(wave_hdrs[0]));
|
||||
// memset(data_latest,0,576*2*sizeof(short));
|
||||
line.VSAAddPCMData(data_latest,2,16,0);
|
||||
line.SAAddPCMData(data_latest,2,16,0);
|
||||
}
|
||||
return 0;
|
||||
}
|
11
Src/Plugins/Input/in_linein/audio.h
Normal file
11
Src/Plugins/Input/in_linein/audio.h
Normal file
|
@ -0,0 +1,11 @@
|
|||
#ifndef NULLSOFT_AUDIOH
|
||||
#define NULLSOFT_AUDIOH
|
||||
|
||||
int audioInit(int);
|
||||
int audioGetPos();
|
||||
void audioSetPos(int ms);
|
||||
void audioGetWaveform(unsigned short data[576*2]);
|
||||
void audioQuit();
|
||||
void audioPause(int s);
|
||||
|
||||
#endif
|
191
Src/Plugins/Input/in_linein/in_linein.cpp
Normal file
191
Src/Plugins/Input/in_linein/in_linein.cpp
Normal file
|
@ -0,0 +1,191 @@
|
|||
#define PLUGIN_NAME "Nullsoft LineIn Plug-in"
|
||||
#define PLUGIN_VERSION L"3.16"
|
||||
|
||||
#include "main.h"
|
||||
#include <windows.h>
|
||||
#include "LineIn.h"
|
||||
#include <api/service/waServiceFactory.h>
|
||||
#include "../Agave/Language/api_language.h"
|
||||
#include "../winamp/wa_ipc.h"
|
||||
#include "resource.h"
|
||||
|
||||
// wasabi based services for localisation support
|
||||
api_language *WASABI_API_LNG = 0;
|
||||
HINSTANCE WASABI_API_LNG_HINST = 0, WASABI_API_ORIG_HINST = 0;
|
||||
|
||||
int lstrcmpni(const char *a, const char *b, int count)
|
||||
{
|
||||
if (!a || !b) return -1;
|
||||
|
||||
switch (CompareStringA(LOCALE_USER_DEFAULT, NORM_IGNORECASE, a, min(lstrlenA(a),count), b, min(lstrlenA(b),count)))
|
||||
{
|
||||
case CSTR_LESS_THAN: return -1;
|
||||
case CSTR_GREATER_THAN: return 1;
|
||||
case CSTR_EQUAL: return 0;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
LineIn lineIn;
|
||||
|
||||
int DoAboutMessageBox(HWND parent, wchar_t* title, wchar_t* message)
|
||||
{
|
||||
MSGBOXPARAMSW msgbx = {sizeof(MSGBOXPARAMSW),0};
|
||||
msgbx.lpszText = message;
|
||||
msgbx.lpszCaption = title;
|
||||
msgbx.lpszIcon = MAKEINTRESOURCEW(102);
|
||||
msgbx.hInstance = GetModuleHandle(0);
|
||||
msgbx.dwStyle = MB_USERICON;
|
||||
msgbx.hwndOwner = parent;
|
||||
return MessageBoxIndirectW(&msgbx);
|
||||
}
|
||||
|
||||
void about(HWND hwndParent)
|
||||
{
|
||||
wchar_t message[1024] = {0}, text[1024] = {0};
|
||||
WASABI_API_LNGSTRINGW_BUF(IDS_NULLSOFT_LINEIN_PLUGIN_OLD,text,1024);
|
||||
wsprintfW(message, WASABI_API_LNGSTRINGW(IDS_ABOUT_TEXT),
|
||||
line.description, __DATE__);
|
||||
DoAboutMessageBox(hwndParent,text,message);
|
||||
}
|
||||
|
||||
int init()
|
||||
{
|
||||
if (!IsWindow(line.hMainWindow))
|
||||
return IN_INIT_FAILURE;
|
||||
|
||||
waServiceFactory *sf = line.service->service_getServiceByGuid(languageApiGUID);
|
||||
if (sf) WASABI_API_LNG = reinterpret_cast<api_language*>(sf->getInterface());
|
||||
|
||||
// need to have this initialised before we try to do anything with localisation features
|
||||
WASABI_API_START_LANG(line.hDllInstance,InLineInLangGUID);
|
||||
|
||||
static wchar_t szDescription[256];
|
||||
swprintf(szDescription,256,WASABI_API_LNGSTRINGW(IDS_NULLSOFT_LINEIN_PLUGIN),PLUGIN_VERSION);
|
||||
line.description = (char*)szDescription;
|
||||
return IN_INIT_SUCCESS;
|
||||
}
|
||||
|
||||
void quit() {}
|
||||
|
||||
int play(const char *fn)
|
||||
{
|
||||
line.is_seekable=0;
|
||||
if (!lstrcmpni(fn, "linein://", 9))
|
||||
{
|
||||
lineIn.Play();
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
int isourfile(const char *fn)
|
||||
{
|
||||
if (!lstrcmpni(fn, "linein://", 9)) return 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
void pause()
|
||||
{
|
||||
lineIn.Pause();
|
||||
}
|
||||
|
||||
void unpause()
|
||||
{
|
||||
lineIn.Unpause();
|
||||
}
|
||||
|
||||
int ispaused()
|
||||
{
|
||||
return lineIn.IsPaused();
|
||||
}
|
||||
|
||||
void stop()
|
||||
{
|
||||
lineIn.Stop();
|
||||
line.SAVSADeInit();
|
||||
}
|
||||
|
||||
int getlength()
|
||||
{
|
||||
return lineIn.GetLength();
|
||||
}
|
||||
|
||||
int getoutputtime()
|
||||
{
|
||||
return lineIn.GetOutputTime();
|
||||
}
|
||||
void setoutputtime(int time_in_ms)
|
||||
{}
|
||||
|
||||
void setvolume(int volume)
|
||||
{
|
||||
line.outMod->SetVolume(volume);
|
||||
}
|
||||
|
||||
void setpan(int pan)
|
||||
{
|
||||
line.outMod->SetPan(pan);
|
||||
}
|
||||
|
||||
int infoDlg(const char *fn, HWND hwnd)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
void getfileinfo(const char *filename, char *title, int *length_in_ms)
|
||||
{
|
||||
if (length_in_ms)
|
||||
*length_in_ms = -1000;
|
||||
if (title)
|
||||
WASABI_API_LNGSTRING_BUF(IDS_LINE_INPUT,title,GETFILEINFO_TITLE_LENGTH);
|
||||
}
|
||||
|
||||
void eq_set(int on, char data[10], int preamp)
|
||||
{}
|
||||
|
||||
In_Module line =
|
||||
{
|
||||
IN_VER_RET,
|
||||
"nullsoft(in_line.dll)",
|
||||
0, // hMainWindow
|
||||
0, // hDllInstance
|
||||
"",
|
||||
0, // is_seekable
|
||||
//0, // uses output plugins
|
||||
1, // uses output plugins
|
||||
about,
|
||||
about,
|
||||
init,
|
||||
quit,
|
||||
getfileinfo,
|
||||
infoDlg,
|
||||
isourfile,
|
||||
play,
|
||||
pause,
|
||||
unpause,
|
||||
ispaused,
|
||||
stop,
|
||||
getlength,
|
||||
getoutputtime,
|
||||
setoutputtime,
|
||||
setvolume,
|
||||
setpan,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, // dsp shit
|
||||
eq_set,
|
||||
NULL, // setinfo
|
||||
NULL // out_mod
|
||||
};
|
||||
|
||||
BOOL APIENTRY DllMain(HANDLE hMod, DWORD r, void*)
|
||||
{
|
||||
if (r == DLL_PROCESS_ATTACH)
|
||||
DisableThreadLibraryCalls((HMODULE)hMod);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
extern "C" __declspec( dllexport ) In_Module * winampGetInModule2()
|
||||
{
|
||||
return &line;
|
||||
}
|
82
Src/Plugins/Input/in_linein/in_linein.rc
Normal file
82
Src/Plugins/Input/in_linein/in_linein.rc
Normal file
|
@ -0,0 +1,82 @@
|
|||
// Microsoft Visual C++ generated resource script.
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include "afxres.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// English (U.S.) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE
|
||||
BEGIN
|
||||
"#include ""afxres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE
|
||||
BEGIN
|
||||
"#include ""version.rc2""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// String Table
|
||||
//
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_NULLSOFT_LINEIN_PLUGIN "Nullsoft LineIn Plug-in v%s"
|
||||
65535 "{EA1C197A-D227-474c-A9FD-1C79DE722BDD}"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_NULLSOFT_LINEIN_PLUGIN_OLD "Nullsoft LineIn Plug-in"
|
||||
IDS_LINE_INPUT "Line Input"
|
||||
IDS_ABOUT_TEXT "%s\nCopyright © 1997-2023 Winamp SA\n\nBuild date: %hs\n\nHow to use:\n For line input, open 'linein://'\n in the open location box."
|
||||
END
|
||||
|
||||
#endif // English (U.S.) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
#include "version.rc2"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
|
30
Src/Plugins/Input/in_linein/in_linein.sln
Normal file
30
Src/Plugins/Input/in_linein/in_linein.sln
Normal file
|
@ -0,0 +1,30 @@
|
|||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.29609.76
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "in_linein", "in_linein.vcxproj", "{0B5E2B59-BD34-4675-987E-6752A6F9D77D}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Debug|x64 = Debug|x64
|
||||
Release|Win32 = Release|Win32
|
||||
Release|x64 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{0B5E2B59-BD34-4675-987E-6752A6F9D77D}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{0B5E2B59-BD34-4675-987E-6752A6F9D77D}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{0B5E2B59-BD34-4675-987E-6752A6F9D77D}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{0B5E2B59-BD34-4675-987E-6752A6F9D77D}.Debug|x64.Build.0 = Debug|x64
|
||||
{0B5E2B59-BD34-4675-987E-6752A6F9D77D}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{0B5E2B59-BD34-4675-987E-6752A6F9D77D}.Release|Win32.Build.0 = Release|Win32
|
||||
{0B5E2B59-BD34-4675-987E-6752A6F9D77D}.Release|x64.ActiveCfg = Release|x64
|
||||
{0B5E2B59-BD34-4675-987E-6752A6F9D77D}.Release|x64.Build.0 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {88B3FE0C-E6C6-43C1-9A78-25F6398E17D5}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
248
Src/Plugins/Input/in_linein/in_linein.vcxproj
Normal file
248
Src/Plugins/Input/in_linein/in_linein.vcxproj
Normal file
|
@ -0,0 +1,248 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{0B5E2B59-BD34-4675-987E-6752A6F9D77D}</ProjectGuid>
|
||||
<RootNamespace>in_linein</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>10.0.19041.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(PlatformShortName)_$(Configuration)\</OutDir>
|
||||
<IntDir>$(PlatformShortName)_$(Configuration)\</IntDir>
|
||||
<IncludePath>$(IncludePath)</IncludePath>
|
||||
<LibraryPath>$(LibraryPath)</LibraryPath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(PlatformShortName)_$(Configuration)\</OutDir>
|
||||
<IntDir>$(PlatformShortName)_$(Configuration)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(PlatformShortName)_$(Configuration)\</OutDir>
|
||||
<IntDir>$(PlatformShortName)_$(Configuration)\</IntDir>
|
||||
<IncludePath>$(IncludePath)</IncludePath>
|
||||
<LibraryPath>$(LibraryPath)</LibraryPath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(PlatformShortName)_$(Configuration)\</OutDir>
|
||||
<IntDir>$(PlatformShortName)_$(Configuration)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Vcpkg">
|
||||
<VcpkgEnabled>false</VcpkgEnabled>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<VcpkgConfiguration>Debug</VcpkgConfiguration>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Vcpkg" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<VcpkgConfiguration>Debug</VcpkgConfiguration>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\..\Wasabi;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;IN_LINEIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(IntDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /Y /D $(OutDir)$(TargetName)$(TargetExt) ..\..\..\..\Build\Winamp_$(PlatformShortName)_$(Configuration)\Plugins\
|
||||
xcopy /Y /D $(IntDir)$(TargetName).pdb ..\..\..\..\Build\Winamp_$(PlatformShortName)_$(Configuration)\Plugins\ </Command>
|
||||
<Message>Post build event: 'xcopy /Y /D $(OutDir)$(TargetName)$(TargetExt) ..\..\..\..\Build\Winamp_$(PlatformShortName)_$(Configuration)\Plugins\'</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\..\Wasabi;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN64;_DEBUG;_WINDOWS;_USRDLL;IN_LINEIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(IntDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<ImportLibrary>$(IntDir)$(ProjectName).lib</ImportLibrary>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /Y /D $(OutDir)$(TargetName)$(TargetExt) ..\..\..\..\Build\Winamp_$(PlatformShortName)_$(Configuration)\Plugins\
|
||||
xcopy /Y /D $(IntDir)$(TargetName).pdb ..\..\..\..\Build\Winamp_$(PlatformShortName)_$(Configuration)\Plugins\ </Command>
|
||||
<Message>Post build event: 'xcopy /Y /D $(OutDir)$(TargetName)$(TargetExt) ..\..\..\..\Build\Winamp_$(PlatformShortName)_$(Configuration)\Plugins\'</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>MinSpace</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
|
||||
<AdditionalIncludeDirectories>..\..\..\Wasabi;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;IN_LINEIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
|
||||
<DelayLoadDLLs>winmm.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(IntDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /Y /D $(OutDir)$(TargetName)$(TargetExt) ..\..\..\..\Build\Winamp_$(PlatformShortName)_$(Configuration)\Plugins\ </Command>
|
||||
<Message>Post build event: 'xcopy /Y /D $(OutDir)$(TargetName)$(TargetExt) ..\..\..\..\Build\Winamp_$(PlatformShortName)_$(Configuration)\Plugins\'</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>MinSpace</Optimization>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
|
||||
<AdditionalIncludeDirectories>..\..\..\Wasabi;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN64;NDEBUG;_WINDOWS;_USRDLL;IN_LINEIN_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
|
||||
<DelayLoadDLLs>winmm.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(IntDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /Y /D $(OutDir)$(TargetName)$(TargetExt) ..\..\..\..\Build\Winamp_$(PlatformShortName)_$(Configuration)\Plugins\ </Command>
|
||||
<Message>Post build event: 'xcopy /Y /D $(OutDir)$(TargetName)$(TargetExt) ..\..\..\..\Build\Winamp_$(PlatformShortName)_$(Configuration)\Plugins\'</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="audio.cpp" />
|
||||
<ClCompile Include="in_linein.cpp" />
|
||||
<ClCompile Include="LineIn.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="audio.h" />
|
||||
<ClInclude Include="LineIn.h" />
|
||||
<ClInclude Include="main.h" />
|
||||
<ClInclude Include="resource.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="in_linein.rc" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\..\Wasabi\Wasabi.vcxproj">
|
||||
<Project>{3e0bfa8a-b86a-42e9-a33f-ec294f823f7f}</Project>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
44
Src/Plugins/Input/in_linein/in_linein.vcxproj.filters
Normal file
44
Src/Plugins/Input/in_linein/in_linein.vcxproj.filters
Normal file
|
@ -0,0 +1,44 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<ClCompile Include="audio.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="in_linein.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="LineIn.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="audio.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="LineIn.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="main.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="resource.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{0d321d64-ec0a-44a6-a09d-35003a2ea058}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Ressource Files">
|
||||
<UniqueIdentifier>{7da33fde-69de-427a-8046-46e6f4846f14}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{012164b1-deee-45fb-a608-b2353dd37d5b}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="in_linein.rc">
|
||||
<Filter>Ressource Files</Filter>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
7
Src/Plugins/Input/in_linein/main.h
Normal file
7
Src/Plugins/Input/in_linein/main.h
Normal file
|
@ -0,0 +1,7 @@
|
|||
#ifndef NULLSOFT_MAINH
|
||||
#define NULLSOFT_MAINH
|
||||
|
||||
#include "../winamp/in2.h"
|
||||
extern In_Module line;
|
||||
|
||||
#endif
|
22
Src/Plugins/Input/in_linein/resource.h
Normal file
22
Src/Plugins/Input/in_linein/resource.h
Normal file
|
@ -0,0 +1,22 @@
|
|||
//{{NO_DEPENDENCIES}}
|
||||
// Microsoft Visual C++ generated include file.
|
||||
// Used by in_linein.rc
|
||||
//
|
||||
#define IDS_NULLSOFT_LINEIN_PLUGIN_OLD 0
|
||||
#define IDS_ABOUT_STR 1
|
||||
#define IDS_ABOUT 2
|
||||
#define IDS_STRING3 3
|
||||
#define IDS_LINE_INPUT 3
|
||||
#define IDS_ABOUT_TEXT 4
|
||||
#define IDS_NULLSOFT_LINEIN_PLUGIN 65534
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 104
|
||||
#define _APS_NEXT_COMMAND_VALUE 40001
|
||||
#define _APS_NEXT_CONTROL_VALUE 1001
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
#endif
|
39
Src/Plugins/Input/in_linein/version.rc2
Normal file
39
Src/Plugins/Input/in_linein/version.rc2
Normal file
|
@ -0,0 +1,39 @@
|
|||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Version
|
||||
//
|
||||
#include "../../../Winamp/buildType.h"
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 3,16,0,0
|
||||
PRODUCTVERSION WINAMP_PRODUCTVER
|
||||
FILEFLAGSMASK 0x17L
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS 0x4L
|
||||
FILETYPE 0x2L
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Winamp SA"
|
||||
VALUE "FileDescription", "Winamp Input Plug-in"
|
||||
VALUE "FileVersion", "3,16,0,0"
|
||||
VALUE "InternalName", "Nullsoft LineIn Plug-in"
|
||||
VALUE "LegalCopyright", "Copyright © 1997-2023 Winamp SA"
|
||||
VALUE "LegalTrademarks", "Nullsoft and Winamp are trademarks of Winamp SA"
|
||||
VALUE "OriginalFilename", "in_linein.dll"
|
||||
VALUE "ProductName", "Winamp"
|
||||
VALUE "ProductVersion", STR_WINAMP_PRODUCTVER
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
END
|
||||
END
|
Loading…
Add table
Add a link
Reference in a new issue