common.c
上传用户:bjsgzm
上传日期:2007-01-08
资源大小:256k
文件大小:2k
源码类别:

mpeg/mp3

开发平台:

Visual C++

  1. /*
  2. (c) Copyright 1998, 1999 - Tord Jansson
  3. =======================================
  4. This file is part of the BladeEnc MP3 Encoder, based on
  5. ISO's reference code for MPEG Layer 3 compression, and might
  6. contain smaller or larger sections that are directly taken
  7. from ISO's reference code.
  8. All changes to the ISO reference code herein are either
  9. copyrighted by Tord Jansson (tord.jansson@swipnet.se)
  10. or sublicensed to Tord Jansson by a third party.
  11. BladeEnc is free software; you can redistribute this file
  12. and/or modify it under the terms of the GNU Lesser General Public
  13. License as published by the Free Software Foundation; either
  14. version 2.1 of the License, or (at your option) any later version.
  15. */
  16. /***********************************************************************
  17. *
  18. *  Global Include Files
  19. *
  20. ***********************************************************************/
  21. #include    "common.h"
  22. #include <string.h> /* 1995-07-11 shn */
  23. #include <ctype.h>
  24. #include <stdlib.h>
  25. /***********************************************************************
  26. *
  27. *  Global Variable Definitions
  28. *
  29. ***********************************************************************/
  30. /* 1: MPEG-1, 0: MPEG-2 LSF, 1995-07-11 shn */
  31. double  s_freq[2][4] = {{22.05, 24, 16, 0}, {44.1, 48, 32, 0}};
  32. /* 1: MPEG-1, 0: MPEG-2 LSF, 1995-07-11 shn */
  33. int     bitratex[2][15] = {
  34.           {0,8,16,24,32,40,48,56,64,80,96,112,128,144,160},
  35. {0,32,40,48,56,64,80,96,112,128,160,192,224,256,320}
  36.         };
  37. /*******************************************************************************
  38. *
  39. *  Allocate number of bytes of memory equal to "block".
  40. *
  41. *******************************************************************************/
  42. void  *mem_alloc(unsigned int block, char *item)
  43. {
  44.     void    *ptr;
  45.     ptr = (void *) malloc(block*2);
  46.     memset(ptr, 0, block*2);
  47.     return(ptr);
  48. }
  49. /****************************************************************************
  50. *
  51. *  Free memory pointed to by "*ptr_addr".
  52. *
  53. *****************************************************************************/
  54. void    mem_free( void **ptr_addr)
  55. {
  56.   if (*ptr_addr != NULL)
  57. {
  58.     free(*ptr_addr);
  59.     *ptr_addr = NULL;
  60.   }
  61. }