OSDN Git Service

Use defines instead of raw hex numbers to specify CRC polynomials
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sun, 19 Aug 2007 12:36:15 +0000 (12:36 +0000)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sun, 19 Aug 2007 12:36:15 +0000 (12:36 +0000)
Originally committed as revision 10143 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/utils.c
libavutil/crc.c
libavutil/crc.h

index e494baf..3b19489 100644 (file)
@@ -1235,9 +1235,9 @@ static void init_crcs(void){
     av_crc8005    = av_mallocz_static(sizeof(AVCRC) * 257);
     av_crc07      = av_mallocz_static(sizeof(AVCRC) * 257);
 #endif
-    av_crc_init(av_crc04C11DB7, 0, 32, 0x04c11db7, sizeof(AVCRC)*257);
-    av_crc_init(av_crc8005    , 0, 16, 0x8005    , sizeof(AVCRC)*257);
-    av_crc_init(av_crc07      , 0,  8, 0x07      , sizeof(AVCRC)*257);
+    av_crc_init(av_crc04C11DB7, 0, 32, AV_CRC_32_IEEE, sizeof(AVCRC)*257);
+    av_crc_init(av_crc8005    , 0, 16, AV_CRC_16     , sizeof(AVCRC)*257);
+    av_crc_init(av_crc07      , 0,  8, AV_CRC_8_ATM  , sizeof(AVCRC)*257);
 }
 
 void avcodec_init(void)
index 02fb860..b519ac4 100644 (file)
@@ -94,10 +94,10 @@ uint32_t av_crc(const AVCRC *ctx, uint32_t crc, const uint8_t *buffer, size_t le
 main(){
     uint8_t buf[1999];
     int i;
-    int p[4][4]={{1, 32, 0xedb88320L, 0x3D5CDD04},
-                 {0, 32, 0x04c11db7L, 0xC0F5BAE0},
-                 {0, 16, 0x8005     , 0x1FBB    },
-                 {0,  8, 0x07       , 0xE3      },};
+    int p[4][4]={{1, 32, AV_CRC_32_IEEE_LE, 0x3D5CDD04},
+                 {0, 32, AV_CRC_32_IEEE   , 0xC0F5BAE0},
+                 {0, 16, AV_CRC_16        , 0x1FBB    },
+                 {0,  8, AV_CRC_8_ATM     , 0xE3      },};
     AVCRC ctx[1 ? 1024:257];
 
     for(i=0; i<sizeof(buf); i++)
index 11c4fd0..4fdc4bb 100644 (file)
 
 typedef uint32_t AVCRC;
 
+#define AV_CRC_8_ATM      0x07
+#define AV_CRC_16         0x8005
+#define AV_CRC_16_CCITT   0x1021
+#define AV_CRC_32_IEEE    0x04C11DB7L
+//! reversed bitorder version of AV_CRC_32_IEEE
+#define AV_CRC_32_IEEE_LE 0xEDB88320L
+
 #if LIBAVUTIL_VERSION_INT  < (50<<16)
 extern AVCRC *av_crcEDB88320;
 extern AVCRC *av_crc04C11DB7;