oggz-sort sorts an Ogg file, interleaving
pages in order of presentation time.
It correctly interprets the granulepos timestamps of
Ogg CELT, CMML, Dirac, FLAC, Kate, PCM, Speex, Theora and Vorbis
Run oggz-known-codecs(1) for a full list
of codecs known by the installed version of oggz.
Some encoders produce files with incorrect page ordering; for example,
some audio and video pages may occur out of order. Although these files
are usually playable, it can be difficult to accurately seek or scrub
on them, increasing the likelihood of glitches during playback.
Players may also need to use more memory in order to buffer the audio
and video data for synchronized playback, which can be a problem when
the files are viewed on low-memory devices.
Some older Ogg encoders also produce pages which incorrectly have
granulepos timestamps recorded that shouldnt be: pages which have no
completed packets must have a granulepos of -1.
oggz-sort will correct such granulepos during the
process of sorting.
The tool oggz-validate can be used to check the
relative ordering of packets in a file, and also to detect incorrect
granulepos on pages with no completed packets. If either of these errors
are reported, or use oggz-sort to fix the problem.