parse-tfdt.js 486 B

1234567891011121314151617181920
  1. var toUnsigned = require('../utils/bin').toUnsigned;
  2. var getUint64 = require('../utils/numbers.js').getUint64;
  3. var tfdt = function(data) {
  4. var result = {
  5. version: data[0],
  6. flags: new Uint8Array(data.subarray(1, 4)),
  7. };
  8. if (result.version === 1) {
  9. result.baseMediaDecodeTime = getUint64(data.subarray(4));
  10. } else {
  11. result.baseMediaDecodeTime = toUnsigned(data[4] << 24 | data[5] << 16 | data[6] << 8 | data[7])
  12. }
  13. return result;
  14. };
  15. module.exports = tfdt;