Minor fixes to dtscMerge and Player.
This commit is contained in:
		
							parent
							
								
									aad94e2ded
								
							
						
					
					
						commit
						6d4fa4d1ef
					
				
					 2 changed files with 14 additions and 9 deletions
				
			
		|  | @ -172,6 +172,7 @@ int main(int argc, char** argv){ | ||||||
|               bool ret = source.seek_time(ms); |               bool ret = source.seek_time(ms); | ||||||
|               lasttime = Util::epoch(); |               lasttime = Util::epoch(); | ||||||
|               lastTime = 0; |               lastTime = 0; | ||||||
|  |               playUntil = 0; | ||||||
|               break; |               break; | ||||||
|             } |             } | ||||||
|             case 'p': { //play
 |             case 'p': { //play
 | ||||||
|  |  | ||||||
|  | @ -83,7 +83,6 @@ namespace Converters { | ||||||
|           long long int oldID = trackIt->second["trackid"].asInt(); |           long long int oldID = trackIt->second["trackid"].asInt(); | ||||||
|           long long int mappedID = getNextFree(trackMapping); |           long long int mappedID = getNextFree(trackMapping); | ||||||
|           trackMapping[it->first].insert(std::pair<int,int>(oldID,mappedID)); |           trackMapping[it->first].insert(std::pair<int,int>(oldID,mappedID)); | ||||||
|           trackIt->second["trackid"] = mappedID; |  | ||||||
|           for (JSON::ArrIter keyIt = trackIt->second["keys"].ArrBegin(); keyIt != trackIt->second["keys"].ArrEnd(); keyIt++){ |           for (JSON::ArrIter keyIt = trackIt->second["keys"].ArrBegin(); keyIt != trackIt->second["keys"].ArrEnd(); keyIt++){ | ||||||
|             keyframeInfo tmpInfo; |             keyframeInfo tmpInfo; | ||||||
|             tmpInfo.fileName = it->first; |             tmpInfo.fileName = it->first; | ||||||
|  | @ -99,12 +98,15 @@ namespace Converters { | ||||||
|             } |             } | ||||||
|             allSorted.insert(std::pair<int,keyframeInfo>((*keyIt)["time"].asInt(),tmpInfo)); |             allSorted.insert(std::pair<int,keyframeInfo>((*keyIt)["time"].asInt(),tmpInfo)); | ||||||
|           } |           } | ||||||
|           trackIt->second.removeMember("keys"); |           std::cerr << it->first << "::" << oldID << ":\n" << trackIt->second.toPrettyString() << std::endl << std::endl; | ||||||
|           trackIt->second.removeMember("frags"); |           newMeta["tracks"][it->first + JSON::Value(mappedID).asString()] = trackIt->second; | ||||||
|           newMeta["tracks"][JSON::Value(mappedID).asString()] = trackIt->second; |           newMeta["tracks"][it->first + JSON::Value(mappedID).asString()]["trackid"] = mappedID; | ||||||
|  |           newMeta["tracks"][it->first + JSON::Value(mappedID).asString()].removeMember("keys"); | ||||||
|  |           newMeta["tracks"][it->first + JSON::Value(mappedID).asString()].removeMember("frags"); | ||||||
|         } |         } | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|  |     newMeta["allsortedsize"] = (long long int)allSorted.size(); | ||||||
| 
 | 
 | ||||||
|     if (fullSort){ |     if (fullSort){ | ||||||
|       meta.null(); |       meta.null(); | ||||||
|  | @ -121,16 +123,18 @@ namespace Converters { | ||||||
|       inFiles[sortIt->second.fileName].seek_time(sortIt->second.keyTime); |       inFiles[sortIt->second.fileName].seek_time(sortIt->second.keyTime); | ||||||
|       inFiles[sortIt->second.fileName].seekNext(); |       inFiles[sortIt->second.fileName].seekNext(); | ||||||
|       while (inFiles[sortIt->second.fileName].getJSON() && inFiles[sortIt->second.fileName].getBytePos() < sortIt->second.endBPos && !inFiles[sortIt->second.fileName].reachedEOF()){ |       while (inFiles[sortIt->second.fileName].getJSON() && inFiles[sortIt->second.fileName].getBytePos() < sortIt->second.endBPos && !inFiles[sortIt->second.fileName].reachedEOF()){ | ||||||
|  |         if (inFiles[sortIt->second.fileName].getJSON()["trackid"].asInt() == sortIt->second.trackID){ | ||||||
|           inFiles[sortIt->second.fileName].getJSON()["trackid"] = trackMapping[sortIt->second.fileName][inFiles[sortIt->second.fileName].getJSON()["trackid"].asInt()]; |           inFiles[sortIt->second.fileName].getJSON()["trackid"] = trackMapping[sortIt->second.fileName][inFiles[sortIt->second.fileName].getJSON()["trackid"].asInt()]; | ||||||
|           outFile.writePacket(inFiles[sortIt->second.fileName].getJSON()); |           outFile.writePacket(inFiles[sortIt->second.fileName].getJSON()); | ||||||
|           inFiles[sortIt->second.fileName].seekNext(); |           inFiles[sortIt->second.fileName].seekNext(); | ||||||
|         } |         } | ||||||
|       } |       } | ||||||
|  |     } | ||||||
| 
 | 
 | ||||||
|     if (fullSort || (meta.isMember("merged") && meta["merged"])){ |     if (fullSort || (meta.isMember("merged") && meta["merged"])){ | ||||||
|       newMeta["tracks"]["merged"] = true; |       newMeta["merged"] = true; | ||||||
|     }else{ |     }else{ | ||||||
|       newMeta["tracks"].removeMember("merged"); |       newMeta.removeMember("merged"); | ||||||
|     } |     } | ||||||
|     std::string writeMeta = newMeta.toPacked(); |     std::string writeMeta = newMeta.toPacked(); | ||||||
|     meta["moreheader"] = outFile.addHeader(writeMeta); |     meta["moreheader"] = outFile.addHeader(writeMeta); | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Erik Zandvliet
						Erik Zandvliet