comparison DOCS/tech/mpcf.txt @ 17533:86a9a60ef596

Index repetition
author ods15
date Sat, 04 Feb 2006 08:54:31 +0000
parents 724816ab19be
children 114699930136
comparison
equal deleted inserted replaced
17532:724816ab19be 17533:86a9a60ef596
297 297
298 Complete definition: 298 Complete definition:
299 299
300 file: 300 file:
301 file_id_string 301 file_id_string
302 while(!eof && next_code != index_startcode){ 302 while(!eof){
303 main_header 303 main_header
304 for(i=0; i<stream_count; i++){ 304 for(i=0; i<stream_count; i++){
305 if(next_packet==video_stream_header) 305 if(next_packet==video_stream_header)
306 video_stream_header 306 video_stream_header
307 else if(next_packet==audio_stream_header) 307 else if(next_packet==audio_stream_header)
310 other_stream_header 310 other_stream_header
311 } 311 }
312 while(next_code == info_startcode){ 312 while(next_code == info_startcode){
313 info_packet 313 info_packet
314 } 314 }
315 while(next_code != main_startcode){ 315 if(next_code == index_startcode){
316 index
317 }
318 if (!eof) while(next_code != main_startcode){
316 if(next_code == syncpoint_startcode) 319 if(next_code == syncpoint_startcode)
317 syncpoint 320 syncpoint
318 frame 321 frame
319 } 322 }
320 } 323 }
321 if (next_code == index_startcode){ 324 if (has_index){
322 index
323 index_ptr u(64) 325 index_ptr u(64)
324 } 326 }
325 327
326 328
327 Tag description: 329 Tag description:
588 that EOR. EOR is unset by the first keyframe after it. 590 that EOR. EOR is unset by the first keyframe after it.
589 591
590 index_ptr 592 index_ptr
591 Length in bytes from the first byte of the index startcode to the first 593 Length in bytes from the first byte of the index startcode to the first
592 byte of the index_ptr. If there is no index, index_ptr MUST NOT be 594 byte of the index_ptr. If there is no index, index_ptr MUST NOT be
593 written. 595 written. If there are several indexes, index_ptr MUST point to the last
596 index.
594 597
595 id 598 id
596 the ID of the type/name pair, so it is more compact 599 the ID of the type/name pair, so it is more compact
597 0 means end 600 0 means end
598 601
690 693
691 Index: 694 Index:
692 ------ 695 ------
693 696
694 Note: with realtime streaming, there is no end, so no index there either 697 Note: with realtime streaming, there is no end, so no index there either
695 An index SHOULD be written for every stream. Indices MUST be placed at end 698 Index MAY only be repeated after main headers.
696 of file. Indices MAY be repeated for a stream. 699 If an index is written anywhere in the file, it MUST be written at end of
700 file as well.
697 701
698 702
699 Info frames: 703 Info frames:
700 ------------ 704 ------------
701 705