]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/common.h
better non conformant divx packed bitstream detection, so unpacked (no b frames)...
[ffmpeg] / libavcodec / common.h
index a1be71b759b775fda034f716623f25a3ce659643..1d0be032436f60129f7822706abeb3d5e2b80178 100644 (file)
@@ -46,6 +46,8 @@
 
 #define AVOPTION_CODEC_BOOL(name, help, field) \
     { name, help, offsetof(AVCodecContext, field), FF_OPT_TYPE_BOOL }
+#define AVOPTION_CODEC_DOUBLE(name, help, field, minv, maxv, defval) \
+    { name, help, offsetof(AVCodecContext, field), FF_OPT_TYPE_DOUBLE, minv, maxv, defval }
 #define AVOPTION_CODEC_FLAG(name, help, field, flag, defval) \
     { name, help, offsetof(AVCodecContext, field), FF_OPT_TYPE_FLAG, flag, 0, defval }
 #define AVOPTION_CODEC_INT(name, help, field, minv, maxv, defval) \
 #define AVOPTION_SUB(ptr) { .name = NULL, .help = (const char*)ptr }
 #define AVOPTION_END() AVOPTION_SUB(NULL)
 
+struct AVOption;
+#ifdef HAVE_MMX
+extern const struct AVOption avoptions_common[3 + 5];
+#else
+extern const struct AVOption avoptions_common[3];
+#endif
+extern const struct AVOption avoptions_workaround_bug[11];
+
 #endif /* HAVE_AV_CONFIG_H */
 
 /* Suppress restrict if it was not defined in config.h.  */
@@ -868,7 +878,7 @@ static inline int clip(int a, int amin, int amax)
 /* math */
 extern const uint8_t ff_sqrt_tab[128];
 
-int ff_gcd(int a, int b);
+int64_t ff_gcd(int64_t a, int64_t b);
 
 static inline int ff_sqrt(int a)
 {
@@ -897,6 +907,10 @@ static inline int ff_get_fourcc(const char *s){
     return (s[0]) + (s[1]<<8) + (s[2]<<16) + (s[3]<<24);
 }
 
+#define MKTAG(a,b,c,d) (a | (b << 8) | (c << 16) | (d << 24))
+#define MKBETAG(a,b,c,d) (d | (c << 8) | (b << 16) | (a << 24))
+
+
 void ff_float2fraction(int *nom_arg, int *denom_arg, double f, int max);