[MPlayer-dev-eng] [PATCH] resubmit realv4.diff

Balatoni Denes pnis at coder.hu
Fri Mar 7 10:43:48 CET 2003


Hi!

> no, i fixed it in cvs, so pict_type & kf is (IMHO) correctly read but i
> just tried it with 1 rv40 & 1 rv30 file ...
Ah,I think that should work indeed.

How about this stuff:

if ((priv->kf_pts==65535) || s[0]==0 || s[0]==1) {
+	    int tmp=(timestamp&0x1fff)-kf;
+	    if ((ABS(priv->kf_pts_error-tmp) > 100) || (priv->kf_pts==65535)) 
drop=1;
+	    priv->kf_pts_error=tmp;
+	    mp_msg(MSGT_DEMUX,MSGL_V,"kf_pts vs. stream_pts desync: 
%d\n",priv->kf_pts_error);
+	}

This is because some of the samples have a discontinuity in the timestamps
in the frame header, and it seemed when s[0]==0|1 was the best to compare.

Also this:
-			    if(dp_data[dp_hdr->len]&0x20) --dp_hdr->chunks; else
+			    if((dp_data[dp_hdr->len]&0x20) && (sh_video->format!=0x30345652)) 
--dp_hdr->chunks; else

to fix rv40 frames cut in the middle.


And this:
-    for (i = 1; i < num_of_headers; i++)
+    for (;;)

as num_of_headers is a random number sometimes


Also there was a patch to vd_real, to ask the codec first how big the decoded 
frame is, before initializing vo - fixed Pen3.rm and Noir.rm and dt???.rm on 
ftp.

>
> Michael

bye
Denes




More information about the MPlayer-dev-eng mailing list