ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/s10k/Vago/soundWizard/soundpagefinal.cpp
(Generate patch)

Comparing:
Vago/trunk/Vago/soundWizard/soundpagefinal.cpp (file contents), Revision 1047 by s10k, Fri Sep 16 22:51:26 2016 UTC vs.
s10k/Vago/soundWizard/soundpagefinal.cpp (file contents), Revision 1092 by s10k, Sat Dec 30 13:43:28 2017 UTC

# Line 45 | Line 45 | void SoundPageFinal::startProcessing(){
45      // Sample files names
46      QString ambFile="OSBDsample_file.amb.xml";
47      QString grpFile="OSBDsample_file.grp.xml";
48 +    QString impFile="OSBDsample_file.imp.xml";
49      QString ambFileLocation=GlobalVars::VagoTemporaryDir+"/"+ambFile;
50      QString grpFileLocation=GlobalVars::VagoTemporaryDir+"/"+grpFile;
51 +    QString impFileLocation=GlobalVars::VagoTemporaryDir+"/"+impFile;
52  
53      // Page 2 variables
54      QString outputFolder;
# Line 68 | Line 70 | void SoundPageFinal::startProcessing(){
70      bool preventRepeat=false;
71      bool stereo22=false, mono22=false, mono44Pc=false;
72  
73 +    // Page 5 variables
74 +    QString minVolumeDistanceImp, maxVolumeDistanceImp, minAngleImp,
75 +            maxAngleImp, minAttenuationImp, impactVelocityImp,
76 +            minOcclusionImp, priorityImp;
77 +    bool priorityLowImp = false, priorityNormalImp = false,
78 +            priorityHighImp = false, priorityHighestImp = false;
79 +
80 +    // Create temp folder if it doesn't exist
81 +    if(!QDir(GlobalVars::VagoTemporaryDir).exists()){
82 +        QDir().mkdir(GlobalVars::VagoTemporaryDir);
83 +    }
84 +
85      // Get data page 2
86      if(field("rbOther").toBool()){
87          outputFolder=field("leOtherLocation").toString();
# Line 76 | Line 90 | void SoundPageFinal::startProcessing(){
90          outputFolder=this->soundsLocation;
91      }
92  
79    outputFolder = Util::insertQuotes(outputFolder); // for onisplit work correctly
80
93      // Get data page 3
94  
95      priorityLow=field("rbPriorityLow").toBool();
96      priorityNormal=field("rbPriorityNormal").toBool();
97      priorityHigh=field("rbPriorityHigh").toBool();
98      priorityHighest=field("rbPriorityHighest").toBool();
99 +    interruptOnStop=field("cbInterruptOnStop").toBool();
100 +    playOnce=field("cbPlayOnce").toBool();
101 +    canPan=field("cbCanPan").toBool();
102  
103      if(priorityNormal){
104          priority="Normal";
# Line 110 | Line 125 | void SoundPageFinal::startProcessing(){
125          flags << "CanPan";
126      }
127  
113    interruptOnStop=field("cbInterruptOnStop").toBool();
114    playOnce=field("cbPlayOnce").toBool();
115    canPan=field("cbCanPan").toBool();
116
128      sphereRadious=Util::normalizeDecimalSeparator(field("leSphereRadious").toString());
129      minElapsedTime=Util::normalizeDecimalSeparator(field("leMinElapsedTime").toString());
130      maxElapsedTime=Util::normalizeDecimalSeparator(field("leMaxElapsedTime").toString());
# Line 144 | Line 155 | void SoundPageFinal::startProcessing(){
155      else if(mono22){
156          numberChannels="1";
157      }
158 +
159 +    // Get data page 5
160 +    priorityLowImp=field("rbPriorityLowImp").toBool();
161 +    priorityNormalImp=field("rbPriorityNormalImp").toBool();
162 +    priorityHighImp=field("rbPriorityHighImp").toBool();
163 +    priorityHighestImp=field("rbPriorityHighestImp").toBool();
164 +
165 +    if(priorityNormalImp){
166 +        priorityImp="Normal";
167 +    }
168 +    else if(priorityLowImp){
169 +        priorityImp="Low";
170 +    }
171 +    else if(priorityHighImp){
172 +        priorityImp="High";
173 +    }
174 +    else if(priorityHighestImp){
175 +        priorityImp="Highest";
176 +    }
177 +
178 +    minVolumeDistanceImp=Util::normalizeDecimalSeparator(field("leMinVolumeDistanceImp").toString());
179 +    maxVolumeDistanceImp=Util::normalizeDecimalSeparator(field("leMaxVolumeDistanceImp").toString());
180 +    minAngleImp=Util::normalizeDecimalSeparator(field("leMinAngleImp").toString());
181 +    maxAngleImp=Util::normalizeDecimalSeparator(field("leMaxAngleImp").toString());
182 +    minAttenuationImp=Util::normalizeDecimalSeparator(field("leMinAttenuationImp").toString());
183 +    impactVelocityImp=Util::normalizeDecimalSeparator(field("leImpactVelocityImp").toString());
184 +    minOcclusionImp=Util::normalizeDecimalSeparator(field("leMinOcclusionImp").toString());
185 +
186      //######################################################### Starting xml processing
187  
188      // Clean tmp dir
# Line 159 | Line 198 | void SoundPageFinal::startProcessing(){
198      // Copy sample xml files to tmp dir
199      QFile::copy(":/new/sampleFiles/"+ambFile , ambFileLocation);
200      QFile::copy(":/new/sampleFiles/"+grpFile , grpFileLocation);
201 +    QFile::copy(":/new/sampleFiles/"+impFile , impFileLocation);
202      QFile::setPermissions(ambFileLocation, QFile::ReadOwner | QFile::WriteOwner); //remove read only attribute that come from resources
203      QFile::setPermissions(grpFileLocation, QFile::ReadOwner | QFile::WriteOwner);
204 +    QFile::setPermissions(impFileLocation, QFile::ReadOwner | QFile::WriteOwner);
205  
206      (*this->xmlCommands)
207       << "--replace-all-values -e Priority -n "+Util::insertQuotes(priority)+" -f "+Util::insertQuotes(ambFileLocation)+" --no-backups --no-verbose"
208 <     << "--replace-all-values -e Flags -n "+(flags.join(" ").isEmpty() ? "\" \"" : Util::insertQuotes(flags.join(" ")))+" -f "+Util::insertQuotes(ambFileLocation)+" --no-backups --no-verbose"
208 >     << "--replace-all-values -e Flags -n "+(flags.join(" ").isEmpty() ? Util::insertQuotes("") : Util::insertQuotes(flags.join(" ")))+" -f "+Util::insertQuotes(ambFileLocation)+" --no-backups --no-verbose"
209       << "--replace-all-values -e SphereRadius -n "+Util::insertQuotes(sphereRadious)+" -f "+Util::insertQuotes(ambFileLocation)+" --no-backups --no-verbose"
210       << "--replace-all-values -e Treshold -n "+Util::insertQuotes(treshold)+" -f "+Util::insertQuotes(ambFileLocation)+" --no-backups --no-verbose"
211       << "--replace-all-values -e MinOcclusion -n "+Util::insertQuotes(minOcclusion)+" -f "+Util::insertQuotes(ambFileLocation)+" --no-backups --no-verbose"
212 +     << "--replace-all-values --parent-element-name ElapsedTime -e  Max -n "+Util::insertQuotes(maxElapsedTime)+" -f "+Util::insertQuotes(ambFileLocation)+" --no-backups --no-verbose"
213       << "--replace-all-values --parent-element-name ElapsedTime -e  Min -n "+Util::insertQuotes(minElapsedTime)+" -f "+Util::insertQuotes(ambFileLocation)+" --no-backups --no-verbose"
214       << "--replace-all-values --parent-element-name Distance -e  Max -n "+Util::insertQuotes(maxVolumeDistance)+" -f "+Util::insertQuotes(ambFileLocation)+" --no-backups --no-verbose"
215       << "--replace-all-values --parent-element-name Distance -e  Min -n "+Util::insertQuotes(minVolumeDistance)+" -f "+Util::insertQuotes(ambFileLocation)+" --no-backups --no-verbose"
# Line 178 | Line 220 | void SoundPageFinal::startProcessing(){
220       << "--replace-all-values --parent-element-name Volume -e  Max -n "+Util::insertQuotes(maxVolume)+" -f "+Util::insertQuotes(grpFileLocation)+" --no-backups --no-verbose"
221       << "--replace-all-values --parent-element-name Pitch -e  Min -n "+Util::insertQuotes(minPitch)+" -f "+Util::insertQuotes(grpFileLocation)+" --no-backups --no-verbose"
222       << "--replace-all-values --parent-element-name Pitch -e  Max -n "+Util::insertQuotes(maxPitch)+" -f "+Util::insertQuotes(grpFileLocation)+" --no-backups --no-verbose"
223 <     << "--replace-all-values -e  Weight -n "+Util::insertQuotes(weight)+" -f "+Util::insertQuotes(grpFileLocation)+" --no-backups --no-verbose";
223 >     << "--replace-all-values -e  Weight -n "+Util::insertQuotes(weight)+" -f "+Util::insertQuotes(grpFileLocation)+" --no-backups --no-verbose"
224 >     << "--replace-all-values -e  Priority -n "+Util::insertQuotes(priorityImp)+" -f "+Util::insertQuotes(impFileLocation)+" --no-backups --no-verbose"
225 >     << "--replace-all-values --parent-element-name Distance -e  Min -n "+Util::insertQuotes(minVolumeDistanceImp)+" -f "+Util::insertQuotes(impFileLocation)+" --no-backups --no-verbose"
226 >     << "--replace-all-values --parent-element-name Distance -e  Max -n "+Util::insertQuotes(maxVolumeDistanceImp)+" -f "+Util::insertQuotes(impFileLocation)+" --no-backups --no-verbose"
227 >     << "--replace-all-values --parent-element-name Angle -e  Min -n "+Util::insertQuotes(minAngleImp)+" -f "+Util::insertQuotes(impFileLocation)+" --no-backups --no-verbose"
228 >     << "--replace-all-values --parent-element-name Angle -e  Max -n "+Util::insertQuotes(maxAngleImp)+" -f "+Util::insertQuotes(impFileLocation)+" --no-backups --no-verbose"
229 >     << "--replace-all-values -e  MinAttenuation -n "+Util::insertQuotes(minAttenuationImp)+" -f "+Util::insertQuotes(impFileLocation)+" --no-backups --no-verbose"
230 >     << "--replace-all-values -e  ImpactVelocity -n "+Util::insertQuotes(impactVelocityImp)+" -f "+Util::insertQuotes(impFileLocation)+" --no-backups --no-verbose"
231 >     << "--replace-all-values -e  MinOcclusion -n "+Util::insertQuotes(minOcclusionImp)+" -f "+Util::insertQuotes(impFileLocation)+" --no-backups --no-verbose";
232  
233      if(preventRepeat){
234          (*this->xmlCommands) << "--replace-all-values --parent-element-name SoundGroup -e Flags -n PreventRepeat -f "+Util::insertQuotes(grpFileLocation)+" --no-backups --no-verbose";
# Line 190 | Line 240 | void SoundPageFinal::startProcessing(){
240      QString currFileName;
241      QString currGrpFileLocation;
242      QString currAmbFileLocation;
243 +    QString currImpFileLocation;
244  
245      for(int i=0; i<this->page2Table->rowCount(); i++){
246  
247 <        (*this->oniSplitCommands) << this->commandMap->value("xml->XML->ONI")+" "+outputFolder+" "+Util::insertQuotes(this->page2Table->item(i,1)->text()); // add location of sound file to convert
247 >        (*this->oniSplitCommands) << this->commandMap->value("xml->XML->ONI")+" "+Util::insertQuotes(outputFolder)+" "+Util::insertQuotes(this->page2Table->item(i,1)->text()); // add location of sound file to convert
248  
249          currFileName=this->page2Table->item(i,0)->text(); // get current file name
250 <        currAmbFileLocation = QString(ambFileLocation).replace("sample_file",currFileName); // get the new files, filenames
251 <        currGrpFileLocation = QString(grpFileLocation).replace("sample_file",currFileName);
250 >        currAmbFileLocation = outputFolder + "/" + QString(ambFile).replace("sample_file",currFileName); // get the new files, filenames
251 >        currGrpFileLocation = outputFolder + "/" + QString(grpFile).replace("sample_file",currFileName);
252 >        currImpFileLocation = outputFolder + "/" + QString(impFile).replace("sample_file",currFileName);
253  
254          QFile::copy(ambFileLocation, currAmbFileLocation); // make a copy of the sample files that will be the real files
255          QFile::copy(grpFileLocation, currGrpFileLocation);
256 +        QFile::copy(impFileLocation, currImpFileLocation);
257  
258          (*this->xmlCommands) << "--replace-all-values -e BaseTrack1 -n "+Util::insertQuotes(currFileName)+" -f "+Util::insertQuotes(currAmbFileLocation)+" --no-backups --no-verbose" // process the xml
259 <                             << "--replace-all-values -e Sound -n "+Util::insertQuotes(currFileName)+" -f "+Util::insertQuotes(currGrpFileLocation)+" --no-backups --no-verbose";
259 >                             << "--replace-all-values -e Sound -n "+Util::insertQuotes(currFileName)+" -f "+Util::insertQuotes(currGrpFileLocation)+" --no-backups --no-verbose"
260 >                             << "--replace-all-values -e Group -n "+Util::insertQuotes(currFileName)+" -f "+Util::insertQuotes(currImpFileLocation)+" --no-backups --no-verbose";
261  
262          myXmlProcessor->start();
263          myXmlProcessor->wait(); // Wait until all xml is edited
210    }
264  
265 <    (*this->oniSplitCommands) << this->commandMap->value("xml->XML->ONI")+" "+outputFolder+" "+Util::insertQuotes(GlobalVars::VagoTemporaryDir+"/*.xml");
265 >        (*this->oniSplitCommands) << this->commandMap->value("xml->XML->ONI")+" "+Util::insertQuotes(outputFolder)+" "+Util::insertQuotes(currAmbFileLocation);
266 >        (*this->oniSplitCommands) << this->commandMap->value("xml->XML->ONI")+" "+Util::insertQuotes(outputFolder)+" "+Util::insertQuotes(currGrpFileLocation);
267 >        (*this->oniSplitCommands) << this->commandMap->value("xml->XML->ONI")+" "+Util::insertQuotes(outputFolder)+" "+Util::insertQuotes(currImpFileLocation);
268 >    }
269  
270      this->myConverter->start(); // finally process the onisplit commands
271      this->myConverter->wait(); // wait for it to complete
216
217    // Finally remove the sample files, since not needed anymore
218    QFile(ambFileLocation).remove();
219    QFile(grpFileLocation).remove();
272   }
273  
274   void SoundPageFinal::catchXmlAndOSplitProcessingError(QString result, int numErrors){
# Line 224 | Line 276 | void SoundPageFinal::catchXmlAndOSplitPr
276      if(numErrors!=0){
277          QString sNumErrors=QString::number(numErrors);
278          if(numErrors>1){
279 <            UtilVago::showErrorPopUpLogButton(result+"\n This is the last of " + sNumErrors + " Errors.");
279 >            UtilVago::showErrorPopUpLogButton(result+"\n This is the last of " + sNumErrors + " errors.");
280          }
281          else{
282              UtilVago::showErrorPopUpLogButton(result);

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)