changeset 1295:f1199bd41d81

mpeg2 timing & fps fix for ffmpeg12 codec
author arpi
date Sun, 08 Jul 2001 12:34:08 +0000
parents 0a8e0c7ddd0c
children 32f5d26baf86
files mplayer.c
diffstat 1 files changed, 8 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/mplayer.c	Sun Jul 08 12:29:38 2001 +0000
+++ b/mplayer.c	Sun Jul 08 12:34:08 2001 +0000
@@ -1517,6 +1517,7 @@
         videobuf_len=0;
         while(videobuf_len<VIDEOBUFFER_SIZE-MAX_VIDEO_PACKET_SIZE){
           int i=sync_video_packet(d_video);
+	  void* buffer=&videobuffer[videobuf_len+4];
           if(in_frame){
             if(i<0x101 || i>=0x1B0){  // not slice code -> end of frame
 #if 1
@@ -1538,6 +1539,13 @@
 	  if(grab_frames==2 && (i==0x1B3 || i==0x1B8)) grab_frames=1;
           if(!read_video_packet(d_video)){ eof=1; break;} // EOF
           //printf("read packet 0x%X, len=%d\n",i,videobuf_len);
+	  if(sh_video->codec->driver!=1){
+	    // not libmpeg2:
+	    switch(i){
+	      case 0x1B3: header_process_sequence_header (picture, buffer);break;
+	      case 0x1B5: header_process_extension (picture, buffer);break;
+	    }
+	  }
         }
         
         if(videobuf_len>max_framesize) max_framesize=videobuf_len; // debug