The mdat generally does not start at offset 0, we have to include the
size of the moof and whatever else was in front of the mdat.
* size, else we will still be able to use this when dealing with gap'ed
* input */
qtdemux->mdatleft = *running_offset - initial_offset;
+ qtdemux->mdatoffset = initial_offset;
qtdemux->mdatsize = qtdemux->mdatleft;
stream->n_samples += samples_count;
/* Finally update all push-based values to the expected values */
demux->neededbytes = demux->streams[i]->samples[res].size;
demux->offset = GST_BUFFER_OFFSET (inbuf);
- demux->mdatleft = demux->mdatsize - demux->offset;
+ demux->mdatleft =
+ demux->mdatsize - demux->offset + demux->mdatoffset;
demux->todrop = 0;
}
}