shaka-packager/packager/media/formats
Kongqun Yang ac1d2692cf [WebM] Fix corner case segment generation problem
The original code accumulates sample durations in seconds (double)
and then generates new segment / cluster by comparing the accumulated
value with configured value.

There may be loss of precision when accumulating values in double.
For example, with a GOP of 96 frames and frame rate of 24 fps; the
accumulated frame duration for 96 frames is 3.999999999999, which is
very close to 4.0 but not 4.0. Problem would arise if segment
duration is set to 4. The created segments would have a duration of
8 seconds instead of 4 seconds.

The new code accumulates sample durations in uint64_t relative to
input time scale; the configured segment duration will be converted to
timescale for comparison. This avoids loss of precision.

Change-Id: I3ae24be82a7ce45f923a6f90fea495b8b6b2e7ef
2016-09-30 21:45:27 +00:00
..
mp2t Deprecate STLDeleter and string_as_array 2016-09-01 17:39:11 +00:00
mp4 Add encryption information in demuxer. 2016-09-08 17:13:36 +00:00
mpeg Rename top level namespace to shaka 2016-05-24 21:55:55 +00:00
webm [WebM] Fix corner case segment generation problem 2016-09-30 21:45:27 +00:00
webvtt Implemented WebM VP9 subsample encryption and decryption. 2016-08-18 13:55:36 -07:00
wvm Update DEPS to fix mac build failure 2016-08-19 13:49:41 -07:00