X-Git-Url: http://code.vuplus.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fdvb%2Ftstools.cpp;h=6cd855ccd3045a0c556d34fba439073096680917;hb=3b39f8eba7740ada48af5e3b6e7b1aaa59e3356e;hp=3dff288644da91f58df0149384a14cfcd77ae943;hpb=af1080bf1a330ffa25e1d4e75c95fe0541656aa8;p=vuplus_dvbapp diff --git a/lib/dvb/tstools.cpp b/lib/dvb/tstools.cpp index 3dff288..6cd855c 100644 --- a/lib/dvb/tstools.cpp +++ b/lib/dvb/tstools.cpp @@ -704,6 +704,7 @@ int eDVBTSTools::findFrame(off_t &_offset, size_t &len, int &direction, int fram } off_t start = offset; +#if 0 /* backtrack to find the previous sequence start, in case of MPEG2 */ if ((data & 0xFF) == 0x00) { do { @@ -718,6 +719,8 @@ int eDVBTSTools::findFrame(off_t &_offset, size_t &len, int &direction, int fram start = offset; /* Failed to find corresponding sequence start, so never mind */ } +#endif + /* let's find the next frame after the given offset */ do { if (m_streaminfo.getStructureEntry(offset, data, 1)) @@ -733,9 +736,11 @@ int eDVBTSTools::findFrame(off_t &_offset, size_t &len, int &direction, int fram // eDebug("%08llx@%llx (next)", data, offset); } while (((data & 0xFF) != 9) && ((data & 0xFF) != 0x00)); /* next frame */ +#if 0 /* align to TS pkt start */ start = start - (start % 188); offset = offset - (offset % 188); +#endif len = offset - start; _offset = start;