header.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /*
  2. * Copyright (c) 2010 The WebM project authors. All Rights Reserved.
  3. *
  4. * Use of this source code is governed by a BSD-style license
  5. * that can be found in the LICENSE file in the root of the source
  6. * tree. An additional intellectual property rights grant can be found
  7. * in the file PATENTS. All contributing project authors may
  8. * be found in the AUTHORS file in the root of the source tree.
  9. */
  10. #ifndef VPX_VP8_COMMON_HEADER_H_
  11. #define VPX_VP8_COMMON_HEADER_H_
  12. #ifdef __cplusplus
  13. extern "C" {
  14. #endif
  15. /* 24 bits total */
  16. typedef struct {
  17. unsigned int type : 1;
  18. unsigned int version : 3;
  19. unsigned int show_frame : 1;
  20. /* Allow 2^20 bytes = 8 megabits for first partition */
  21. unsigned int first_partition_length_in_bytes : 19;
  22. #ifdef PACKET_TESTING
  23. unsigned int frame_number;
  24. unsigned int update_gold : 1;
  25. unsigned int uses_gold : 1;
  26. unsigned int update_last : 1;
  27. unsigned int uses_last : 1;
  28. #endif
  29. } VP8_HEADER;
  30. #ifdef PACKET_TESTING
  31. #define VP8_HEADER_SIZE 8
  32. #else
  33. #define VP8_HEADER_SIZE 3
  34. #endif
  35. #ifdef __cplusplus
  36. } // extern "C"
  37. #endif
  38. #endif // VPX_VP8_COMMON_HEADER_H_