changeset 5864:0fc269ea2919 libavcodec

cleanup and simplify adx_decode_header()
author aurel
date Thu, 01 Nov 2007 17:58:03 +0000
parents ad587a64ef52
children 79a8fa9d763d
files adx.c
diffstat 1 files changed, 6 insertions(+), 23 deletions(-) [+]
line wrap: on
line diff
--- a/adx.c	Thu Nov 01 17:50:05 2007 +0000
+++ b/adx.c	Thu Nov 01 17:58:03 2007 +0000
@@ -249,35 +249,18 @@
 
 #endif //CONFIG_ENCODERS
 
-static int is_adx(const unsigned char *buf,size_t bufsize)
+/* return data offset or 0 */
+static int adx_decode_header(AVCodecContext *avctx,const unsigned char *buf,size_t bufsize)
 {
-    int    offset;
+    int offset;
 
     if (buf[0]!=0x80) return 0;
     offset = (AV_RB32(buf)^0x80000000)+4;
     if (bufsize<offset || memcmp(buf+offset-6,"(c)CRI",6)) return 0;
-    return offset;
-}
 
-/* return data offset or 6 */
-static int adx_decode_header(AVCodecContext *avctx,const unsigned char *buf,size_t bufsize)
-{
-    int offset;
-    int channels,freq,size;
-
-    offset = is_adx(buf,bufsize);
-    if (offset==0) return 0;
-
-    channels = buf[7];
-    freq = AV_RB32(buf+8);
-    size = AV_RB32(buf+12);
-
-//    printf("freq=%d ch=%d\n",freq,channels);
-
-    avctx->sample_rate = freq;
-    avctx->channels = channels;
-    avctx->bit_rate = freq*channels*18*8/32;
-//    avctx->frame_size = 18*channels;
+    avctx->channels    = buf[7];
+    avctx->sample_rate = AV_RB32(buf+8);
+    avctx->bit_rate    = avctx->sample_rate*avctx->channels*18*8/32;
 
     return offset;
 }