Generalized DTSH header reading and writing of Inputs

This commit is contained in:
Thulinma 2016-09-14 19:46:27 +02:00
parent 6e7d2c2d4a
commit 11ce47ace9
4 changed files with 13 additions and 38 deletions

View file

@ -91,11 +91,7 @@ namespace Mist {
bool inputAV::readHeader() { bool inputAV::readHeader() {
//See whether a separate header file exists. //See whether a separate header file exists.
DTSC::File tmp(config->getString("input") + ".dtsh"); if (readExistingHeader()){return true;}
if (tmp){
myMeta = tmp.getMeta();
return true;
}
myMeta.tracks.clear(); myMeta.tracks.clear();
myMeta.live = false; myMeta.live = false;
@ -204,10 +200,7 @@ namespace Mist {
myMeta.live = false; myMeta.live = false;
myMeta.vod = true; myMeta.vod = true;
//store dtsc-style header file for faster processing, later myMeta.toFile(config->getString("input") + ".dtsh");
std::ofstream oFile(std::string(config->getString("input") + ".dtsh").c_str());
oFile << myMeta.toJSON().toNetPacked();
oFile.close();
seek(0); seek(0);
return true; return true;

View file

@ -51,11 +51,7 @@ namespace Mist {
return false; return false;
} }
//See whether a separate header file exists. //See whether a separate header file exists.
DTSC::File tmp(config->getString("input") + ".dtsh"); if (readExistingHeader()){return true;}
if (tmp) {
myMeta = tmp.getMeta();
return true;
}
//parse ismv header //parse ismv header
fseek(inFile, 0, SEEK_SET); fseek(inFile, 0, SEEK_SET);
std::string ftyp; std::string ftyp;
@ -119,9 +115,7 @@ namespace Mist {
} }
curBytePos = ftell(inFile); curBytePos = ftell(inFile);
} }
std::ofstream oFile(std::string(config->getString("input") + ".dtsh").c_str()); myMeta.toFile(config->getString("input") + ".dtsh");
oFile << myMeta.toJSON().toNetPacked();
oFile.close();
return true; return true;
} }

View file

@ -275,11 +275,8 @@ namespace Mist {
fseeko(inFile,0,SEEK_SET); fseeko(inFile,0,SEEK_SET);
//See whether a separate header file exists. //See whether a separate header file exists.
DTSC::File tmpdtsh(config->getString("input") + ".dtsh"); if (readExistingHeader()){return true;}
if (tmpdtsh){
myMeta = tmpdtsh.getMeta();
return true;
}
trackNo = 0; trackNo = 0;
//Create header file from MP4 data //Create header file from MP4 data
while(!feof(inFile)){ while(!feof(inFile)){
@ -560,9 +557,7 @@ namespace Mist {
clearerr(inFile); clearerr(inFile);
//outputting dtsh file //outputting dtsh file
std::ofstream oFile(std::string(config->getString("input") + ".dtsh").c_str()); myMeta.toFile(config->getString("input") + ".dtsh");
oFile << myMeta.toJSON().toNetPacked();
oFile.close();
return true; return true;
} }

View file

@ -233,14 +233,9 @@ namespace Mist {
///it writes the remaining metadata. ///it writes the remaining metadata.
///\todo Find errors, perhaps parts can be made more modular ///\todo Find errors, perhaps parts can be made more modular
bool inputTS::readHeader() { bool inputTS::readHeader() {
if (!inFile) { if (!inFile){return false;}
return false; //See whether a separate header file exists.
} if (readExistingHeader()){return true;}
DTSC::File tmp(config->getString("input") + ".dtsh");
if (tmp) {
myMeta = tmp.getMeta();
return true;
}
TS::Packet packet;//to analyse and extract data TS::Packet packet;//to analyse and extract data
fseek(inFile, 0, SEEK_SET);//seek to beginning fseek(inFile, 0, SEEK_SET);//seek to beginning
@ -261,9 +256,7 @@ namespace Mist {
} }
fseek(inFile, 0, SEEK_SET); fseek(inFile, 0, SEEK_SET);
std::ofstream oFile(std::string(config->getString("input") + ".dtsh").c_str()); myMeta.toFile(config->getString("input") + ".dtsh");
oFile << myMeta.toJSON().toNetPacked();
oFile.close();
return true; return true;
} }
#endif #endif