[MPlayer-dev-eng] lavcresample at end

Reimar Döffinger Reimar.Doeffinger at stud.uni-karlsruhe.de
Wed Sep 14 00:43:31 CEST 2005


Hi,
the attached patch causes lavcresample to be inserted at the end of the
filter chain.
The point is that some decoders (namely mpc) can output samples that are
out of range. -af volume fixes this by clipping.
But this approach will not work if lavcresample is inserted inbetween
since it does not support float.
Please comment (and if you know, also explain that code there, why
af_append/af_prepend is chosen when).

Greetings,
Reimar Döffinger
-------------- next part --------------
Index: libaf/af.c
===================================================================
RCS file: /cvsroot/mplayer/main/libaf/af.c,v
retrieving revision 1.49
diff -u -r1.49 af.c
--- libaf/af.c	23 Jul 2005 16:58:25 -0000	1.49
+++ libaf/af.c	13 Sep 2005 22:31:48 -0000
@@ -390,7 +390,8 @@
 #ifdef USE_LIBAVCODEC
         if ((AF_INIT_TYPE_MASK & s->cfg.force) == AF_INIT_SLOW)
           resampler = "lavcresample";
-#endif
+	{
+#else
 	if((AF_INIT_TYPE_MASK & s->cfg.force) == AF_INIT_SLOW){
 	  if(!strcmp(s->first->info->name,"format"))
 	    af = af_append(s,s->first,resampler);
@@ -398,6 +399,7 @@
 	    af = af_prepend(s,s->first,resampler);
 	}		
 	else{
+#endif
 	  if(!strcmp(s->last->info->name,"format"))
 	    af = af_prepend(s,s->last,resampler);
 	  else


More information about the MPlayer-dev-eng mailing list