Source: externs/shaka/mp4_parser.js

  1. /**
  2. * @license
  3. * Copyright 2016 Google Inc.
  4. *
  5. * Licensed under the Apache License, Version 2.0 (the "License");
  6. * you may not use this file except in compliance with the License.
  7. * You may obtain a copy of the License at
  8. *
  9. * http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. /**
  18. * @externs
  19. */
  20. /**
  21. * @typedef {{
  22. * parser: !shaka.util.Mp4Parser,
  23. * partialOkay: boolean,
  24. * start: number,
  25. * size: number,
  26. * version: ?number,
  27. * flags: ?number,
  28. * reader: !shaka.util.DataViewReader
  29. * }}
  30. *
  31. * @property {!shaka.util.Mp4Parser} parser
  32. * The parser that parsed this box. The parser can be used to parse child
  33. * boxes where the configuration of the current parser is needed to parsed
  34. * other boxes.
  35. * @property {boolean} partialOkay
  36. * If true, allows reading partial payloads from some boxes. If the goal is a
  37. * child box, we can sometimes find it without enough data to find all child
  38. * boxes. This property allows the partialOkay flag from parse() to be
  39. * propagated through methods like children().
  40. * @property {number} start
  41. * The start of this box (before the header) in the original buffer. This
  42. * start position is the absolute position.
  43. * @property {number} size
  44. * The size of this box (including the header).
  45. * @property {?number} version
  46. * The version for a full box, null for basic boxes.
  47. * @property {?number} flags
  48. * The flags for a full box, null for basic boxes.
  49. * @property {!shaka.util.DataViewReader} reader
  50. * The reader for this box is only for this box. Reading or not reading to
  51. * the end will have no affect on the parser reading other sibling boxes.
  52. * @exportDoc
  53. */
  54. shakaExtern.ParsedBox;