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.

121 lines
3.3 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. ** Copyright (c) 1996 Intel Corporation.
  11. ** All Rights Reserved.
  12. **
  13. ** *************************************************************************
  14. */
  15. // $Author: CZHU $
  16. // $Date: 16 Sep 1996 16:38:08 $
  17. // $Archive: S:\h26x\src\common\c3rtp.h_v $
  18. // $Header: S:\h26x\src\common\c3rtp.h_v 1.2 16 Sep 1996 16:38:08 CZHU $
  19. // $Log: S:\h26x\src\common\c3rtp.h_v $
  20. ;//
  21. ;// Rev 1.2 16 Sep 1996 16:38:08 CZHU
  22. ;// Extended the minimum packet size to 128 bytes. Fixed buffer overflow bug
  23. ;//
  24. ;// Rev 1.1 03 May 1996 13:09:58 CZHU
  25. ;//
  26. ;//
  27. ;// Rev 1.0 22 Apr 1996 16:38:30 BECHOLS
  28. ;// Initial revision.
  29. ;//
  30. ;// Rev 1.6 10 Apr 1996 13:32:50 CZHU
  31. ;//
  32. ;// Moved testing packet loss into this module for common use by encoder or dec
  33. ;//
  34. ;// Rev 1.5 29 Mar 1996 13:33:16 CZHU
  35. ;//
  36. ;// Moved bitstream verification from d3rtp.cpp to c3rtp.cpp
  37. ;//
  38. ;// Rev 1.4 23 Feb 1996 18:01:48 CZHU
  39. ;//
  40. ;// Rev 1.3 23 Feb 1996 17:23:58 CZHU
  41. ;//
  42. ;// Changed packet size adjustment
  43. ;//
  44. ;// Rev 1.2 15 Feb 1996 12:02:14 CZHU
  45. ;//
  46. ;// Rev 1.1 14 Feb 1996 15:01:34 CZHU
  47. ;// clean up
  48. ;//
  49. ;// Rev 1.0 12 Feb 1996 17:06:42 CZHU
  50. ;// Initial revision.
  51. ;//
  52. ;// Rev 1.0 29 Jan 1996 13:50:26 CZHU
  53. ;// Initial revision.
  54. ;//
  55. ;// Rev 1.2 04 Dec 1995 16:50:52 CZHU
  56. ;//
  57. ;// Rev 1.1 01 Dec 1995 15:54:12 CZHU
  58. ;// Included Init() and Term() functions.
  59. ;//
  60. ;// Rev 1.0 01 Dec 1995 15:31:10 CZHU
  61. ;// Initial revision.
  62. /*
  63. * This file is for RTP payload generation. See EPS for details
  64. *
  65. *
  66. */
  67. #ifndef _H263_RTP_C3RTP_
  68. #define _H263_RTP_C3RTP_
  69. const U32 DEFAULT_PACKET_SIZE = 512; //over IP
  70. const U32 DEFAULT_PACKET_SIZE_VARIANCE = 100;
  71. const U32 DEFAULT_FRAME_SIZE = 64 * 1024 / 5; //64KB at 5 fps
  72. const U32 H263_RTP_BS_START_CODE = FOURCC_H263;
  73. const U32 RTP_H26X_INTRA_CODED = 0x00000001;
  74. const U32 RTP_H263_PB = 0x00000002;
  75. const U32 RTP_H263_AP = 0x00000004;
  76. const U32 RTP_H263_SAC = 0x00000008;
  77. const U8 RTP_H263_MODE_A = 0;
  78. const U8 RTP_H263_MODE_B = 1;
  79. const U8 RTP_H263_MODE_C = 2;
  80. const U32 H263_RTP_PAYLOAD_VERSION=0;
  81. const U32 RTP_H26X_PACKET_LOST =0x00000001;
  82. typedef struct {
  83. U32 uVersion;
  84. U32 uFlags;
  85. U32 uUniqueCode;
  86. U32 uCompressedSize;
  87. U32 uNumOfPackets;
  88. U8 u8Src;
  89. U8 u8TR;
  90. U8 u8TRB;
  91. U8 u8DBQ;
  92. } T_H263_RTP_BSINFO_TRAILER;
  93. typedef struct {
  94. U32 uFlags;
  95. U32 uBitOffset;
  96. U8 u8Mode;
  97. U8 u8MBA;
  98. U8 u8Quant;
  99. U8 u8GOBN;
  100. I8 i8HMV1;
  101. I8 i8VMV1;
  102. I8 i8HMV2;
  103. I8 i8VMV2;
  104. } T_RTP_H263_BSINFO ;
  105. extern I32 H263RTP_VerifyBsInfoStream(T_H263DecoderCatalog *,U8 *, U32 );
  106. extern void RtpForcePacketLoss(U8 * pDst, U32 uCompSize,U32 PacketNumber);
  107. extern DWORD getRTPBsInfoSize(LPCODINST);
  108. #endif