Document the motivation for the 120 ms repacketizer limit.
authorRalph Giles <giles@mozilla.com>
Sat, 20 Dec 2014 20:37:48 +0000 (12:37 -0800)
committerRalph Giles <giles@mozilla.com>
Sat, 20 Dec 2014 20:37:48 +0000 (12:37 -0800)
See the mailing list discussion at
http://lists.xiph.org/pipermail/opus/2014-December/002802.html

include/opus.h

index 93a53a2..b0bdf6f 100644 (file)
@@ -616,7 +616,10 @@ OPUS_EXPORT void opus_pcm_soft_clip(float *pcm, int frame_size, int channels, fl
   * merged. Splitting valid Opus packets is always guaranteed to succeed,
   * whereas merging valid packets only succeeds if all frames have the same
   * mode, bandwidth, and frame size, and when the total duration of the merged
   * merged. Splitting valid Opus packets is always guaranteed to succeed,
   * whereas merging valid packets only succeeds if all frames have the same
   * mode, bandwidth, and frame size, and when the total duration of the merged
-  * packet is no more than 120 ms.
+  * packet is no more than 120 ms. The 120 ms limit comes from the
+  * specification and limits decoder memory requirements at a point where
+  * framing overhead becomes negligible.
+  *
   * The repacketizer currently only operates on elementary Opus
   * streams. It will not manipualte multistream packets successfully, except in
   * the degenerate case where they consist of data from a single stream.
   * The repacketizer currently only operates on elementary Opus
   * streams. It will not manipualte multistream packets successfully, except in
   * the degenerate case where they consist of data from a single stream.