def isMPEG(self, file, force=False):
        """
        This MPEG starts with a sequence of 0x00 followed by a PACK Header
        http://dvd.sourceforge.net/dvdinfo/packhdr.html
        """
        file.seek(0, 0)
        buffer = file.read(10000)
        offset = 0

        # seek until the 0 byte stop
        while offset < len(buffer) - 100 and buffer[offset] == '\0':
            offset += 1
        offset -= 2

        # test for mpeg header 0x00 0x00 0x01
        header = '\x00\x00\x01%s' % chr(PACK_PKT)
        if offset < 0 or not buffer[offset:offset + 4] == header:
            if not force:
                return 0
            # brute force and try to find the pack header in the first
            # 10000 bytes somehow
            offset = buffer.find(header)
            if offset < 0:
                return 0

        # scan the 100000 bytes of data
        buffer += file.read(100000)

        # scan first header, to get basic info about
        # how to read a timestamp
        self.ReadHeader(buffer, offset)

        # store first timestamp
        self.start = self.get_time(buffer[offset + 4:])
        while len(buffer) > offset + 1000 and \
                buffer[offset:offset + 3] == '\x00\x00\x01':
            # read the mpeg header
            new_offset = self.ReadHeader(buffer, offset)

            # header scanning detected error, this is no mpeg
            if new_offset is None:
                return 0

            if new_offset:
                # we have a new offset
                offset = new_offset

                # skip padding 0 before a new header
                while len(buffer) > offset + 10 and \
                        not indexbytes(buffer, offset + 2):
                    offset += 1

            else:
                # seek to new header by brute force
                offset += buffer[offset + 4:].find('\x00\x00\x01') + 4

        # fill in values for support functions:
        self.__seek_size__ = 1000000
        self.__sample_size__ = 10000
        self.__search__ = self._find_timer_
        self.filename = file.name

        # get length of the file
        self.length = self.get_length()
        return 1