> hello, anybody tellme please why ocurr this error on ffserver
>
> # ffserver -f ffserver-mwm.conf
> FFserver version SVN-r25733, Copyright (c) 2000-2010 the FFmpeg developers
> built on Nov 12 2010 07:04:15 with gcc 4.3.2
> configuration: --enable-swscale --enable-gpl --enable-avfilter
> --enable-shared --enable-libx264 --enable-nonfree --enable-pthreads
> libavutil 50.33. 0 / 50.33. 0
> libavcore 0.12. 1 / 0.12. 1
> libavcodec 52.94. 4 / 52.94. 4
> libavformat 52.84. 0 / 52.84. 0
> libavdevice 52. 2. 2 / 52. 2. 2
> libavfilter 1.60. 0 / 1.60. 0
> libswscale 0.12. 0 / 0.12. 0
> Aspect ratio mismatch between encoder and muxer layer
Reverting/applying this patch makes it work again.
Index: libavutil/rational.h
===================================================================
--- libavutil/rational.h (revision 25549)
+++ libavutil/rational.h (working copy)
@@ -29,7 +29,6 @@
#define AVUTIL_RATIONAL_H
#include <stdint.h>
-#include <limits.h>
#include "attributes.h"
/**
@@ -44,16 +43,13 @@
* Compare two rationals.
* @param a first rational
* @param b second rational
- * @return 0 if a==b, 1 if a>b, -1 if a<b, and INT_MIN if one of the
- * values is of the form 0/0
+ * @return 0 if a==b, 1 if a>b and -1 if a<b
*/
static inline int av_cmp_q(AVRational a, AVRational b){
const int64_t tmp= a.num * (int64_t)b.den - b.num * (int64_t)a.den;
if(tmp) return ((tmp ^ a.den ^ b.den)>>63)|1;
- else if(b.den && a.den) return 0;
- else if(a.num && b.num) return (a.num>>31) - (b.num>>31);
- else return INT_MIN;
+ else return 0;
}