Lacing.h 475 B

12345678910111213141516171819
  1. #pragma once
  2. #include <bfc/platform/types.h>
  3. namespace nsmkv
  4. {
  5. struct LacingState
  6. {
  7. uint16_t laces;
  8. int64_t sizes[256]; // max 256 laces (stored as 8bit number and 1 added)
  9. uint64_t positions[256];
  10. };
  11. namespace Lacing
  12. {
  13. bool GetState(uint8_t flags, const uint8_t *data, size_t data_len, LacingState *state);
  14. bool GetFrame(uint16_t frame_number, const uint8_t *data, size_t data_len, const uint8_t **frame, size_t *frame_len, const LacingState *state);
  15. }
  16. }