Ejemplo n.º 1
0
 void Input::convert(){
   //check filename for no -
   if (config->getString("output") != "-"){
     std::string filename = config->getString("output");
     if (filename.size() < 5 || filename.substr(filename.size() - 5) != ".dtsc"){
       filename += ".dtsc";
     }
     //output to dtsc
     DTSC::Meta newMeta = myMeta;
     newMeta.reset();
     std::ofstream file(filename.c_str());
     long long int bpos = 0;
     seek(0);
     getNext();
     while (thisPacket){
       newMeta.updatePosOverride(thisPacket, bpos);
       file.write(thisPacket.getData(), thisPacket.getDataLen());
       bpos += thisPacket.getDataLen();
       getNext();
     }
     //close file
     file.close();
     //create header
     file.open((filename+".dtsh").c_str());
     file << newMeta.toJSON().toNetPacked();
     file.close();
   }else{
     DEBUG_MSG(DLVL_FAIL,"No filename specified, exiting");
   }
 }