2015-04-07 Fred Gleason <fredg@paravelsystems.com>

* Added a 'RDLIBRARY.READ_ISRC' field to the database.
	* Incremented the database version to 245.
	* Added 'RDLibraryConf::readIsrc()' and 'RDLibraryConf::setReadIsrc()'
	methods in 'lib/rdlibrary_conf.cpp' and 'lib/rdlibrary_conf.h'.
	* Added a 'Read ISRCs from CD' control to the 'Edit RDLibrary' dialog
	in 'rdadmin/edit_rdlibrary.cpp' and 'rdadmin/edi_rdlibrary.h'.
	* Implemented the 'Read ISRCs from CD' option in the full disc
	ripper in 'rdlibrary/disk_ripper.cpp'.
	* Implemented the 'Read ISRCs from CD' option in the per-track disc
	ripper in 'rdlibrary/cdripper.cpp'.
This commit is contained in:
Fred Gleason 2015-04-07 14:09:55 -04:00
parent bd47f50abf
commit 153c0b4b0b
17 changed files with 163 additions and 95 deletions

View File

@ -14853,3 +14853,14 @@
* Fixed a bug in 'rdlibrary/disk_ripper.cpp' that caused the tracks * Fixed a bug in 'rdlibrary/disk_ripper.cpp' that caused the tracks
from discs with no CDDB data to received scrambled/incorrect cart from discs with no CDDB data to received scrambled/incorrect cart
titles. titles.
2015-04-07 Fred Gleason <fredg@paravelsystems.com>
* Added a 'RDLIBRARY.READ_ISRC' field to the database.
* Incremented the database version to 245.
* Added 'RDLibraryConf::readIsrc()' and 'RDLibraryConf::setReadIsrc()'
methods in 'lib/rdlibrary_conf.cpp' and 'lib/rdlibrary_conf.h'.
* Added a 'Read ISRCs from CD' control to the 'Edit RDLibrary' dialog
in 'rdadmin/edit_rdlibrary.cpp' and 'rdadmin/edi_rdlibrary.h'.
* Implemented the 'Read ISRCs from CD' option in the full disc
ripper in 'rdlibrary/disk_ripper.cpp'.
* Implemented the 'Read ISRCs from CD' option in the per-track disc
ripper in 'rdlibrary/cdripper.cpp'.

View File

@ -1,7 +1,6 @@
RDLIBRARY Table Layout for Rivendell RDLIBRARY Table Layout for Rivendell
The RDLIBRARY table holds configuration data for the RDLibrary widget. The RDLIBRARY table holds configuration data for the RDLibrary widget.
Following is the layout of a record in the RDLIBRARY table:
FIELD NAME TYPE REMARKS FIELD NAME TYPE REMARKS
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
@ -32,6 +31,7 @@ RIPPER_DEVICE char(64)
PARANOIA_LEVEL int(11) PARANOIA_LEVEL int(11)
RIPPER_LEVEL int(11) RIPPER_LEVEL int(11)
CDDB_SERVER char(64) CDDB_SERVER char(64)
READ_ISRC enum('N','Y')
ENABLE_EDITOR enum('N','Y') ENABLE_EDITOR enum('N','Y')
SRC_CONVERTER int(11) SRC_CONVERTER int(11)
LIMIT_SEARCH int(11) 0 = No, 1 = Yes, 2 = Previous LIMIT_SEARCH int(11) 0 = No, 1 = Yes, 2 = Previous

View File

@ -26,7 +26,7 @@
/* /*
* Current Database Version * Current Database Version
*/ */
#define RD_VERSION_DATABASE 244 #define RD_VERSION_DATABASE 245
#endif // DBVERSION_H #endif // DBVERSION_H

View File

@ -288,6 +288,19 @@ void RDLibraryConf::setCddbServer(QString server) const
} }
bool RDLibraryConf::readIsrc() const
{
return RDBool(RDGetSqlValue("RDLIBRARY","ID",lib_id,"READ_ISRC").
toString());
}
void RDLibraryConf::setReadIsrc(bool state) const
{
SetRow("READ_ISRC",RDYesNo(state));
}
bool RDLibraryConf::enableEditor() const bool RDLibraryConf::enableEditor() const
{ {
return RDBool(RDGetSqlValue("RDLIBRARY","ID",lib_id,"ENABLE_EDITOR"). return RDBool(RDGetSqlValue("RDLIBRARY","ID",lib_id,"ENABLE_EDITOR").

View File

@ -71,6 +71,8 @@ class RDLibraryConf
void setRipperLevel(int level) const; void setRipperLevel(int level) const;
QString cddbServer() const; QString cddbServer() const;
void setCddbServer(QString server) const; void setCddbServer(QString server) const;
bool readIsrc() const;
void setReadIsrc(bool state) const;
bool enableEditor() const; bool enableEditor() const;
void setEnableEditor(bool state) const; void setEnableEditor(bool state) const;
void getSettings(RDSettings *s) const; void getSettings(RDSettings *s) const;

View File

@ -1008,6 +1008,7 @@ bool CreateDb(QString name,QString pwd)
PARANOIA_LEVEL INT DEFAULT 0,\ PARANOIA_LEVEL INT DEFAULT 0,\
RIPPER_LEVEL INT DEFAULT -1300,\ RIPPER_LEVEL INT DEFAULT -1300,\
CDDB_SERVER CHAR(64) DEFAULT \"freedb.freedb.org\",\ CDDB_SERVER CHAR(64) DEFAULT \"freedb.freedb.org\",\
READ_ISRC enum('N','Y') default 'Y',\
ENABLE_EDITOR enum('N','Y') default 'N',\ ENABLE_EDITOR enum('N','Y') default 'N',\
SRC_CONVERTER int default 1,\ SRC_CONVERTER int default 1,\
LIMIT_SEARCH int default 1,\ LIMIT_SEARCH int default 1,\
@ -8101,6 +8102,13 @@ int UpdateDb(int ver)
delete q; delete q;
} }
if(ver<245) {
sql=QString("alter table RDLIBRARY add column ")+
"READ_ISRC enum('N','Y') default 'Y' after CDDB_SERVER";
q=new QSqlQuery(sql);
delete q;
}
// **** End of version updates **** // **** End of version updates ****

View File

@ -41,8 +41,8 @@
EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station, EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
QWidget *parent,const char *name) QWidget *parent)
: QDialog(parent,name,true) : QDialog(parent,"",true)
{ {
// //
// Fix the Window Size // Fix the Window Size
@ -65,7 +65,7 @@ EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
// //
// Text Validator // Text Validator
// //
RDTextValidator *validator=new RDTextValidator(this,"validator"); RDTextValidator *validator=new RDTextValidator(this);
// //
// Dialog Name // Dialog Name
@ -75,9 +75,9 @@ EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
// //
// Input Configuration // Input Configuration
// //
lib_input_card=new RDCardSelector(this,"lib_input_card"); lib_input_card=new RDCardSelector(this);
lib_input_card->setGeometry(10,29,120,117); lib_input_card->setGeometry(10,29,120,117);
QLabel *label=new QLabel(lib_input_card,tr("INPUT"),this,"lib_input_label"); QLabel *label=new QLabel(lib_input_card,tr("INPUT"),this);
label->setGeometry(10,10,110,19); label->setGeometry(10,10,110,19);
label->setFont(big_font); label->setFont(big_font);
label->setAlignment(AlignCenter); label->setAlignment(AlignCenter);
@ -85,9 +85,9 @@ EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
// //
// Output Configuration // Output Configuration
// //
lib_output_card=new RDCardSelector(this,"lib_output_card"); lib_output_card=new RDCardSelector(this);
lib_output_card->setGeometry(170,29,120,87); lib_output_card->setGeometry(170,29,120,87);
label=new QLabel(lib_output_card,tr("OUTPUT"),this,"lib_output_label"); label=new QLabel(lib_output_card,tr("OUTPUT"),this);
label->setGeometry(170,10,110,19); label->setGeometry(170,10,110,19);
label->setFont(big_font); label->setFont(big_font);
label->setAlignment(AlignCenter); label->setAlignment(AlignCenter);
@ -95,7 +95,7 @@ EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
// //
// Settings // Settings
// //
QLabel *setting_label=new QLabel(tr("Settings"),this,"setting_label"); QLabel *setting_label=new QLabel(tr("Settings"),this);
setting_label->setGeometry(25,79,120,19); setting_label->setGeometry(25,79,120,19);
setting_label->setFont(big_font); setting_label->setFont(big_font);
setting_label->setAlignment(AlignRight|ShowPrefix); setting_label->setAlignment(AlignRight|ShowPrefix);
@ -103,33 +103,32 @@ EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
// //
// Maximum Record Length // Maximum Record Length
// //
lib_maxlength_time=new QTimeEdit(this,"lib_maxlength_time"); lib_maxlength_time=new QTimeEdit(this);
lib_maxlength_time->setGeometry(160,100,85,19); lib_maxlength_time->setGeometry(160,100,85,19);
QLabel *lib_maxlength_label=new QLabel(lib_maxlength_time, QLabel *lib_maxlength_label=
tr("&Max Record Time:"),this, new QLabel(lib_maxlength_time,tr("&Max Record Time:"),this);
"lib_maxlength_label");
lib_maxlength_label->setGeometry(25,101,130,19); lib_maxlength_label->setGeometry(25,101,130,19);
lib_maxlength_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_maxlength_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// VOX threshold // VOX threshold
// //
lib_vox_spin=new QSpinBox(this,"lib_vox_spin"); lib_vox_spin=new QSpinBox(this);
lib_vox_spin->setGeometry(160,122,40,19); lib_vox_spin->setGeometry(160,122,40,19);
lib_vox_spin->setMinValue(-99); lib_vox_spin->setMinValue(-99);
lib_vox_spin->setMaxValue(0); lib_vox_spin->setMaxValue(0);
QLabel *lib_vox_spin_label=new QLabel(lib_vox_spin,tr("&VOX Threshold:"), QLabel *lib_vox_spin_label=
this,"lib_vox_spin_label"); new QLabel(lib_vox_spin,tr("&VOX Threshold:"),this);
lib_vox_spin_label->setGeometry(25,122,130,19); lib_vox_spin_label->setGeometry(25,122,130,19);
lib_vox_spin_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_vox_spin_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
QLabel *lib_vox_spin_unit=new QLabel(tr("dbFS"),this,"lib_vox_spin_unit"); QLabel *lib_vox_spin_unit=new QLabel(tr("dbFS"),this);
lib_vox_spin_unit->setGeometry(205,122,120,19); lib_vox_spin_unit->setGeometry(205,122,120,19);
lib_vox_spin_unit->setAlignment(AlignLeft|AlignVCenter|ShowPrefix); lib_vox_spin_unit->setAlignment(AlignLeft|AlignVCenter|ShowPrefix);
// //
// AutoTrim threshold // AutoTrim threshold
// //
lib_trim_spin=new QSpinBox(this,"lib_trim_spin"); lib_trim_spin=new QSpinBox(this);
lib_trim_spin->setGeometry(160,144,40,19); lib_trim_spin->setGeometry(160,144,40,19);
lib_trim_spin->setMinValue(-99); lib_trim_spin->setMinValue(-99);
lib_trim_spin->setMaxValue(0); lib_trim_spin->setMaxValue(0);
@ -138,182 +137,181 @@ EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
this,"lib_trim_spin_label"); this,"lib_trim_spin_label");
lib_trim_spin_label->setGeometry(25,144,130,19); lib_trim_spin_label->setGeometry(25,144,130,19);
lib_trim_spin_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_trim_spin_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
QLabel *lib_trim_spin_unit=new QLabel(tr("dbFS"),this,"lib_trim_spin_unit"); QLabel *lib_trim_spin_unit=new QLabel(tr("dbFS"),this);
lib_trim_spin_unit->setGeometry(205,144,120,19); lib_trim_spin_unit->setGeometry(205,144,120,19);
lib_trim_spin_unit->setAlignment(AlignLeft|AlignVCenter|ShowPrefix); lib_trim_spin_unit->setAlignment(AlignLeft|AlignVCenter|ShowPrefix);
// //
// Tail Preroll // Tail Preroll
// //
lib_preroll_spin=new QSpinBox(this,"lib_preroll_spin"); lib_preroll_spin=new QSpinBox(this);
lib_preroll_spin->setGeometry(160,166,50,19); lib_preroll_spin->setGeometry(160,166,50,19);
lib_preroll_spin->setMinValue(0); lib_preroll_spin->setMinValue(0);
lib_preroll_spin->setMaxValue(10000); lib_preroll_spin->setMaxValue(10000);
lib_preroll_spin->setLineStep(100); lib_preroll_spin->setLineStep(100);
QLabel *lib_preroll_spin_label=new QLabel(lib_preroll_spin, QLabel *lib_preroll_spin_label=
tr("&Tail Preroll:"),this, new QLabel(lib_preroll_spin,tr("&Tail Preroll:"),this);
"lib_preroll_spin_label");
lib_preroll_spin_label->setGeometry(25,166,130,19); lib_preroll_spin_label->setGeometry(25,166,130,19);
lib_preroll_spin_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_preroll_spin_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
QLabel *lib_preroll_spin_unit=new QLabel(tr("milliseconds"),this, QLabel *lib_preroll_spin_unit=new QLabel(tr("milliseconds"),this);
"lib_preroll_spin_unit");
lib_preroll_spin_unit->setGeometry(215,166,120,19); lib_preroll_spin_unit->setGeometry(215,166,120,19);
lib_preroll_spin_unit->setAlignment(AlignLeft|AlignVCenter|ShowPrefix); lib_preroll_spin_unit->setAlignment(AlignLeft|AlignVCenter|ShowPrefix);
// //
// Ripper Device // Ripper Device
// //
lib_ripdev_edit=new QLineEdit(this,"lib_ripper_device"); lib_ripdev_edit=new QLineEdit(this);
lib_ripdev_edit->setGeometry(160,188,100,19); lib_ripdev_edit->setGeometry(160,188,100,19);
lib_ripdev_edit->setValidator(validator); lib_ripdev_edit->setValidator(validator);
QLabel *lib_ripdev_label=new QLabel(lib_ripdev_edit,tr("&Ripper Device:"), QLabel *lib_ripdev_label=
this,"lib_format_label"); new QLabel(lib_ripdev_edit,tr("&Ripper Device:"),this);
lib_ripdev_label->setGeometry(25,188,130,19); lib_ripdev_label->setGeometry(25,188,130,19);
lib_ripdev_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_ripdev_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// Paranoia Level // Paranoia Level
// //
lib_paranoia_box=new QComboBox(this,"lib_paranoia_box"); lib_paranoia_box=new QComboBox(this);
lib_paranoia_box->setGeometry(160,210,100,19); lib_paranoia_box->setGeometry(160,210,100,19);
QLabel *lib_paranoia_label= QLabel *lib_paranoia_label=
new QLabel(lib_paranoia_box,tr("&Paranoia Level:"), new QLabel(lib_paranoia_box,tr("&Paranoia Level:"),this);
this,"lib_paranoia_label");
lib_paranoia_label->setGeometry(25,210,130,19); lib_paranoia_label->setGeometry(25,210,130,19);
lib_paranoia_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_paranoia_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
//
// Read ISRC
//
lib_isrc_box=new QComboBox(this);
lib_isrc_box->setGeometry(160,232,60,19);
QLabel *lib_isrc_label=
new QLabel(lib_isrc_box,tr("&Read ISRCs from CD:"),this);
lib_isrc_label->setGeometry(25,232,130,19);
lib_isrc_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// Ripper Level // Ripper Level
// //
lib_riplevel_spin=new QSpinBox(this,"lib_riplevel_spin"); lib_riplevel_spin=new QSpinBox(this);
lib_riplevel_spin->setGeometry(160,232,40,19); lib_riplevel_spin->setGeometry(160,254,40,19);
lib_riplevel_spin->setMinValue(-99); lib_riplevel_spin->setMinValue(-99);
lib_riplevel_spin->setMaxValue(0); lib_riplevel_spin->setMaxValue(0);
QLabel *lib_riplevel_spin_label=new QLabel(lib_riplevel_spin, QLabel *lib_riplevel_spin_label=
tr("Ripper Level:"),this, new QLabel(lib_riplevel_spin,tr("Ripper Level:"),this);
"lib_riplevel_spin_label"); lib_riplevel_spin_label->setGeometry(25,254,130,19);
lib_riplevel_spin_label->setGeometry(25,232,130,19);
lib_riplevel_spin_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_riplevel_spin_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
QLabel *lib_riplevel_spin_unit=new QLabel(tr("dbFS"), QLabel *lib_riplevel_spin_unit=new QLabel(tr("dbFS"),this);
this,"lib_riplevel_spin_unit"); lib_riplevel_spin_unit->setGeometry(205,254,120,19);
lib_riplevel_spin_unit->setGeometry(205,232,120,19);
lib_riplevel_spin_unit->setAlignment(AlignLeft|AlignVCenter|ShowPrefix); lib_riplevel_spin_unit->setAlignment(AlignLeft|AlignVCenter|ShowPrefix);
// //
// FreeDB Server // FreeDB Server
// //
lib_cddb_edit=new QLineEdit(this,"lib_cddb_edit"); lib_cddb_edit=new QLineEdit(this);
lib_cddb_edit->setGeometry(160,256,160,19); lib_cddb_edit->setGeometry(160,278,160,19);
lib_cddb_edit->setValidator(validator); lib_cddb_edit->setValidator(validator);
QLabel *lib_cddb_label=new QLabel(lib_cddb_edit,tr("&FreeDB Server:"),this, QLabel *lib_cddb_label=new QLabel(lib_cddb_edit,tr("&FreeDB Server:"),this);
"lib_cddb_label"); lib_cddb_label->setGeometry(25,278,130,19);
lib_cddb_label->setGeometry(25,256,130,19);
lib_cddb_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_cddb_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// Format // Format
// //
lib_format_box=new QComboBox(this,"lib_format_box"); lib_format_box=new QComboBox(this);
lib_format_box->setGeometry(160,280,150,19); lib_format_box->setGeometry(160,302,150,19);
connect(lib_format_box,SIGNAL(activated(int)),this,SLOT(formatData(int))); connect(lib_format_box,SIGNAL(activated(int)),this,SLOT(formatData(int)));
QLabel *lib_format_label=new QLabel(lib_format_box,tr("&Format:"),this, QLabel *lib_format_label=new QLabel(lib_format_box,tr("&Format:"),this);
"lib_format_label");
lib_format_label->setGeometry(25,280,130,19); lib_format_label->setGeometry(25,302,130,19);
lib_format_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_format_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// Bitrate // Bitrate
// //
lib_bitrate_box=new QComboBox(this,"lib_bitrate_box"); lib_bitrate_box=new QComboBox(this);
lib_bitrate_box->setGeometry(160,304,130,19); lib_bitrate_box->setGeometry(160,326,130,19);
QLabel *lib_bitrate_label=new QLabel(lib_bitrate_box,tr("&Bitrate:"),this, QLabel *lib_bitrate_label=new QLabel(lib_bitrate_box,tr("&Bitrate:"),this);
"lib_bitrate_label"); lib_bitrate_label->setGeometry(25,326,130,19);
lib_bitrate_label->setGeometry(25,304,130,19);
lib_bitrate_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_bitrate_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// Enable Editor // Enable Editor
// //
lib_editor_box=new QComboBox(this,"lib_editor_box"); lib_editor_box=new QComboBox(this);
lib_editor_box->setGeometry(160,328,60,19); lib_editor_box->setGeometry(160,350,60,19);
lib_editor_box->insertItem(tr("No")); lib_editor_box->insertItem(tr("No"));
lib_editor_box->insertItem(tr("Yes")); lib_editor_box->insertItem(tr("Yes"));
QLabel *lib_editor_label=new QLabel(lib_editor_box, QLabel *lib_editor_label=
tr("Allow E&xternal Editing:"),this, new QLabel(lib_editor_box,tr("Allow E&xternal Editing:"),this);
"lib_editor_label"); lib_editor_label->setGeometry(25,350,130,19);
lib_editor_label->setGeometry(25,328,130,19);
lib_editor_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_editor_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// Sample Rate Converter // Sample Rate Converter
// //
lib_converter_box=new QComboBox(this,"lib_converter_box"); lib_converter_box=new QComboBox(this);
lib_converter_box->setGeometry(160,352,sizeHint().width()-170,19); lib_converter_box->setGeometry(160,374,sizeHint().width()-170,19);
int conv=0; int conv=0;
while(src_get_name(conv)!=NULL) { while(src_get_name(conv)!=NULL) {
lib_converter_box->insertItem(src_get_name(conv++)); lib_converter_box->insertItem(src_get_name(conv++));
} }
QLabel *lib_converter_label=new QLabel(lib_converter_box, QLabel *lib_converter_label=
tr("Sample Rate Converter:"),this, new QLabel(lib_converter_box,tr("Sample Rate Converter:"),this);
"lib_converter_label"); lib_converter_label->setGeometry(10,374,145,19);
lib_converter_label->setGeometry(10,352,145,19);
lib_converter_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_converter_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// Limit Searches at Startup // Limit Searches at Startup
// //
lib_limit_search_box=new QComboBox(this); lib_limit_search_box=new QComboBox(this);
lib_limit_search_box->setGeometry(160,376,80,19); lib_limit_search_box->setGeometry(160,398,80,19);
lib_limit_search_box->insertItem(tr("No")); lib_limit_search_box->insertItem(tr("No"));
lib_limit_search_box->insertItem(tr("Yes")); lib_limit_search_box->insertItem(tr("Yes"));
lib_limit_search_box->insertItem(tr("Previous")); lib_limit_search_box->insertItem(tr("Previous"));
QLabel *lib_limit_search_label= QLabel *lib_limit_search_label=
new QLabel(lib_limit_search_box,tr("Limit Searches at Startup")+":",this); new QLabel(lib_limit_search_box,tr("Limit Searches at Startup")+":",this);
lib_limit_search_label->setGeometry(10,376,145,19); lib_limit_search_label->setGeometry(10,398,145,19);
lib_limit_search_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_limit_search_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// Defaults // Defaults
// //
QLabel *default_label=new QLabel(tr("Defaults"),this,"default_label"); QLabel *default_label=new QLabel(tr("Defaults"),this);
default_label->setGeometry(25,415,120,19); default_label->setGeometry(25,437,120,19);
default_label->setFont(big_font); default_label->setFont(big_font);
default_label->setAlignment(AlignRight|ShowPrefix); default_label->setAlignment(AlignRight|ShowPrefix);
// //
// Default Channels // Default Channels
// //
lib_channels_box=new QComboBox(this,"lib_channels_box"); lib_channels_box=new QComboBox(this);
lib_channels_box->setGeometry(160,434,60,19); lib_channels_box->setGeometry(160,456,60,19);
QLabel *lib_channels_label=new QLabel(lib_channels_box,tr("&Channels:"),this, QLabel *lib_channels_label=new QLabel(lib_channels_box,tr("&Channels:"),this);
"lib_channels_label"); lib_channels_label->setGeometry(25,456,130,19);
lib_channels_label->setGeometry(25,434,130,19);
lib_channels_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_channels_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// Default Record Mode // Default Record Mode
// //
lib_recmode_box=new QComboBox(this,"lib_recmode_box"); lib_recmode_box=new QComboBox(this);
lib_recmode_box->setGeometry(160,456,100,19); lib_recmode_box->setGeometry(160,478,100,19);
QLabel *lib_recmode_label=new QLabel(lib_recmode_box,tr("Record Mode:"),this, QLabel *lib_recmode_label=new QLabel(lib_recmode_box,tr("Record Mode:"),this);
"lib_recmode_label"); lib_recmode_label->setGeometry(25,478,130,19);
lib_recmode_label->setGeometry(25,456,130,19);
lib_recmode_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_recmode_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// Default Trim State // Default Trim State
// //
lib_trimstate_box=new QComboBox(this,"lib_trimstate_box"); lib_trimstate_box=new QComboBox(this);
lib_trimstate_box->setGeometry(160,480,100,19); lib_trimstate_box->setGeometry(160,502,100,19);
QLabel *lib_trimstate_label=new QLabel(lib_trimstate_box,tr("AutoTrim:"), QLabel *lib_trimstate_label=
this,"lib_trimstate_label"); new QLabel(lib_trimstate_box,tr("AutoTrim:"),this);
lib_trimstate_label->setGeometry(25,480,130,19); lib_trimstate_label->setGeometry(25,502,130,19);
lib_trimstate_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix); lib_trimstate_label->setAlignment(AlignRight|AlignVCenter|ShowPrefix);
// //
// Ok Button // Ok Button
// //
QPushButton *ok_button=new QPushButton(this,"ok_button"); QPushButton *ok_button=new QPushButton(this);
ok_button->setGeometry(sizeHint().width()-180,sizeHint().height()-60,80,50); ok_button->setGeometry(sizeHint().width()-180,sizeHint().height()-60,80,50);
ok_button->setDefault(true); ok_button->setDefault(true);
ok_button->setFont(small_font); ok_button->setFont(small_font);
@ -323,7 +321,7 @@ EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
// //
// Cancel Button // Cancel Button
// //
QPushButton *cancel_button=new QPushButton(this,"cancel_button"); QPushButton *cancel_button=new QPushButton(this);
cancel_button->setGeometry(sizeHint().width()-90,sizeHint().height()-60, cancel_button->setGeometry(sizeHint().width()-90,sizeHint().height()-60,
80,50); 80,50);
cancel_button->setFont(small_font); cancel_button->setFont(small_font);
@ -360,6 +358,9 @@ EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
lib_paranoia_box->insertItem(tr("Low")); lib_paranoia_box->insertItem(tr("Low"));
lib_paranoia_box->insertItem(tr("None")); lib_paranoia_box->insertItem(tr("None"));
lib_paranoia_box->setCurrentItem(lib_lib->paranoiaLevel()); lib_paranoia_box->setCurrentItem(lib_lib->paranoiaLevel());
lib_isrc_box->insertItem(tr("No"));
lib_isrc_box->insertItem(tr("Yes"));
lib_isrc_box->setCurrentItem(lib_lib->readIsrc());
lib_riplevel_spin->setValue(lib_lib->ripperLevel()/100); lib_riplevel_spin->setValue(lib_lib->ripperLevel()/100);
lib_format_box->insertItem(tr("PCM16")); lib_format_box->insertItem(tr("PCM16"));
lib_format_box->insertItem(tr("MPEG Layer 2")); lib_format_box->insertItem(tr("MPEG Layer 2"));
@ -407,7 +408,7 @@ EditRDLibrary::~EditRDLibrary()
QSize EditRDLibrary::sizeHint() const QSize EditRDLibrary::sizeHint() const
{ {
return QSize(375,584); return QSize(375,606);
} }
@ -437,6 +438,7 @@ void EditRDLibrary::okData()
lib_lib->setTailPreroll(lib_preroll_spin->value()); lib_lib->setTailPreroll(lib_preroll_spin->value());
lib_lib->setRipperDevice(lib_ripdev_edit->text()); lib_lib->setRipperDevice(lib_ripdev_edit->text());
lib_lib->setParanoiaLevel(lib_paranoia_box->currentItem()); lib_lib->setParanoiaLevel(lib_paranoia_box->currentItem());
lib_lib->setReadIsrc(lib_isrc_box->currentItem());
lib_lib->setRipperLevel(lib_riplevel_spin->value()*100); lib_lib->setRipperLevel(lib_riplevel_spin->value()*100);
lib_lib->setDefaultFormat(lib_format_box->currentItem()); lib_lib->setDefaultFormat(lib_format_box->currentItem());
lib_lib->setDefaultChannels(lib_channels_box->currentItem()+1); lib_lib->setDefaultChannels(lib_channels_box->currentItem()+1);

View File

@ -39,8 +39,7 @@ class EditRDLibrary : public QDialog
{ {
Q_OBJECT Q_OBJECT
public: public:
EditRDLibrary(RDStation *station,RDStation *cae_station, EditRDLibrary(RDStation *station,RDStation *cae_station,QWidget *parent=0);
QWidget *parent=0,const char *name=0);
~EditRDLibrary(); ~EditRDLibrary();
QSize sizeHint() const; QSize sizeHint() const;
QSizePolicy sizePolicy() const; QSizePolicy sizePolicy() const;
@ -66,6 +65,7 @@ class EditRDLibrary : public QDialog
QTimeEdit *lib_maxlength_time; QTimeEdit *lib_maxlength_time;
QLineEdit *lib_ripdev_edit; QLineEdit *lib_ripdev_edit;
QComboBox *lib_paranoia_box; QComboBox *lib_paranoia_box;
QComboBox *lib_isrc_box;
QSpinBox *lib_riplevel_spin; QSpinBox *lib_riplevel_spin;
QLineEdit *lib_cddb_edit; QLineEdit *lib_cddb_edit;
QComboBox *lib_editor_box; QComboBox *lib_editor_box;

View File

@ -2814,6 +2814,10 @@ nastaveném pro běh služby CAE pro naplnění databáze se zdroji zvuku.</tran
<source>Previous</source> <source>Previous</source>
<translation type="unfinished">Předchozí</translation> <translation type="unfinished">Předchozí</translation>
</message> </message>
<message>
<source>&amp;Read ISRCs from CD:</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>EditRDLogedit</name> <name>EditRDLogedit</name>

View File

@ -2785,6 +2785,10 @@ configured to run the CAE service in order to populate the audio resources datab
<source>Previous</source> <source>Previous</source>
<translation type="unfinished">Vorherige</translation> <translation type="unfinished">Vorherige</translation>
</message> </message>
<message>
<source>&amp;Read ISRCs from CD:</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>EditRDLogedit</name> <name>EditRDLogedit</name>

View File

@ -2794,6 +2794,10 @@ equipo configurado para ejecutar CAE para obtener la información de audio.</tra
<source>Limit Searches at Startup</source> <source>Limit Searches at Startup</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>&amp;Read ISRCs from CD:</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>EditRDLogedit</name> <name>EditRDLogedit</name>

View File

@ -2509,6 +2509,10 @@ configured to run the CAE service in order to populate the audio resources datab
<source>Previous</source> <source>Previous</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>&amp;Read ISRCs from CD:</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>EditRDLogedit</name> <name>EditRDLogedit</name>

View File

@ -2781,6 +2781,10 @@ configured to run the CAE service in order to populate the audio resources datab
<source>Previous</source> <source>Previous</source>
<translation type="unfinished">Førre</translation> <translation type="unfinished">Førre</translation>
</message> </message>
<message>
<source>&amp;Read ISRCs from CD:</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>EditRDLogedit</name> <name>EditRDLogedit</name>

View File

@ -2781,6 +2781,10 @@ configured to run the CAE service in order to populate the audio resources datab
<source>Previous</source> <source>Previous</source>
<translation type="unfinished">Førre</translation> <translation type="unfinished">Førre</translation>
</message> </message>
<message>
<source>&amp;Read ISRCs from CD:</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>EditRDLogedit</name> <name>EditRDLogedit</name>

View File

@ -2773,6 +2773,10 @@ configured to run the CAE service in order to populate the audio resources datab
<source>Previous</source> <source>Previous</source>
<translation type="unfinished">Anterior</translation> <translation type="unfinished">Anterior</translation>
</message> </message>
<message>
<source>&amp;Read ISRCs from CD:</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>EditRDLogedit</name> <name>EditRDLogedit</name>

View File

@ -461,7 +461,9 @@ void CdRipper::ripTrackButtonData()
// Read ISRCs // Read ISRCs
// //
if(!rip_isrc_read) { if(!rip_isrc_read) {
rip_cddb_lookup->readIsrc(rip_cdda_dir.path(),rip_conf->ripperDevice()); if(rdlibrary_conf->readIsrc()) {
rip_cddb_lookup->readIsrc(rip_cdda_dir.path(),rip_conf->ripperDevice());
}
rip_isrc_read=true; rip_isrc_read=true;
} }

View File

@ -433,8 +433,10 @@ void DiskRipper::ripDiskButtonData()
// Read ISRCs // Read ISRCs
// //
if(!rip_isrc_read) { if(!rip_isrc_read) {
rip_cddb_lookup-> if(rdlibrary_conf->readIsrc()) {
readIsrc(rip_cdda_dir.path(),rdlibrary_conf->ripperDevice()); rip_cddb_lookup->
readIsrc(rip_cdda_dir.path(),rdlibrary_conf->ripperDevice());
}
rip_isrc_read=true; rip_isrc_read=true;
} }