changeset 9310:b16480522be9

some typos info_header -> info_packet adding variable sized reserved_bytes where i forgot it start/end time in the info_packet stuffing_packet
author michael
date Fri, 07 Feb 2003 09:48:06 +0000
parents 073127ce3644
children 4b04416ada91
files DOCS/tech/mpcf.txt
diffstat 1 files changed, 38 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/DOCS/tech/mpcf.txt	Fri Feb 07 02:45:12 2003 +0000
+++ b/DOCS/tech/mpcf.txt	Fri Feb 07 09:48:06 2003 +0000
@@ -72,7 +72,7 @@
 	version					v
 	stream_count				v
 	file_size				v
-	length_in msec				v
+	length_in_msec				v
 	reserved_bytes
 	checksum				u(32)
 
@@ -144,18 +144,27 @@
 		index_timestamp			v
 		index_position			v
 	}
+	reserved_bytes
 	checksum				u(32)
 
-info_header: (optional)
+info_packet: (optional)
 	packet header
 	info_startcode				f(64)
+	start_time				v
+	end_time				v
 	entry_count				v
 	for(i=0; i<entry_count; i++){
 		name				sz
 		value				sz
         }
+	reserved_bytes
         checksum				u(32)
-        
+
+stuffing_packet: (optional)
+	packet_header
+	stuffing_startcode			f(64)
+	for(i=0; i<forward_ptr - length_of_non_reserved; i++)
+		stuffing			f(8)
 
 forward_ptr
 backward_ptr
@@ -281,6 +290,10 @@
 	position in bytes of the first byte of the keyframe header, relative
 	to the last index_position
 
+start_time, stop_time
+	the time range in msecs to which the info applies
+	Note: can be used to mark chapters
+        
 name
 	the name of the info entry, valid names are
 	"Author","Description","Copyright","Encoder","Title"
@@ -289,7 +302,8 @@
 
 value
 	
-        
+stuffing
+	0xFF
 
 			Structure:
 
@@ -307,11 +321,27 @@
 and repeated headers MUST be identical
 
 headers MUST be repeated every 10sec at least ? FIXME
+headers MUST be repeated at least twice (so they exist 3 times in a file)
 
-the info_header can be repeated, it can also contain different names & values
-each time
-        
-        
+		Index
+the index can be repeated but there MUST be at least one at the end
+
+		Info packets
+the info_packet can be repeated, it can also contain different names & values
+each time but only if allso the time is different
+Info packets can be used to describe the file or some part of it (chapters)
+
+info packets, SHOULD be placed at the begin of the file at least
+for realtime streaming info packets will normally be transmitted when they apply
+for example, the current song title & artist of the currently shown music video
+
+		Stuffing packets
+can be used as a filler, for example to leave some empty space at the begin for
+a copy of the index
+
+		Unknown packets
+MUST be ignored by the decoder
+
 			Sample code (GPL, & untested)
 
 typedef BufferContext{