[MPlayer-dev-eng] Patches for NUT

Oded Shimon ods15 at ods15.dyndns.org
Fri Feb 10 10:28:34 CET 2006


On Fri, Feb 10, 2006 at 10:58:35AM +0200, Oded Shimon wrote:
> On Fri, Feb 10, 2006 at 02:48:23AM -0500, Rich Felker wrote:
> > On Fri, Feb 10, 2006 at 02:34:30AM +0200, Oded Shimon wrote:
> > > Rich suggested an implementation for compare_ts that does not require 
> > > convert_ts or division (long 1st grade multiplication). As for convert_ts, 
> > > it's use could be eliminated by preparing threshold in every timebase at 
> > > init, and:
> > > (t2 - t1 > thres)
> > > 
> > > Is identical to:
> > > (t2 - thres > t1)
> > 
> > It's not identical because thres can't necessarily be expressed in the
> > timebase of t2. But maybe it can be used somehow.
> 
> Given the implementation I showed, it is identical, this is what I hated 
> about this threshold idea, it's very impercise, which is why now I 
> suggest..
> pts_threshold, per stream, from last_pts . Same idea Michael had before my 
> suggestion, however, last_pts is _NOT_ the pts of the last frame in the 
> same stream (which would be very far in case of subtitles), it is the 
> last_pts CONTEXT, which is reset by syncpoints all over. So, even for 
> subtitles, it will never be more than 1 second away or so. This won't even 
> need an extra variable. I think it is the best solution...

crc32 and the max_pts_distance explained above. can I commit?

- ods15
-------------- next part --------------
Index: DOCS/tech/mpcf.txt
===================================================================
RCS file: /cvsroot/mplayer/main/DOCS/tech/mpcf.txt,v
retrieving revision 1.100
diff -u -r1.100 mpcf.txt
--- DOCS/tech/mpcf.txt	7 Feb 2006 16:52:05 -0000	1.100
+++ DOCS/tech/mpcf.txt	10 Feb 2006 09:27:13 -0000
@@ -172,6 +172,7 @@
     time_base_nom                       v
     time_base_denom                     v
     msb_pts_shift                       v
+    max_pts_distance                    v
     decode_delay                        v
     fixed_fps                           u(1)
     reserved                            u(7)
@@ -371,6 +372,12 @@
     good reason to set it higher, otherwise reasonable error recovery will
     be impossible
 
+max_pts_distance
+    max absoloute difference of pts of new frame from last_pts in the
+    timebase of the stream, without a syncpoint immediately before the
+    frame. Note that last_pts is not necessarily the pts of the last frame
+    on the same stream, as it is altered by syncpoint timestamps.
+
 stream_id
     Stream identifier
     stream_id MUST be < stream_count
@@ -546,7 +553,7 @@
     the number of samples per second
 
 checksum
-    adler32 checksum
+    crc32 checksum
     checksum is calculated for the area pointed to by forward_ptr not
     including the checksum itself (from first byte after the
     forward_ptr until last byte before the checksum).


More information about the MPlayer-dev-eng mailing list