Ogg 2 DTSC works
This commit is contained in:
parent
a0a6e957a5
commit
8686772ad6
3 changed files with 8 additions and 5 deletions
|
@ -11,7 +11,7 @@ RELEASE ?= "Generic_`getconf LONG_BIT`"
|
||||||
|
|
||||||
AM_CPPFLAGS = $(global_CFLAGS) $(MIST_CFLAGS) -DRELEASE=\"$(RELEASE)\"
|
AM_CPPFLAGS = $(global_CFLAGS) $(MIST_CFLAGS) -DRELEASE=\"$(RELEASE)\"
|
||||||
LDADD = $(MIST_LIBS)
|
LDADD = $(MIST_LIBS)
|
||||||
bin_PROGRAMS=MistBuffer MistController MistConnRAW MistConnRTMP MistConnHTTP MistConnHTTPProgressive MistConnHTTPDynamic MistConnHTTPSmooth MistConnHTTPLive MistConnTS MistPlayer MistDTSC2FLV MistFLV2DTSC MistDTSCFix MistDTSC2TS MistOGG2DTSC MistAnalyserRTMP MistAnalyserFLV MistAnalyserDTSC MistAnalyserAMF MistAnalyserMP4 MistAnalyserOGG MistOGG2DTSC
|
bin_PROGRAMS=MistBuffer MistController MistConnRAW MistConnRTMP MistConnHTTP MistConnHTTPProgressive MistConnHTTPDynamic MistConnHTTPSmooth MistConnHTTPLive MistConnTS MistPlayer MistDTSC2FLV MistFLV2DTSC MistDTSCFix MistDTSC2TS MistOGG2DTSC MistDTSC2OGG MistAnalyserRTMP MistAnalyserFLV MistAnalyserDTSC MistAnalyserAMF MistAnalyserMP4 MistAnalyserOGG
|
||||||
|
|
||||||
#buffer folder (MistBuffer, MistPlayer)
|
#buffer folder (MistBuffer, MistPlayer)
|
||||||
MistBuffer_SOURCES=buffer/buffer.cpp buffer/buffer_user.h buffer/buffer_user.cpp buffer/buffer_stream.h buffer/buffer_stream.cpp tinythread.cpp tinythread.h ../VERSION
|
MistBuffer_SOURCES=buffer/buffer.cpp buffer/buffer_user.h buffer/buffer_user.cpp buffer/buffer_stream.h buffer/buffer_stream.cpp tinythread.cpp tinythread.h ../VERSION
|
||||||
|
@ -36,6 +36,7 @@ MistConnTS_SOURCES=connectors/conn_ts.cpp ../VERSION
|
||||||
MistDTSC2FLV_SOURCES=converters/dtsc2flv.cpp
|
MistDTSC2FLV_SOURCES=converters/dtsc2flv.cpp
|
||||||
MistFLV2DTSC_SOURCES=converters/flv2dtsc.cpp
|
MistFLV2DTSC_SOURCES=converters/flv2dtsc.cpp
|
||||||
MistOGG2DTSC_SOURCES=converters/ogg2dtsc.cpp
|
MistOGG2DTSC_SOURCES=converters/ogg2dtsc.cpp
|
||||||
|
MistDTSC2OGG_SOURCES=converters/dtsc2ogg.cpp
|
||||||
MistDTSCFix_SOURCES=converters/dtscfix.cpp
|
MistDTSCFix_SOURCES=converters/dtscfix.cpp
|
||||||
MistDTSCMerge_SOURCES=converters/dtscmerge.cpp
|
MistDTSCMerge_SOURCES=converters/dtscmerge.cpp
|
||||||
MistDTSC2TS_SOURCES=converters/dtsc2ts.cpp
|
MistDTSC2TS_SOURCES=converters/dtsc2ts.cpp
|
||||||
|
|
|
@ -195,7 +195,11 @@ namespace Converters {
|
||||||
meta["tracks"][it->first]["type"] = it->second.type;
|
meta["tracks"][it->first]["type"] = it->second.type;
|
||||||
int tmp = meta["tracks"][it->first]["keys"].size();
|
int tmp = meta["tracks"][it->first]["keys"].size();
|
||||||
if (tmp > 0){
|
if (tmp > 0){
|
||||||
meta["tracks"][it->first]["keys"][tmp - 1]["len"] = it->second.lastms - meta["tracks"][it->first]["keys"][tmp - 2]["time"].asInt();
|
if (tmp > 1){
|
||||||
|
meta["tracks"][it->first]["keys"][tmp - 1]["len"] = it->second.lastms - meta["tracks"][it->first]["keys"][tmp - 2]["time"].asInt();
|
||||||
|
}else{
|
||||||
|
meta["tracks"][it->first]["keys"][tmp - 1]["len"] = it->second.lastms;
|
||||||
|
}
|
||||||
meta["tracks"][it->first]["keys"][tmp - 1]["size"] = it->second.totalSize;
|
meta["tracks"][it->first]["keys"][tmp - 1]["size"] = it->second.totalSize;
|
||||||
for (int i = 0; i < trackData[it->first].parts.size(); i++){
|
for (int i = 0; i < trackData[it->first].parts.size(); i++){
|
||||||
meta["tracks"][it->first]["keys"][tmp - 1]["parts"].append(trackData[it->first].parts[i]);
|
meta["tracks"][it->first]["keys"][tmp - 1]["parts"].append(trackData[it->first].parts[i]);
|
||||||
|
|
|
@ -65,17 +65,16 @@ namespace Converters{
|
||||||
std::cerr << "Unknown Codec, skipping" << std::endl;
|
std::cerr << "Unknown Codec, skipping" << std::endl;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
trackData[sNum].dtscID = lastTrackID++;
|
||||||
std::stringstream tID;
|
std::stringstream tID;
|
||||||
tID << "track" << trackData[sNum].dtscID;
|
tID << "track" << trackData[sNum].dtscID;
|
||||||
trackData[sNum].name = tID.str();
|
trackData[sNum].name = tID.str();
|
||||||
trackData[sNum].dtscID = lastTrackID++;
|
|
||||||
}
|
}
|
||||||
//if Serial number is available in mapping
|
//if Serial number is available in mapping
|
||||||
if(trackData.find(sNum)!=trackData.end()){
|
if(trackData.find(sNum)!=trackData.end()){
|
||||||
int offset = 0;
|
int offset = 0;
|
||||||
for (std::deque<unsigned int>::iterator it = oggPage.getSegmentTableDeque().begin(); it != oggPage.getSegmentTableDeque().end(); it++){
|
for (std::deque<unsigned int>::iterator it = oggPage.getSegmentTableDeque().begin(); it != oggPage.getSegmentTableDeque().end(); it++){
|
||||||
if (trackData[sNum].parsedHeaders){
|
if (trackData[sNum].parsedHeaders){
|
||||||
//todo output segment
|
|
||||||
//output DTSC packet
|
//output DTSC packet
|
||||||
DTSCOut.null();//clearing DTSC buffer
|
DTSCOut.null();//clearing DTSC buffer
|
||||||
DTSCOut["trackid"] = (long long)trackData[sNum].dtscID;
|
DTSCOut["trackid"] = (long long)trackData[sNum].dtscID;
|
||||||
|
@ -120,7 +119,6 @@ namespace Converters{
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}else{//if the current segment is a movie part
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue