2020-02-04 Fred Gleason <fredg@paravelsystems.com>

* Added '--set-string-isrc', '--set-string-recording-mbid' and
	'--set-string-release-mbid' switches to rdimport(1).
This commit is contained in:
Fred Gleason 2020-02-04 12:25:58 -05:00
parent edf23ce677
commit cf5018c32e
4 changed files with 64 additions and 2 deletions

View File

@ -19511,3 +19511,6 @@
2020-02-04 Fred Gleason <fredg@paravelsystems.com>
* Added support for the '%wi', '%wm' and '%wr' wildcards to
the '--metadata-pattern=' switch in rdimport(1).
2020-02-04 Fred Gleason <fredg@paravelsystems.com>
* Added '--set-string-isrc', '--set-string-recording-mbid' and
'--set-string-release-mbid' switches to rdimport(1).

View File

@ -711,6 +711,13 @@
</listitem>
</varlistentry>
<varlistentry>
<term><userinput>isrc</userinput></term>
<listitem>
<para>International Standard Recording Code [ISRC]</para>
</listitem>
</varlistentry>
<varlistentry>
<term><userinput>label</userinput></term>
<listitem>
@ -732,6 +739,20 @@
</listitem>
</varlistentry>
<varlistentry>
<term><userinput>recording-mbid</userinput></term>
<listitem>
<para>MusicBrainz Recording ID</para>
</listitem>
</varlistentry>
<varlistentry>
<term><userinput>release-mbid</userinput></term>
<listitem>
<para>MusicBrainz Release ID</para>
</listitem>
</varlistentry>
<varlistentry>
<term><userinput>song-id</userinput></term>
<listitem>

View File

@ -382,6 +382,24 @@ MainObject::MainObject(QObject *parent)
import_string_outcue=rda->cmdSwitch()->value(i);
rda->cmdSwitch()->setProcessed(i,true);
}
if(rda->cmdSwitch()->key(i)=="--set-string-isrc") {
if(RDDiscLookup::isrcIsValid(rda->cmdSwitch()->value(i))) {
import_string_isrc=rda->cmdSwitch()->value(i);
rda->cmdSwitch()->setProcessed(i,true);
}
else {
Log(LOG_ERR,"invalid ISRC \""+rda->cmdSwitch()->value(i)+"\"\n");
exit(1);
}
}
if(rda->cmdSwitch()->key(i)=="--set-string-recording-mbid") {
import_string_recording_mbid=rda->cmdSwitch()->value(i);
rda->cmdSwitch()->setProcessed(i,true);
}
if(rda->cmdSwitch()->key(i)=="--set-string-release-mbid") {
import_string_release_mbid=rda->cmdSwitch()->value(i);
rda->cmdSwitch()->setProcessed(i,true);
}
if(rda->cmdSwitch()->key(i)=="--set-string-publisher") {
import_string_publisher=rda->cmdSwitch()->value(i);
rda->cmdSwitch()->setProcessed(i,true);
@ -724,6 +742,15 @@ MainObject::MainObject(QObject *parent)
if(!import_string_outcue.isNull()) {
Log(LOG_INFO,QString().sprintf(" Outcue set to: %s\n",(const char *)import_string_outcue));
}
if(!import_string_isrc.isNull()) {
Log(LOG_INFO,QString().sprintf(" ISRC set to: %s\n",(const char *)import_string_isrc));
}
if(!import_string_recording_mbid.isNull()) {
Log(LOG_INFO,QString().sprintf(" MusicBrainz recording ID set to: %s\n",(const char *)import_string_recording_mbid));
}
if(!import_string_release_mbid.isNull()) {
Log(LOG_INFO,QString().sprintf(" MusicBrainz release ID set to: %s\n",(const char *)import_string_release_mbid));
}
if(!import_string_publisher.isNull()) {
Log(LOG_INFO,QString().sprintf(" Publisher set to: %s\n",(const char *)import_string_publisher));
}
@ -1215,6 +1242,15 @@ MainObject::Result MainObject::ImportFile(const QString &filename,
if(!import_string_outcue.isNull()) {
cut->setOutcue(import_string_outcue);
}
if(!import_string_isrc.isNull()) {
cut->setIsrc(RDDiscLookup::normalizedIsrc(import_string_isrc));
}
if(!import_string_recording_mbid.isNull()) {
cut->setRecordingMbId(import_string_recording_mbid);
}
if(!import_string_release_mbid.isNull()) {
cut->setReleaseMbId(import_string_release_mbid);
}
if(!import_string_publisher.isNull()) {
cart->setPublisher(import_string_publisher);
}

View File

@ -2,7 +2,7 @@
//
// A Batch Importer for Rivendell.
//
// (C) Copyright 2002-2019 Fred Gleason <fredg@paravelsystems.com>
// (C) Copyright 2002-2020 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
@ -79,7 +79,6 @@ class MainObject : public QObject
bool import_verbose;
bool import_log_syslog;
bool import_log_file;
// QString import_log_directory;
QString import_log_filename;
bool import_to_mono;
bool import_use_cartchunk_cutid;
@ -124,6 +123,9 @@ class MainObject : public QObject
QString import_string_conductor;
QString import_string_description;
QString import_string_outcue;
QString import_string_isrc;
QString import_string_recording_mbid;
QString import_string_release_mbid;
QString import_string_publisher;
QString import_string_label;
QString import_string_song_id;