skip.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. /* SPDX-License-Identifier: LGPL-2.1 OR BSD-3-Clause */
  2. //--=========================================================================--
  3. // This file is a part of VPU Reference API project
  4. //-----------------------------------------------------------------------------
  5. //
  6. // This confidential and proprietary software may be used only
  7. // as authorized by a licensing agreement from Chips&Media Inc.
  8. // In the event of publication, the following notice is applicable:
  9. //
  10. // (C) COPYRIGHT CHIPS&MEDIA INC.
  11. // ALL RIGHTS RESERVED
  12. //
  13. // The entire notice above must be reproduced on all authorized
  14. // copies.
  15. //
  16. //--=========================================================================--
  17. #ifndef _SKIP_H_
  18. #define _SKIP_H_
  19. typedef enum {
  20. NUT_TRAIL_N = 0,
  21. NUT_TRAIL_R = 1,
  22. NUT_TSA_N = 2,
  23. NUT_TSA_R = 3,
  24. NUT_STSA_N = 4,
  25. NUT_STSA_R = 5,
  26. NUT_RADL_N = 6,
  27. NUT_RADL_R = 7,
  28. NUT_RASL_N = 8,
  29. NUT_RASL_R = 9,
  30. NUT_RSV_N10 = 10,
  31. NUT_RSV_R11 = 11,
  32. NUT_RSV_N12 = 12,
  33. NUT_RSV_R13 = 13,
  34. NUT_RSV_N14 = 14,
  35. NUT_RSV_R15 = 15,
  36. NUT_BLA_W_LP = 16,
  37. NUT_BLA_W_RADL = 17,
  38. NUT_BLA_N_LP = 18,
  39. NUT_IDR_W_RADL = 19,
  40. NUT_IDR_N_LP = 20,
  41. NUT_CRA = 21,
  42. NUT_RSV_IRAP22 = 22,
  43. NUT_RSV_IRAP23 = 23,
  44. NUT_VPS = 32,
  45. NUT_SPS = 33,
  46. NUT_PPS = 34,
  47. NUT_AUD = 35,
  48. NUT_EOS = 36,
  49. NUT_EOB = 37,
  50. NUT_FD = 38,
  51. NUT_PREFIX_SEI = 39,
  52. NUT_SUFFIX_SEI = 40,
  53. NUT_MAX = 63
  54. } NalType;
  55. #define H265_MAX_TEMPORAL_ID 6
  56. enum {
  57. SKIP_CMD_DECODE,
  58. SKIP_CMD_NON_IRAP, //<<! Skip except IRAP pictures, H.265
  59. SKIP_CMD_NON_REF, //<<! Skip except non-reference pictures
  60. SKIP_CMD_TARGET_SUBLAYER, //<<! Temporal scalability
  61. SKIP_CMD_NONE
  62. };
  63. typedef struct _SkipCmd {
  64. Uint32 cmd;
  65. Uint32 tid; //<<! valid when cmd is SKIP_CMD_TARGET_SUBLAYER
  66. } SkipCmd;
  67. #ifdef __cplusplus
  68. extern "C" {
  69. #endif /* __cplusplus */
  70. #ifdef __cplusplus
  71. }
  72. #endif /* __cplusplus */
  73. #endif /* _SKIP_H_ */