mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-10-11 17:13:47 +02:00
2020-02-03 Fred Gleason <fredg@paravelsystems.com>
* Consolidated the Metadata Wildcard definitions in the 'RDResolveNowNext()' function into the 'RDLogLine::resolveWildcards()' method. * Added 'recordMbId' and 'releaseMbId' fields to the cut XML data schema. * Added '%wm' ['MusicBrainz Recording ID'] and '%wr' ['MusicBrainz Release ID'] metadata wildcards.
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
//
|
||||
// Abstract a Rivendell Cut.
|
||||
//
|
||||
// (C) Copyright 2002-2016 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
|
||||
@@ -239,15 +239,15 @@ QString RDCut::isci() const
|
||||
}
|
||||
|
||||
|
||||
QString RDCut::trackMbId() const
|
||||
QString RDCut::recordingMbId() const
|
||||
{
|
||||
return RDGetSqlValue("CUTS","CUT_NAME",cut_name,"TRACK_MBID").toString();
|
||||
return RDGetSqlValue("CUTS","CUT_NAME",cut_name,"RECORDING_MBID").toString();
|
||||
}
|
||||
|
||||
|
||||
void RDCut::setTrackMbId(const QString &mbid)
|
||||
void RDCut::setRecordingMbId(const QString &mbid)
|
||||
{
|
||||
SetRow("TRACK_MBID",mbid);
|
||||
SetRow("RECORDING_MBID",mbid);
|
||||
}
|
||||
|
||||
|
||||
@@ -905,7 +905,12 @@ bool RDCut::copyTo(RDStation *station,RDUser *user,
|
||||
"HOOK_START_POINT,"+ // 15
|
||||
"HOOK_END_POINT,"+ // 16
|
||||
"TALK_START_POINT,"+ // 17
|
||||
"TALK_END_POINT "+ // 18
|
||||
"TALK_END_POINT,"+ // 18
|
||||
"ISRC,"+ // 19
|
||||
"ISCI,"+ // 20
|
||||
"RECORDING_MBID,"+ // 21
|
||||
"RELEASE_MBID "+ // 22
|
||||
|
||||
"from CUTS where "+
|
||||
"CUT_NAME=\""+RDEscapeString(cut_name)+"\"";
|
||||
q=new RDSqlQuery(sql);
|
||||
@@ -932,7 +937,11 @@ bool RDCut::copyTo(RDStation *station,RDUser *user,
|
||||
QString().sprintf("HOOK_START_POINT=%d,",q->value(15).toInt())+
|
||||
QString().sprintf("HOOK_END_POINT=%d,",q->value(16).toInt())+
|
||||
QString().sprintf("TALK_START_POINT=%d,",q->value(17).toInt())+
|
||||
QString().sprintf("TALK_END_POINT=%d ",q->value(18).toInt())+
|
||||
QString().sprintf("TALK_END_POINT=%d,",q->value(18).toInt())+
|
||||
"ISRC=\""+RDEscapeString(q->value(19).toString())+"\","+
|
||||
"ISCI=\""+RDEscapeString(q->value(20).toString())+"\","+
|
||||
"RECORDING_MBID=\""+RDEscapeString(q->value(21).toString())+"\","+
|
||||
"RELEASE_MBID=\""+RDEscapeString(q->value(22).toString())+"\" "+
|
||||
"where CUT_NAME=\""+RDEscapeString(cutname)+"\"";
|
||||
}
|
||||
delete q;
|
||||
@@ -995,7 +1004,10 @@ void RDCut::getMetadata(RDWaveData *data) const
|
||||
"HOOK_START_POINT,"+ // 16
|
||||
"HOOK_END_POINT,"+ // 17
|
||||
"FADEUP_POINT,"+ // 18
|
||||
"FADEDOWN_POINT "+ // 19
|
||||
"FADEDOWN_POINT,"+ // 19
|
||||
"RECORDING_MBID,"+ // 20
|
||||
"RELEASE_MBID "+ // 21
|
||||
|
||||
"from CUTS where CUT_NAME=\""+cut_name+"\"";
|
||||
q=new RDSqlQuery(sql);
|
||||
if(q->first()) {
|
||||
@@ -1023,6 +1035,8 @@ void RDCut::getMetadata(RDWaveData *data) const
|
||||
data->setHookEndPos(q->value(17).toInt());
|
||||
data->setFadeUpPos(q->value(18).toInt());
|
||||
data->setFadeDownPos(q->value(19).toInt());
|
||||
data->setRecordingMbId(q->value(20).toString());
|
||||
data->setReleaseMbId(q->value(21).toString());
|
||||
data->setMetadataFound(true);
|
||||
}
|
||||
delete q;
|
||||
@@ -1058,6 +1072,13 @@ void RDCut::setMetadata(RDWaveData *data) const
|
||||
if(!data->isci().isEmpty()) {
|
||||
sql+=QString("ISCI=\"")+RDEscapeString(data->isci())+"\",";
|
||||
}
|
||||
if(!data->recordingMbId().isEmpty()) {
|
||||
sql+=QString("RECORDING_MBID=\"")+
|
||||
RDEscapeString(data->recordingMbId())+"\",";
|
||||
}
|
||||
if(!data->releaseMbId().isEmpty()) {
|
||||
sql+=QString("RELEASE_MBID=\"")+RDEscapeString(data->releaseMbId())+"\",";
|
||||
}
|
||||
if(data->startPos()>=0) {
|
||||
sql+=QString().sprintf("START_POINT=%d,",data->startPos());
|
||||
}
|
||||
@@ -1483,6 +1504,8 @@ QString RDCut::xml(RDSqlQuery *q,bool absolute,RDSettings *settings)
|
||||
xml+=" "+RDXmlField("outcue",q->value(34).toString());
|
||||
xml+=" "+RDXmlField("isrc",q->value(35).toString());
|
||||
xml+=" "+RDXmlField("isci",q->value(36).toString());
|
||||
xml+=" "+RDXmlField("recordingMbId",q->value(74).toString());
|
||||
xml+=" "+RDXmlField("releaseMbId",q->value(75).toString());
|
||||
xml+=" "+RDXmlField("length",q->value(37).toUInt());
|
||||
if(q->value(38).isNull()) {
|
||||
xml+=" "+RDXmlField("originDatetime","");
|
||||
|
Reference in New Issue
Block a user