[matroska] r929 - trunk/DvdMenuXtractor
[email protected] Wed, 27 Oct 2004 02:38:33 +0400 (MSD)
Newsgroups
gmane.comp.multimedia.matroska.cvs
Message-ID
<[email protected] >
Author: robux4
Date: 2004-10-27 02:38:32 +0400 (Wed, 27 Oct 2004)
New Revision: 929
Modified:
trunk/DvdMenuXtractor/VobParser.cpp
trunk/DvdMenuXtractor/VobParser.h
Log:
get back the audio delay in the filename
Modified: trunk/DvdMenuXtractor/VobParser.cpp
===================================================================
--- trunk/DvdMenuXtractor/VobParser.cpp 2004-10-26 21:52:23 UTC (rev 928)
+++ trunk/DvdMenuXtractor/VobParser.cpp 2004-10-26 22:38:32 UTC (rev 929)
@@ -629,7 +629,7 @@
if(m_demuxer)
{
m_demuxer->ProcessVideoStream(&m_buff[m_index],
- length - 3 - pes_header_data_content.PES_header_data_len, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
+ length - 3 - pes_header_data_content.PES_header_data_len, (int32_t)pktinfo.pts/90, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
}
}
@@ -643,7 +643,7 @@
if(m_demuxer)
{
m_demuxer->ProcessAudioStream(&m_buff[m_index],
- length - 3 - pes_header_data_content.PES_header_data_len, StreamID, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
+ length - 3 - pes_header_data_content.PES_header_data_len, StreamID, (int32_t)pktinfo.pts/90, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
}
}
@@ -665,7 +665,7 @@
if(m_demuxer)
{
// .sub files the VobSub way (includes the whole packet)
- m_demuxer->ProcessSubStream(m_buff, DVD_VIDEO_LB_LEN, substreamID, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
+ m_demuxer->ProcessSubStream(m_buff, DVD_VIDEO_LB_LEN, substreamID, (int32_t)pktinfo.pts/90, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
}
}
else if(substreamID >= SUBSTREAM_AC3_LOW && substreamID < SUBSTREAM_AC3_HIGH)
@@ -679,7 +679,7 @@
if(m_demuxer)
{
uint16_t ac3DataLen = length - (m_index - dataStartIndex);
- m_demuxer->ProcessAC3Stream(&m_buff[m_index], ac3DataLen, substreamID, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
+ m_demuxer->ProcessAC3Stream(&m_buff[m_index], ac3DataLen, substreamID, (int32_t)pktinfo.pts/90, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
}
}
else if(substreamID >= SUBSTREAM_DTS_LOW && substreamID < SUBSTREAM_DTS_HIGH)
@@ -692,7 +692,7 @@
if(m_demuxer)
{
uint16_t ac3DataLen = length - (m_index - dataStartIndex);
- m_demuxer->ProcessDTSStream(&m_buff[m_index], ac3DataLen, substreamID, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
+ m_demuxer->ProcessDTSStream(&m_buff[m_index], ac3DataLen, substreamID, (int32_t)pktinfo.pts/90, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
}
}
else if(substreamID >= SUBSTREAM_PCM_LOW && substreamID < SUBSTREAM_PCM_HIGH)
@@ -703,7 +703,7 @@
if(m_demuxer)
{
uint16_t ac3DataLen = length - (m_index - dataStartIndex);
- m_demuxer->ProcessLPCMStream(&m_buff[m_index], ac3DataLen, substreamID, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
+ m_demuxer->ProcessLPCMStream(&m_buff[m_index], ac3DataLen, substreamID, (int32_t)pktinfo.pts/90, wxString::Format("DTS %d PTS %d - %d %d\n", (int32_t)m_startdts/90, (int32_t)m_startpts/90, (int32_t)pktinfo.dts/90, (int32_t)pktinfo.pts/90));
}
}
else
@@ -768,6 +768,8 @@
previous_vobid = GetVobID();
previous_cellid = GetCellID();
+ if (result)
+ m_bFirstPacket = true;
return result;
}
Modified: trunk/DvdMenuXtractor/VobParser.h
===================================================================
--- trunk/DvdMenuXtractor/VobParser.h 2004-10-26 21:52:23 UTC (rev 928)
+++ trunk/DvdMenuXtractor/VobParser.h 2004-10-26 22:38:32 UTC (rev 929)
@@ -159,12 +159,12 @@
public:
Demuxer() : m_next(NULL) {}
virtual ~Demuxer() {}
- virtual void ProcessVideoStream(uint8_t* buff, uint32_t size, wxString & debug) {}
- virtual void ProcessAudioStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug) {}
- virtual void ProcessAC3Stream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug) {}
- virtual void ProcessLPCMStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug) {}
- virtual void ProcessDTSStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug) {}
- virtual void ProcessSubStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug) {}
+ virtual void ProcessVideoStream(uint8_t* buff, uint32_t size, int32_t delay, wxString & debug) {}
+ virtual void ProcessAudioStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug) {}
+ virtual void ProcessAC3Stream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug) {}
+ virtual void ProcessLPCMStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug) {}
+ virtual void ProcessDTSStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug) {}
+ virtual void ProcessSubStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug) {}
Demuxer* m_next; // used by the CompositeDemuxWriter (linked list of demuxer)
};
@@ -191,13 +191,13 @@
fclose(m_TimecodeFile);
}
- void Write(uint8_t* buff, uint32_t size, wxString & debug)
+ void Write(uint8_t* buff, uint32_t size, int32_t delay, wxString & debug)
{
if(!m_file)
{
wxString m_filename = m_Filename;
-// if (delay != 0)
-// m_filename += wxString::Format("_%dms",delay);
+ if (delay != 0)
+ m_filename += wxString::Format("_%dms",delay);
m_filename += ".";
m_filename += m_fileExtension;
m_file = fopen(m_filename.c_str(),"wb");
@@ -225,7 +225,7 @@
{
public:
VideoDemuxWriter(const char* filenamePrefix) : Writer(filenamePrefix,"m2v") {}
- void ProcessVideoStream(uint8_t* buff, uint32_t size, wxString & debug) { Write(buff, size, debug); }
+ void ProcessVideoStream(uint8_t* buff, uint32_t size, int32_t delay, wxString & debug) { Write(buff, size, delay, debug); }
};
// ----------------------------------------------------------------------------
@@ -235,9 +235,9 @@
public:
AC3DemuxWriter(const char* filenamePrefix, const uint8_t streamID) :
Writer(filenamePrefix,"ac3"), m_streamID(streamID) {}
- void ProcessAC3Stream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug)
+ void ProcessAC3Stream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug)
{
- if(m_streamID == streamID) { Write(buff,size, debug); }
+ if(m_streamID == streamID) { Write(buff,size, delay, debug); }
}
private:
uint8_t m_streamID;
@@ -250,9 +250,9 @@
public:
DTSDemuxWriter(const char* filenamePrefix, const uint8_t streamID) :
Writer(filenamePrefix,"dts"), m_streamID(streamID) {}
- void ProcessDTSStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug)
+ void ProcessDTSStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug)
{
- if(m_streamID == streamID) { Write(buff,size, debug); }
+ if(m_streamID == streamID) { Write(buff,size, delay, debug); }
}
private:
uint8_t m_streamID;
@@ -265,9 +265,9 @@
public:
LPCMDemuxWriter(const char* filenamePrefix, const uint8_t streamID) :
Writer(filenamePrefix,"pcm"), m_streamID(streamID) {}
- void ProcessLPCMStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug)
+ void ProcessLPCMStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug)
{
- if(m_streamID == streamID) { Write(buff,size, debug); }
+ if(m_streamID == streamID) { Write(buff,size, delay, debug); }
}
private:
uint8_t m_streamID;
@@ -280,9 +280,9 @@
public:
MPADemuxWriter(const char* filenamePrefix, const uint8_t streamID) :
Writer(filenamePrefix,"mpa"), m_streamID(streamID) {}
- void ProcessAudioStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug)
+ void ProcessAudioStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug)
{
- if(m_streamID == streamID) { Write(buff,size, debug); }
+ if(m_streamID == streamID) { Write(buff,size, delay, debug); }
}
private:
uint8_t m_streamID;
@@ -295,9 +295,9 @@
public:
SubDemuxWriter(const char* filenamePrefix, const uint8_t streamID) :
Writer(filenamePrefix, "sub"), m_streamID(streamID) {}
- void ProcessSubStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug)
+ void ProcessSubStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug)
{
- if(m_streamID == streamID) { Write(buff,size, debug); }
+ if(m_streamID == streamID) { Write(buff,size, delay, debug); }
}
private:
uint8_t m_streamID;
@@ -333,62 +333,62 @@
m_demuxerRoot = NULL;
}
- void ProcessVideoStream(uint8_t* buff, uint32_t size, wxString & debug)
+ void ProcessVideoStream(uint8_t* buff, uint32_t size, int32_t delay, wxString & debug)
{
Demuxer* demuxCursor = m_demuxerRoot;
while(demuxCursor)
{
- demuxCursor->ProcessVideoStream(buff,size, debug);
+ demuxCursor->ProcessVideoStream(buff,size, delay, debug);
demuxCursor = demuxCursor->m_next;
}
}
- void ProcessAudioStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug)
+ void ProcessAudioStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug)
{
Demuxer* demuxCursor = m_demuxerRoot;
while(demuxCursor)
{
- demuxCursor->ProcessAudioStream(buff,size, streamID, debug);
+ demuxCursor->ProcessAudioStream(buff,size, streamID, delay, debug);
demuxCursor = demuxCursor->m_next;
}
}
- void ProcessAC3Stream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug)
+ void ProcessAC3Stream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug)
{
Demuxer* demuxCursor = m_demuxerRoot;
while(demuxCursor)
{
- demuxCursor->ProcessAC3Stream(buff,size,streamID, debug);
+ demuxCursor->ProcessAC3Stream(buff,size,streamID, delay, debug);
demuxCursor = demuxCursor->m_next;
}
}
- void ProcessDTSStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug)
+ void ProcessDTSStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug)
{
Demuxer* demuxCursor = m_demuxerRoot;
while(demuxCursor)
{
- demuxCursor->ProcessDTSStream(buff,size,streamID, debug);
+ demuxCursor->ProcessDTSStream(buff,size,streamID, delay, debug);
demuxCursor = demuxCursor->m_next;
}
}
- void ProcessLPCMStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug)
+ void ProcessLPCMStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug)
{
Demuxer* demuxCursor = m_demuxerRoot;
while(demuxCursor)
{
- demuxCursor->ProcessLPCMStream(buff,size,streamID, debug);
+ demuxCursor->ProcessLPCMStream(buff,size,streamID, delay, debug);
demuxCursor = demuxCursor->m_next;
}
}
- void ProcessSubStream(uint8_t* buff, uint32_t size, uint8_t streamID, wxString & debug)
+ void ProcessSubStream(uint8_t* buff, uint32_t size, uint8_t streamID, int32_t delay, wxString & debug)
{
Demuxer* demuxCursor = m_demuxerRoot;
while(demuxCursor)
{
- demuxCursor->ProcessSubStream(buff,size,streamID, debug);
+ demuxCursor->ProcessSubStream(buff,size,streamID, delay, debug);
demuxCursor = demuxCursor->m_next;
}
}