mirror of
https://github.com/WinampDesktop/winamp.git
synced 2025-06-10 11:59:58 -05:00
Initial community commit
This commit is contained in:
67
Src/Winamp/BurnManager.cpp
Normal file
67
Src/Winamp/BurnManager.cpp
Normal file
@@ -0,0 +1,67 @@
|
||||
/** (c) Nullsoft, Inc. C O N F I D E N T I A L
|
||||
** Filename:
|
||||
** Project:
|
||||
** Description:
|
||||
** Author:
|
||||
** Created:
|
||||
**/
|
||||
#include "../Agave/DecodeFile/ifc_audiostream.h"
|
||||
#include "../Agave/DecodeFile/api_decodefile.h"
|
||||
|
||||
#include "./BurnManager.h"
|
||||
|
||||
BurnManager::BurnManager(void) : decodeFile(NULL), context(NULL)
|
||||
{
|
||||
}
|
||||
|
||||
BurnManager::~BurnManager()
|
||||
{
|
||||
}
|
||||
|
||||
void BurnManager::SetDecodeAPI(api_decodefile *decoderAPI)
|
||||
{
|
||||
decodeFile = decoderAPI;
|
||||
}
|
||||
|
||||
api_decodefile *BurnManager::GetDecodeAPI(void)
|
||||
{
|
||||
return decodeFile;
|
||||
}
|
||||
void BurnManager::SetFiles(size_t numFiles, const wchar_t **filenames, BurnManagerCallback *callback)
|
||||
{
|
||||
WRESULT *results = new WRESULT[numFiles];
|
||||
memset(results, 0, numFiles * sizeof(WRESULT));
|
||||
callback->OnLicenseCallback(numFiles, results);
|
||||
delete [] results;
|
||||
}
|
||||
|
||||
ifc_audiostream* BurnManager::CreateDecoder(const wchar_t *filename)
|
||||
{
|
||||
AudioParameters parameters;
|
||||
parameters.bitsPerSample = 16;
|
||||
parameters.channels = 2;
|
||||
parameters.sampleRate = 44100;
|
||||
|
||||
ifc_audiostream *decoder = decodeFile->OpenAudio(filename, ¶meters);
|
||||
if (decoder && (parameters.bitsPerSample != 16 || parameters.channels != 2 || parameters.sampleRate != 44100))
|
||||
{
|
||||
parameters.errorCode = API_DECODEFILE_BAD_RESAMPLE;
|
||||
decodeFile->CloseAudio(decoder);
|
||||
decoder=0;
|
||||
}
|
||||
return decoder;
|
||||
}
|
||||
|
||||
void BurnManager::CloseDecoder(ifc_audiostream *decoder)
|
||||
{
|
||||
decodeFile->CloseAudio(decoder);
|
||||
}
|
||||
|
||||
void BurnManager::CancelBurn()
|
||||
{
|
||||
}
|
||||
|
||||
void BurnManager::BurnFinished()
|
||||
{
|
||||
}
|
||||
|
Reference in New Issue
Block a user