|
|
|
|
|
|
|
|
|
|
|
#ifndef CONVERSIONOPTIONS_H
|
|
|
|
#define CONVERSIONOPTIONS_H
|
|
|
|
|
|
|
|
#include "outputdirectory.h"
|
|
|
|
|
|
|
|
#include <tqstring.h>
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @short Here the options for the conversion process can be stored
|
|
|
|
* @author Daniel Faust <hessijames@gmail.com>
|
|
|
|
* @version 0.3
|
|
|
|
*/
|
|
|
|
class ConversionOptions
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
struct EncodingOptions {
|
|
|
|
TQString sFormat; // output format
|
|
|
|
TQString sQualityMode; // which mode are we using? quality, bitrate, lossless? i18n()!!!
|
|
|
|
int iQuality; // the encoding quality / bitrate
|
|
|
|
TQString sBitrateMode; // when using bitrate mode, which? abr, cbr?
|
|
|
|
bool bBitrateRange; // enable bitrate range?
|
|
|
|
int iMinBitrate, iMaxBitrate; // when using bitrate range
|
|
|
|
struct SamplingRateOptions { // special options, when sampling rate is enabled
|
|
|
|
bool bEnabled;
|
|
|
|
int iSamplingRate;
|
|
|
|
} samplingRate;
|
|
|
|
struct ChannelsOptions { // special options, when channels is enabled
|
|
|
|
bool bEnabled;
|
|
|
|
TQString sChannels;
|
|
|
|
} channels;
|
|
|
|
struct ReplaygainOptions { // special options, when replaygain is enabled
|
|
|
|
bool bEnabled;
|
|
|
|
} replaygain;
|
|
|
|
TQString sInOutFiles; // could be called 'user defined parameter'
|
|
|
|
// but it is analog to the in_out_files option in the plugins
|
|
|
|
};
|
|
|
|
struct OutputOptions {
|
|
|
|
OutputDirectory::Mode mode;
|
|
|
|
TQString directory;
|
|
|
|
};
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Constructor
|
|
|
|
*/
|
|
|
|
ConversionOptions();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Destructor
|
|
|
|
*/
|
|
|
|
virtual ~ConversionOptions();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Checks whether this ConversionOptions and @p other are equal, except the 'filePathName' and 'outputFilePathName' members
|
|
|
|
*/
|
|
|
|
bool nearlyEqual( const ConversionOptions& other );
|
|
|
|
|
|
|
|
TQString filePathName; // the path and name of the file
|
|
|
|
TQString outputFilePathName; // if the user wants to change the output directory/file name per file!
|
|
|
|
EncodingOptions encodingOptions; // what shall we do with the file?
|
|
|
|
OutputOptions outputOptions; // where to save the file?
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // CONVERSIONOPTIONS_H
|