Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

57 lines
1.8 KiB

  1. /* *************************************************************************
  2. ** INTEL Corporation Proprietary Information
  3. **
  4. ** This listing is supplied under the terms of a license
  5. ** agreement with INTEL Corporation and may not be copied
  6. ** nor disclosed except in accordance with the terms of
  7. ** that agreement.
  8. **
  9. ** Copyright (c) 1995 Intel Corporation.
  10. ** All Rights Reserved.
  11. **
  12. ** *************************************************************************
  13. */
  14. // $Header: S:\h26x\src\enc\exbrc.h_v 1.2 12 Mar 1996 13:26:58 KLILLEVO $
  15. // $Log: S:\h26x\src\enc\exbrc.h_v $
  16. ;//
  17. ;// Rev 1.2 12 Mar 1996 13:26:58 KLILLEVO
  18. ;// new rate control with adaptive bit usage profile
  19. ;//
  20. ;// Rev 1.1 05 Feb 1996 17:15:22 TRGARDOS
  21. ;// Converted an unused byte in the BRCState structure to
  22. ;// a variable to store the still quantizer number.
  23. ;//
  24. ;// Rev 1.0 27 Nov 1995 19:49:10 TRGARDOS
  25. ;// Initial revision.
  26. #ifndef _EXBRC_H_
  27. #define _EXBRC_H_
  28. /*
  29. * Structure for bit rate controller state variables.
  30. * Size of structure is 32 Bytes.
  31. */
  32. struct BRCStateStruct {
  33. U32 NumMBs;
  34. U32 uLastINTRAFrmSz;
  35. U32 uLastINTERFrmSz;
  36. int QP_mean;
  37. U32 uTargetFrmSize;
  38. float Global_Adj;
  39. U8 u8INTRA_QP;
  40. U8 u8INTER_QP;
  41. U8 u8StillQnt; // Keeps of tracker of Qnt used for still image compression.
  42. U8 Unassigned[1]; // pad to make a multiple of 16 bytes.
  43. float TargetFrameRate;
  44. };
  45. void InitBRC(BRCStateStruct *BRCState, U8 DefIntraQP, U8 DefInterQP, int NumMBs);
  46. U8 CalcPQUANT(BRCStateStruct *BRCState, EnumPicCodType PicCodType);
  47. U8 CalcMBQUANT(BRCStateStruct *BRCState, U32 uTargetPos, U32 uTargetSum, U32 uCumFrmSize, EnumPicCodType PicCodType);
  48. U8 clampQP(int iUnclampedQP);
  49. #endif // _EXBRC_H_