Rivendellaudio/lib/rdaudioimport.h
Fred Gleason 8d70a79387 2015-08-29 Fred Gleason <fredg@paravelsystems.com>
* Added an 'RDAudioConvert::Stage3Pcm24()' method in
	'lib/rdaudioconvert.cpp' and 'lib/rdaudioconvert.h'.
	* Added a 'Format::Pcm24' value to the 'RDSettings::Format'
	enumeration in 'lib/rdsettings.h'.
	* Modified the 'RDAudioConvert' class to support generating PCM24
	output in 'lib/rdaudioconvert.cpp' and 'lib/rdaudioconvert.h'.
	* Modified the 'RDPlayStream' class to support playing PCM24
	data in 'rdhpi/rdplaystream.cpp'.
	* Modified the 'RDRecordStream' class to support capturing PCM24
	data in 'rdhpi/rdrecordstream.cpp'.
	* Added an 'audio_peaks_test' harness in 'tests/audio_peaks_test.cpp'
	and 'tests/audio_peaks_test.h'.
	* Added 'PCM24' to the list of available formats in
	'rdadmin/edit_rdlibrary.cpp' and 'rdadmin/edit_rdlibrary.h'.
	* Added 'PCM24' to the list of available formats in
	'rdadmin/edit_decks.cpp'.
	* Added PCM24 support for file importation in
	'web/rdxport/import.cpp'.
	* Added an 'RDCae::Pcm24' value to the 'RDCae::AudioCoding
	enumeration in 'lib/rdcae.h'.
2015-08-30 07:49:44 -04:00

69 lines
2.1 KiB
C++

// rdaudioimport.h
//
// Import an Audio File using the RdXport Web Service
//
// (C) Copyright 2010-2014 Fred Gleason <fredg@paravelsystems.com>
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License version 2 as
// published by the Free Software Foundation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public
// License along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
#ifndef RDAUDIOIMPORT_H
#define RDAUDIOIMPORT_H
#include <qobject.h>
#include <rdconfig.h>
#include <rdstation.h>
#include <rdsettings.h>
#include <rdaudioconvert.h>
class RDAudioImport : public QObject
{
Q_OBJECT;
public:
enum ErrorCode {ErrorOk=0,ErrorInvalidSettings=1,ErrorNoSource=2,
ErrorNoDestination=3,ErrorInternal=5,ErrorUrlInvalid=7,
ErrorService=8,ErrorInvalidUser=9,ErrorAborted=10,
ErrorConverter=11};
RDAudioImport(RDStation *station,RDConfig *config,QObject *parent=0,
const char *name=0);
void setCartNumber(unsigned cartnum);
void setCutNumber(unsigned cutnum);
void setSourceFile(const QString &filename);
void setUseMetadata(bool state);
void setDestinationSettings(RDSettings *settings);
RDAudioImport::ErrorCode runImport(const QString &username,
const QString &password,
RDAudioConvert::ErrorCode *conv_err);
bool aborting() const;
static QString errorText(RDAudioImport::ErrorCode err,
RDAudioConvert::ErrorCode conv_err);
public slots:
void abort();
private:
RDStation *conv_station;
RDConfig *conv_config;
unsigned conv_cart_number;
unsigned conv_cut_number;
QString conv_src_filename;
RDSettings *conv_settings;
bool conv_use_metadata;
bool conv_aborting;
};
#endif // RDAUDIOIMPORT_H