util.h
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:2k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. /*
  2.  * FAAC - Freeware Advanced Audio Coder
  3.  * Copyright (C) 2001 Menno Bakker
  4.  *
  5.  * This library is free software; you can redistribute it and/or
  6.  * modify it under the terms of the GNU Lesser General Public
  7.  * License as published by the Free Software Foundation; either
  8.  * version 2.1 of the License, or (at your option) any later version.
  9.  *
  10.  * This library is distributed in the hope that it will be useful,
  11.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  13.  * Lesser General Public License for more details.
  14.  * You should have received a copy of the GNU Lesser General Public
  15.  * License along with this library; if not, write to the Free Software
  16.  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  17.  *
  18.  * $Id: util.h,v 1.4 2001/09/05 20:51:15 wmay Exp $
  19.  */
  20. #ifndef UTIL_H
  21. #define UTIL_H
  22. #ifdef __cplusplus
  23. extern "C" {
  24. #endif /* __cplusplus */
  25. #include <stdlib.h>
  26. #include <memory.h>
  27. #ifndef max
  28. #define max(a, b) (((a) > (b)) ? (a) : (b))
  29. #endif
  30. #ifndef min
  31. #define min(a, b) (((a) < (b)) ? (a) : (b))
  32. #endif
  33. #ifndef M_PI
  34. #define M_PI        3.14159265358979323846
  35. #endif
  36. /* Memory functions */
  37. #define AllocMemory(size) malloc(size)
  38. #define FreeMemory(block) free(block)
  39. #define SetMemory(block, value, size) memset(block, value, size)
  40. int GetSRIndex(unsigned int sampleRate);
  41. int GetMaxPredSfb(int samplingRateIdx);
  42. unsigned int MaxBitrate(unsigned long sampleRate);
  43. unsigned int MinBitrate();
  44. unsigned int MaxBitresSize(unsigned long bitRate, unsigned long sampleRate);
  45. unsigned int BitAllocation(double pe, int short_block);
  46. int IsBigEndian();
  47. #ifdef __cplusplus
  48. }
  49. #endif /* __cplusplus */
  50. #endif /* UTIL_H */