summaryrefslogtreecommitdiffstats
path: root/DOCS
diff options
context:
space:
mode:
authormichael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-11-17 12:44:10 +0000
committermichael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-11-17 12:44:10 +0000
commit3e41eed182adffbeafa54f0bd1a835cdefd73581 (patch)
tree9f2b4e93756ae312e7a366e2385662eec949b3cd /DOCS
parent8d0b695d2c531d883dd13811d64b38c8b48c2cad (diff)
downloadmpv-3e41eed182adffbeafa54f0bd1a835cdefd73581.tar.bz2
mpv-3e41eed182adffbeafa54f0bd1a835cdefd73581.tar.xz
seeking
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20981 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'DOCS')
-rw-r--r--DOCS/tech/nut.txt23
1 files changed, 23 insertions, 0 deletions
diff --git a/DOCS/tech/nut.txt b/DOCS/tech/nut.txt
index 631c920556..3aec400baf 100644
--- a/DOCS/tech/nut.txt
+++ b/DOCS/tech/nut.txt
@@ -901,6 +901,29 @@ backup headers starting at offset 2^x; for each x players SHOULD end their
search at a particular offset when any startcode is found (including syncpoint)
+Seeking without an index (non-normative):
+-----------------------------------------
+A. backward seeking
+ 1. perform a binary search on the syncpoint timestamps finding the one
+ which is largest and <= the target timestamp
+B. forward seeking
+ 1a. perform a binary search on the syncpoint timestamps finding the one
+ which is smallest and >= the target timestamp
+ 1b. perform a binary search on the syncpoint back pointers finding the
+ smallest one which has a back ptr >= the position of what was found in 1.
+2. follow the back pointer to the correspoding syncpoint
+
+Seeking with an index (non-normative):
+--------------------------------------
+The demuxer only has to find the appropriate keyframe in the index and
+start demuxing from the previous syncpoint
+
+Note, more complicated seeking methods exist which are capable of quickly
+seeking to the optimal point in the presence of an index even if only a
+subset of all streams are active but a muxer SHOULD place syncpoints,
+and keyframes if it can affect the placement of keyframes so that simple
+low complexity seeking works with fine granularity
+
Semantic requirements:
======================