@libmedia/avutil 0.4.2 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/dist/cjs/AVStream.d.ts +8 -1
  2. package/dist/cjs/AVStream.js +1 -0
  3. package/dist/cjs/AVStream.js.map +1 -1
  4. package/dist/cjs/codecs/aac.d.ts +1 -1
  5. package/dist/cjs/codecs/aac.js +2 -1
  6. package/dist/cjs/codecs/aac.js.map +1 -1
  7. package/dist/cjs/codecs/av1.d.ts +1 -1
  8. package/dist/cjs/codecs/av1.js +10 -4
  9. package/dist/cjs/codecs/av1.js.map +1 -1
  10. package/dist/cjs/codecs/flac.d.ts +26 -0
  11. package/dist/cjs/codecs/flac.js +31 -1
  12. package/dist/cjs/codecs/flac.js.map +1 -1
  13. package/dist/cjs/codecs/h264.d.ts +59 -10
  14. package/dist/cjs/codecs/h264.js +118 -101
  15. package/dist/cjs/codecs/h264.js.map +1 -1
  16. package/dist/cjs/codecs/hevc.d.ts +61 -10
  17. package/dist/cjs/codecs/hevc.js +89 -98
  18. package/dist/cjs/codecs/hevc.js.map +1 -1
  19. package/dist/cjs/codecs/opus.d.ts +1 -1
  20. package/dist/cjs/codecs/vp9.d.ts +1 -1
  21. package/dist/cjs/codecs/vvc.d.ts +61 -11
  22. package/dist/cjs/codecs/vvc.js +82 -95
  23. package/dist/cjs/codecs/vvc.js.map +1 -1
  24. package/dist/cjs/function/analyzeUrlIOLoader.js +51 -39
  25. package/dist/cjs/function/analyzeUrlIOLoader.js.map +1 -1
  26. package/dist/cjs/function/audioData2AVFrame.js +4 -2
  27. package/dist/cjs/function/audioData2AVFrame.js.map +1 -1
  28. package/dist/cjs/function/avPCMBuffer2AVFrame.d.ts +3 -0
  29. package/dist/cjs/function/avPCMBuffer2AVFrame.js +73 -0
  30. package/dist/cjs/function/avPCMBuffer2AVFrame.js.map +1 -0
  31. package/dist/cjs/function/avframe2AudioData.d.ts +1 -2
  32. package/dist/cjs/function/avframe2AudioData.js +4 -3
  33. package/dist/cjs/function/avframe2AudioData.js.map +1 -1
  34. package/dist/cjs/function/avframe2VideoFrame.d.ts +1 -2
  35. package/dist/cjs/function/avframe2VideoFrame.js +10 -9
  36. package/dist/cjs/function/avframe2VideoFrame.js.map +1 -1
  37. package/dist/cjs/function/avpacket2EncodedAudioChunk.d.ts +1 -1
  38. package/dist/cjs/function/avpacket2EncodedAudioChunk.js +5 -4
  39. package/dist/cjs/function/avpacket2EncodedAudioChunk.js.map +1 -1
  40. package/dist/cjs/function/avpacket2EncodedVideoChunk.d.ts +1 -1
  41. package/dist/cjs/function/avpacket2EncodedVideoChunk.js +5 -4
  42. package/dist/cjs/function/avpacket2EncodedVideoChunk.js.map +1 -1
  43. package/dist/cjs/function/compileResource.js +10 -4
  44. package/dist/cjs/function/compileResource.js.map +1 -1
  45. package/dist/cjs/function/encodedAudioChunk2AVPacket.js.map +1 -1
  46. package/dist/cjs/function/encodedVideoChunk2AVPacket.js.map +1 -1
  47. package/dist/cjs/function/getVideoCodec.js +15 -7
  48. package/dist/cjs/function/getVideoCodec.js.map +1 -1
  49. package/dist/cjs/function/getWasmUrl.d.ts +2 -0
  50. package/dist/cjs/function/getWasmUrl.js +138 -0
  51. package/dist/cjs/function/getWasmUrl.js.map +1 -0
  52. package/dist/cjs/function/videoFrame2AVFrame.js +10 -8
  53. package/dist/cjs/function/videoFrame2AVFrame.js.map +1 -1
  54. package/dist/cjs/implement/AVFramePoolImpl.js +10 -4
  55. package/dist/cjs/implement/AVFramePoolImpl.js.map +1 -1
  56. package/dist/cjs/implement/AVPCMBufferPoolImpl.js +13 -7
  57. package/dist/cjs/implement/AVPCMBufferPoolImpl.js.map +1 -1
  58. package/dist/cjs/implement/AVPacketPoolImpl.js +10 -4
  59. package/dist/cjs/implement/AVPacketPoolImpl.js.map +1 -1
  60. package/dist/cjs/stringEnum.js +2 -0
  61. package/dist/cjs/stringEnum.js.map +1 -1
  62. package/dist/cjs/struct/avbuffer.js +3 -3
  63. package/dist/cjs/struct/avframe.js +5 -5
  64. package/dist/cjs/struct/avpacket.js +2 -2
  65. package/dist/cjs/struct/avpacket.js.map +1 -1
  66. package/dist/cjs/struct/avpcmbuffer.d.ts +5 -0
  67. package/dist/cjs/struct/avpcmbuffer.js +16 -5
  68. package/dist/cjs/struct/avpcmbuffer.js.map +1 -1
  69. package/dist/cjs/util/amf.js +10 -4
  70. package/dist/cjs/util/amf.js.map +1 -1
  71. package/dist/cjs/util/avbuffer.js +18 -12
  72. package/dist/cjs/util/avbuffer.js.map +1 -1
  73. package/dist/cjs/util/avdict.js +38 -2
  74. package/dist/cjs/util/avdict.js.map +1 -1
  75. package/dist/cjs/util/avframe.js +21 -13
  76. package/dist/cjs/util/avframe.js.map +1 -1
  77. package/dist/cjs/util/avpacket.d.ts +2 -2
  78. package/dist/cjs/util/avpacket.js +16 -10
  79. package/dist/cjs/util/avpacket.js.map +1 -1
  80. package/dist/cjs/util/channel.js +10 -4
  81. package/dist/cjs/util/channel.js.map +1 -1
  82. package/dist/cjs/util/codecparameters.js +3 -3
  83. package/dist/cjs/util/codecparameters.js.map +1 -1
  84. package/dist/cjs/util/mem.js +10 -4
  85. package/dist/cjs/util/mem.js.map +1 -1
  86. package/dist/cjs/util/nalu.d.ts +24 -4
  87. package/dist/cjs/util/nalu.js +15 -7
  88. package/dist/cjs/util/nalu.js.map +1 -1
  89. package/dist/cjs/util/pixel.d.ts +1 -1
  90. package/dist/cjs/util/pixel.js +21 -15
  91. package/dist/cjs/util/pixel.js.map +1 -1
  92. package/dist/cjs/util/rational.d.ts +1 -1
  93. package/dist/cjs/util/rational.js +5 -5
  94. package/dist/cjs/util/rational.js.map +1 -1
  95. package/dist/cjs/util/sample.js +1 -1
  96. package/dist/cjs/util/sample.js.map +1 -1
  97. package/dist/cjs/util/serialize.js +2 -2
  98. package/dist/cjs/util/serialize.js.map +1 -1
  99. package/dist/esm/AVStream.d.ts +8 -1
  100. package/dist/esm/AVStream.js +1 -0
  101. package/dist/esm/AVStream.js.map +1 -1
  102. package/dist/esm/codecs/aac.d.ts +1 -1
  103. package/dist/esm/codecs/aac.js +2 -1
  104. package/dist/esm/codecs/aac.js.map +1 -1
  105. package/dist/esm/codecs/av1.d.ts +1 -1
  106. package/dist/esm/codecs/flac.d.ts +26 -0
  107. package/dist/esm/codecs/flac.js +34 -1
  108. package/dist/esm/codecs/flac.js.map +1 -1
  109. package/dist/esm/codecs/h264.d.ts +59 -10
  110. package/dist/esm/codecs/h264.js +114 -98
  111. package/dist/esm/codecs/h264.js.map +1 -1
  112. package/dist/esm/codecs/hevc.d.ts +61 -10
  113. package/dist/esm/codecs/hevc.js +84 -96
  114. package/dist/esm/codecs/hevc.js.map +1 -1
  115. package/dist/esm/codecs/opus.d.ts +1 -1
  116. package/dist/esm/codecs/vp9.d.ts +1 -1
  117. package/dist/esm/codecs/vvc.d.ts +61 -11
  118. package/dist/esm/codecs/vvc.js +77 -93
  119. package/dist/esm/codecs/vvc.js.map +1 -1
  120. package/dist/esm/function/analyzeUrlIOLoader.js +40 -34
  121. package/dist/esm/function/analyzeUrlIOLoader.js.map +1 -1
  122. package/dist/esm/function/audioData2AVFrame.js +4 -0
  123. package/dist/esm/function/audioData2AVFrame.js.map +1 -1
  124. package/dist/esm/function/avPCMBuffer2AVFrame.d.ts +3 -0
  125. package/dist/esm/function/avPCMBuffer2AVFrame.js +48 -0
  126. package/dist/esm/function/avPCMBuffer2AVFrame.js.map +1 -0
  127. package/dist/esm/function/avframe2AudioData.d.ts +1 -2
  128. package/dist/esm/function/avframe2AudioData.js +7 -3
  129. package/dist/esm/function/avframe2AudioData.js.map +1 -1
  130. package/dist/esm/function/avframe2VideoFrame.d.ts +1 -2
  131. package/dist/esm/function/avframe2VideoFrame.js +14 -10
  132. package/dist/esm/function/avframe2VideoFrame.js.map +1 -1
  133. package/dist/esm/function/avpacket2EncodedAudioChunk.d.ts +1 -1
  134. package/dist/esm/function/avpacket2EncodedAudioChunk.js +11 -3
  135. package/dist/esm/function/avpacket2EncodedAudioChunk.js.map +1 -1
  136. package/dist/esm/function/avpacket2EncodedVideoChunk.d.ts +1 -1
  137. package/dist/esm/function/avpacket2EncodedVideoChunk.js +11 -3
  138. package/dist/esm/function/avpacket2EncodedVideoChunk.js.map +1 -1
  139. package/dist/esm/function/getVideoCodec.js +8 -2
  140. package/dist/esm/function/getVideoCodec.js.map +1 -1
  141. package/dist/esm/function/getWasmUrl.d.ts +2 -0
  142. package/dist/esm/function/getWasmUrl.js +133 -0
  143. package/dist/esm/function/getWasmUrl.js.map +1 -0
  144. package/dist/esm/function/videoFrame2AVFrame.js +12 -7
  145. package/dist/esm/function/videoFrame2AVFrame.js.map +1 -1
  146. package/dist/esm/implement/AVPCMBufferPoolImpl.js +3 -3
  147. package/dist/esm/stringEnum.js +2 -0
  148. package/dist/esm/stringEnum.js.map +1 -1
  149. package/dist/esm/struct/avbuffer.js +3 -3
  150. package/dist/esm/struct/avframe.js +5 -5
  151. package/dist/esm/struct/avpacket.js +2 -2
  152. package/dist/esm/struct/avpacket.js.map +1 -1
  153. package/dist/esm/struct/avpcmbuffer.d.ts +5 -0
  154. package/dist/esm/struct/avpcmbuffer.js +16 -5
  155. package/dist/esm/struct/avpcmbuffer.js.map +1 -1
  156. package/dist/esm/util/amf.js.map +1 -1
  157. package/dist/esm/util/avbuffer.js +8 -8
  158. package/dist/esm/util/avdict.js +6 -1
  159. package/dist/esm/util/avdict.js.map +1 -1
  160. package/dist/esm/util/avframe.js +12 -10
  161. package/dist/esm/util/avframe.js.map +1 -1
  162. package/dist/esm/util/avpacket.d.ts +2 -2
  163. package/dist/esm/util/avpacket.js +6 -6
  164. package/dist/esm/util/avpacket.js.map +1 -1
  165. package/dist/esm/util/codecparameters.js +3 -3
  166. package/dist/esm/util/codecparameters.js.map +1 -1
  167. package/dist/esm/util/nalu.d.ts +24 -4
  168. package/dist/esm/util/nalu.js +7 -3
  169. package/dist/esm/util/nalu.js.map +1 -1
  170. package/dist/esm/util/pixel.d.ts +1 -1
  171. package/dist/esm/util/pixel.js +11 -11
  172. package/dist/esm/util/pixel.js.map +1 -1
  173. package/dist/esm/util/rational.d.ts +1 -1
  174. package/dist/esm/util/rational.js +5 -5
  175. package/dist/esm/util/rational.js.map +1 -1
  176. package/dist/esm/util/sample.js +1 -1
  177. package/dist/esm/util/sample.js.map +1 -1
  178. package/dist/esm/util/serialize.js +2 -2
  179. package/dist/esm/util/serialize.js.map +1 -1
  180. package/include/rational.h +1 -1
  181. package/package.json +7 -2
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var __createBinding = this && this.__createBinding || (Object.create ? function(o, m, k, k2) {
3
+ var ownKeys, __createBinding = this && this.__createBinding || (Object.create ? function(o, m, k, k2) {
4
4
  void 0 === k2 && (k2 = k);
5
5
  var desc = Object.getOwnPropertyDescriptor(m, k);
6
6
  desc && !("get" in desc ? !m.__esModule : desc.writable || desc.configurable) || (desc = {
@@ -18,12 +18,18 @@ var __createBinding = this && this.__createBinding || (Object.create ? function(
18
18
  });
19
19
  } : function(o, v) {
20
20
  o.default = v;
21
- }), __importStar = this && this.__importStar || function(mod) {
21
+ }), __importStar = this && this.__importStar || (ownKeys = function(o) {
22
+ return ownKeys = Object.getOwnPropertyNames || function(o) {
23
+ var ar = [];
24
+ for (var k in o) Object.prototype.hasOwnProperty.call(o, k) && (ar[ar.length] = k);
25
+ return ar;
26
+ }, ownKeys(o);
27
+ }, function(mod) {
22
28
  if (mod && mod.__esModule) return mod;
23
29
  var result = {};
24
- if (null != mod) for (var k in mod) "default" !== k && Object.prototype.hasOwnProperty.call(mod, k) && __createBinding(result, mod, k);
30
+ if (null != mod) for (var k = ownKeys(mod), i = 0; i < k.length; i++) "default" !== k[i] && __createBinding(result, mod, k[i]);
25
31
  return __setModuleDefault(result, mod), result;
26
- }, __importDefault = this && this.__importDefault || function(mod) {
32
+ }), __importDefault = this && this.__importDefault || function(mod) {
27
33
  return mod && mod.__esModule ? mod : {
28
34
  default: mod
29
35
  };
@@ -31,13 +37,13 @@ var __createBinding = this && this.__createBinding || (Object.create ? function(
31
37
 
32
38
  Object.defineProperty(exports, "__esModule", {
33
39
  value: !0
34
- }), exports.LevelCapabilities = exports.H264Profile2Name = exports.NALULengthSizeMinusOne = void 0,
40
+ }), exports.LevelCapabilities = exports.H264Profile2Name = exports.NALULengthSizeMinusOne = exports.H264_MAX_DPB_FRAMES = void 0,
35
41
  exports.getLevelByResolution = function(width, height, fps) {
36
42
  const resolution = width * height;
37
43
  for (const level of exports.LevelCapabilities) if (resolution <= level.maxResolution && fps <= level.maxFrameRate) return level.level;
38
44
  }, exports.extradata2SpsPps = extradata2SpsPps, exports.spsPps2Extradata = spsPps2Extradata,
39
45
  exports.annexbExtradata2AvccExtradata = function(data) {
40
- let nalus = (0, nalu_1.splitNaluByStartCode)(data);
46
+ let nalus = naluUtil.splitNaluByStartCode(data);
41
47
  if (nalus.length > 1) {
42
48
  const spss = [], ppss = [], spsExts = [];
43
49
  if (nalus.forEach((nalu => {
@@ -45,31 +51,49 @@ exports.annexbExtradata2AvccExtradata = function(data) {
45
51
  7 === type ? spss.push(nalu) : 8 === type ? ppss.push(nalu) : 13 === type && spsExts.push(nalu);
46
52
  })), spss.length && ppss.length) return spsPps2Extradata(spss, ppss, spsExts);
47
53
  }
48
- }, exports.annexb2Avcc = function(data) {
49
- let extradata, nalus = (0, nalu_1.splitNaluByStartCode)(data), key = !1;
54
+ }, exports.generateAnnexbExtradata = function(data) {
55
+ let nalus = naluUtil.splitNaluByStartCode(data);
50
56
  if (nalus.length > 1) {
51
57
  const spss = [], ppss = [], spsExts = [];
52
- nalus.forEach((nalu => {
58
+ if (nalus.forEach((nalu => {
53
59
  const type = 31 & nalu[0];
54
60
  7 === type ? spss.push(nalu) : 8 === type ? ppss.push(nalu) : 13 === type && spsExts.push(nalu);
55
- })), spss.length && ppss.length && (extradata = spsPps2Extradata(spss, ppss, spsExts)),
61
+ })), spss.length && ppss.length) {
62
+ const nalus = [ spss[0], ppss[0] ];
63
+ return spsExts.length && nalus.push(spsExts[0]), naluUtil.joinNaluByStartCode(nalus, 0);
64
+ }
65
+ }
66
+ }, exports.annexb2Avcc = function(data) {
67
+ let extradata, nalus = naluUtil.splitNaluByStartCode(data), key = !1;
68
+ if (nalus.length) {
69
+ const spss = [], ppss = [], spsExts = [];
70
+ nalus.forEach((nalu => {
71
+ const type = 31 & nalu[0];
72
+ 7 === type ? spss.push(nalu) : 8 === type ? ppss.push(nalu) : 13 === type ? spsExts.push(nalu) : 5 === type && (key = !0);
73
+ })), spss.length && ppss.length ? (extradata = spsPps2Extradata(spss, ppss, spsExts),
56
74
  nalus = nalus.filter((nalu => {
57
75
  const type = 31 & nalu[0];
58
76
  return 9 !== type && 8 !== type && 7 !== type && 13 !== type;
59
- }));
77
+ }))) : nalus = nalus.filter((nalu => 9 !== (31 & nalu[0])));
60
78
  }
61
79
  const length = nalus.reduce(((prev, nalu) => prev + exports.NALULengthSizeMinusOne + 1 + nalu.length), 0), bufferPointer = (0,
62
- mem_1.avMalloc)(length), buffer = (0, memory_1.mapUint8Array)(bufferPointer, length), bufferWriter = new BufferWriter_1.default(buffer);
63
- return array.each(nalus, (nalu => {
64
- 3 === exports.NALULengthSizeMinusOne ? bufferWriter.writeUint32(nalu.length) : 2 === exports.NALULengthSizeMinusOne ? bufferWriter.writeUint24(nalu.length) : 1 === exports.NALULengthSizeMinusOne ? bufferWriter.writeUint16(nalu.length) : bufferWriter.writeUint8(nalu.length),
65
- bufferWriter.writeBuffer(nalu.subarray(0));
66
- 5 === (31 & nalu[0]) && (key = !0);
67
- })), {
80
+ mem_1.avMalloc)(length), buffer = (0, memory_1.mapUint8Array)(bufferPointer, length);
81
+ return naluUtil.joinNaluByLength(nalus, exports.NALULengthSizeMinusOne, buffer),
82
+ {
68
83
  bufferPointer: bufferPointer,
69
84
  length: length,
70
85
  key: key,
71
86
  extradata: extradata
72
87
  };
88
+ }, exports.nalus2Annexb = nalus2Annexb, exports.annexbAddExtradata = function(data, extradata) {
89
+ let nalus = naluUtil.splitNaluByStartCode(data).concat(naluUtil.splitNaluByStartCode(extradata));
90
+ if (nalus.length) {
91
+ const spss = [], ppss = [], spsExts = [], seis = [], others = [];
92
+ return nalus.forEach((nalu => {
93
+ const type = 31 & nalu[0];
94
+ 7 === type ? spss.push(nalu) : 8 === type ? ppss.push(nalu) : 13 === type ? spsExts.push(nalu) : 6 === type ? seis.push(nalu) : 9 !== type && others.push(nalu);
95
+ })), nalus2Annexb(spss, ppss, spsExts, seis, others);
96
+ }
73
97
  }, exports.avcc2Annexb = function(data, extradata) {
74
98
  const naluLengthSizeMinusOne = extradata ? 3 & extradata[4] : exports.NALULengthSizeMinusOne;
75
99
  let spss = [], ppss = [], spsExts = [], key = !1;
@@ -77,96 +101,43 @@ exports.annexbExtradata2AvccExtradata = function(data) {
77
101
  const result = extradata2SpsPps(extradata);
78
102
  spss = result.spss, ppss = result.ppss, spsExts = result.spsExts, key = !0;
79
103
  }
80
- const nalus = [], seis = [], bufferReader = new BufferReader_1.default(data);
81
- for (;bufferReader.remainingSize() > 0; ) {
82
- let length = 0;
83
- length = 3 === naluLengthSizeMinusOne ? bufferReader.readUint32() : 2 === naluLengthSizeMinusOne ? bufferReader.readUint24() : 1 === naluLengthSizeMinusOne ? bufferReader.readUint16() : bufferReader.readUint8();
84
- const nalu = data.subarray(Number(BigInt.asIntN(32, bufferReader.getPos())), Number(BigInt.asIntN(32, bufferReader.getPos())) + length);
85
- bufferReader.skip(length);
104
+ const others = [], seis = [];
105
+ return naluUtil.splitNaluByLength(data, naluLengthSizeMinusOne).forEach((nalu => {
86
106
  const naluType = 31 & nalu[0];
87
- 6 === naluType ? seis.push(nalu) : 9 !== naluType && nalus.push(nalu);
88
- }
89
- let length = spss.reduce(((prev, sps) => prev + 4 + sps.length), 0);
90
- length = ppss.reduce(((prev, pps) => prev + 4 + pps.length), length), length = spsExts.reduce(((prev, ext) => prev + 4 + ext.length), length),
91
- length = seis.reduce(((prev, sei) => prev + 4 + sei.length), length), length = nalus.reduce(((prev, nalu, index) => prev + (index ? 3 : 4) + nalu.length), length);
92
- const bufferPointer = (0, mem_1.avMalloc)(length + 6), bufferWriter = new BufferWriter_1.default((0,
93
- memory_1.mapUint8Array)(bufferPointer, length + 6));
94
- return bufferWriter.writeUint8(0), bufferWriter.writeUint8(0), bufferWriter.writeUint8(0),
95
- bufferWriter.writeUint8(1), bufferWriter.writeUint8(9), bufferWriter.writeUint8(240),
96
- array.each(seis, (sei => {
97
- bufferWriter.writeUint8(0), bufferWriter.writeUint8(0), bufferWriter.writeUint8(0),
98
- bufferWriter.writeUint8(1), bufferWriter.writeBuffer(sei);
99
- })), array.each(spss, (sps => {
100
- bufferWriter.writeUint8(0), bufferWriter.writeUint8(0), bufferWriter.writeUint8(0),
101
- bufferWriter.writeUint8(1), bufferWriter.writeBuffer(sps);
102
- })), array.each(ppss, (pps => {
103
- bufferWriter.writeUint8(0), bufferWriter.writeUint8(0), bufferWriter.writeUint8(0),
104
- bufferWriter.writeUint8(1), bufferWriter.writeBuffer(pps);
105
- })), array.each(spsExts, (ext => {
106
- bufferWriter.writeUint8(0), bufferWriter.writeUint8(0), bufferWriter.writeUint8(0),
107
- bufferWriter.writeUint8(1), bufferWriter.writeBuffer(ext);
108
- })), array.each(nalus, ((nalu, index) => {
109
- bufferWriter.writeUint8(0), bufferWriter.writeUint8(0), index || bufferWriter.writeUint8(0),
110
- bufferWriter.writeUint8(1), bufferWriter.writeBuffer(nalu);
111
- 5 === (31 & nalu[0]) && (key = !0);
107
+ 6 === naluType ? seis.push(nalu) : 9 !== naluType && others.push(nalu), 5 === naluType && (key = !0);
112
108
  })), {
113
- bufferPointer: bufferPointer,
114
- length: length + 6,
109
+ ...nalus2Annexb(spss, ppss, spsExts, seis, others),
115
110
  key: key
116
111
  };
117
- }, exports.parseAvccExtraData = function(avpacket, stream) {
118
- if (!(1 & cheap__identifier__1.CTypeEnumRead[15](avpacket + 36))) return;
119
- const data = (0, avpacket_1.getAVPacketData)(avpacket);
120
- if ((0, nalu_1.isAnnexb)(data)) return;
121
- const naluLengthSizeMinusOne = stream.metadata.naluLengthSizeMinusOne ?? exports.NALULengthSizeMinusOne;
122
- let spss = [], ppss = [], spsExts = [], others = [];
123
- const bufferReader = new BufferReader_1.default(data);
124
- for (;bufferReader.remainingSize() > 0; ) {
125
- let length = 0;
126
- length = 3 === naluLengthSizeMinusOne ? bufferReader.readUint32() : 2 === naluLengthSizeMinusOne ? bufferReader.readUint24() : 1 === naluLengthSizeMinusOne ? bufferReader.readUint16() : bufferReader.readUint8();
127
- const nalu = data.subarray(Number(BigInt.asIntN(32, bufferReader.getPos())), Number(BigInt.asIntN(32, bufferReader.getPos())) + length);
128
- bufferReader.skip(length);
129
- const naluType = 31 & nalu[0];
130
- 7 === naluType ? spss.push(nalu) : 8 === naluType ? ppss.push(nalu) : 13 === naluType ? spsExts.push(nalu) : others.push(nalu);
131
- }
132
- if (spss.length || ppss.length) {
133
- const extradata = spsPps2Extradata(spss, ppss, spsExts), extradataPointer = (0,
134
- mem_1.avMalloc)(extradata.length);
135
- (0, memory_1.memcpyFromUint8Array)(extradataPointer, extradata.length, extradata),
136
- (0, avpacket_1.addAVPacketSideData)(avpacket, 1, extradataPointer, extradata.length);
137
- }
138
- }, exports.parseAnnexbExtraData = function(avpacket, force = !1) {
139
- if (!(1 & cheap__identifier__1.CTypeEnumRead[15](avpacket + 36) || force)) return;
140
- const data = (0, avpacket_1.getAVPacketData)(avpacket);
141
- if (!(0, nalu_1.isAnnexb)(data)) return;
142
- let nalus = (0, nalu_1.splitNaluByStartCode)(data);
143
- if (nalus.length > 1) {
144
- const spss = [], ppss = [], spsExts = [];
145
- if (nalus.forEach((nalu => {
146
- const type = 31 & nalu[0];
147
- 7 === type ? spss.push(nalu) : 8 === type ? ppss.push(nalu) : 13 === type && spsExts.push(nalu);
148
- })), spss.length && ppss.length) {
149
- const extradata = spsPps2Extradata(spss, ppss, spsExts), extradataPointer = (0,
150
- mem_1.avMalloc)(extradata.length);
151
- (0, memory_1.memcpyFromUint8Array)(extradataPointer, extradata.length, extradata),
152
- (0, avpacket_1.addAVPacketSideData)(avpacket, 1, extradataPointer, extradata.length),
153
- cheap__identifier__5.CTypeEnumWrite[15](avpacket + 36, 1 | cheap__identifier__1.CTypeEnumRead[15](avpacket + 36));
154
- }
155
- }
156
112
  }, exports.parseAVCodecParameters = function(stream, extradata) {
157
113
  !extradata && stream.sideData[1] && (extradata = stream.sideData[1]);
158
- if (extradata && extradata.length >= 6) {
114
+ let sps;
115
+ if (extradata && naluUtil.isAnnexb(extradata)) array.each(naluUtil.splitNaluByStartCode(extradata), (nalu => {
116
+ if (7 === (31 & nalu[0])) return sps = nalu, !1;
117
+ })); else if (extradata && extradata.length >= 6) {
159
118
  stream.metadata.naluLengthSizeMinusOne = 3 & extradata[4];
160
119
  const {spss: spss} = extradata2SpsPps(extradata);
161
- if (spss.length) {
162
- const {profile: profile, level: level, width: width, height: height} = parseSPS(spss[0]);
163
- stream.codecpar.profile = profile, stream.codecpar.level = level, stream.codecpar.width = width,
164
- stream.codecpar.height = height;
120
+ spss.length && (sps = spss[0]);
121
+ }
122
+ if (sps) {
123
+ const {profile: profile, level: level, width: width, height: height, videoDelay: videoDelay, chromaFormatIdc: chromaFormatIdc, bitDepthLumaMinus8: bitDepthLumaMinus8} = parseSPS(sps);
124
+ switch (stream.codecpar.profile = profile, stream.codecpar.level = level, stream.codecpar.width = width,
125
+ stream.codecpar.height = height, stream.codecpar.videoDelay = videoDelay, bitDepthLumaMinus8) {
126
+ case 0:
127
+ stream.codecpar.format = 3 === chromaFormatIdc ? 5 : 2 === chromaFormatIdc ? 4 : 0;
128
+ break;
129
+
130
+ case 1:
131
+ stream.codecpar.format = 3 === chromaFormatIdc ? 66 : 2 === chromaFormatIdc ? 70 : 60;
132
+ break;
133
+
134
+ case 2:
135
+ stream.codecpar.format = 3 === chromaFormatIdc ? 68 : 2 === chromaFormatIdc ? 64 : 62;
165
136
  }
166
137
  }
167
138
  }, exports.isIDR = function(avpacket, naluLengthSize = 4) {
168
139
  if (2 === cheap__identifier__1.CTypeEnumRead[15](avpacket + 80)) {
169
- return (0, nalu_1.splitNaluByStartCode)((0, memory_1.mapUint8Array)(cheap__identifier__1.CTypeEnumRead[20](avpacket + 24), cheap__identifier__1.CTypeEnumRead[15](avpacket + 28))).some((nalu => 5 === (31 & nalu[0])));
140
+ return naluUtil.splitNaluByStartCode((0, memory_1.mapUint8Array)(cheap__identifier__1.CTypeEnumRead[20](avpacket + 24), cheap__identifier__1.CTypeEnumRead[15](avpacket + 28))).some((nalu => 5 === (31 & nalu[0])));
170
141
  }
171
142
  {
172
143
  const size = cheap__identifier__1.CTypeEnumRead[15](avpacket + 28);
@@ -180,7 +151,7 @@ exports.annexbExtradata2AvccExtradata = function(data) {
180
151
  }
181
152
  }, exports.parseSPS = parseSPS;
182
153
 
183
- const cheap__fileName__0 = "src/avutil/codecs/h264.ts", cheap__identifier__1 = require("@libmedia/cheap/ctypeEnumRead"), cheap__identifier__5 = require("@libmedia/cheap/ctypeEnumWrite"), array = __importStar(require("@libmedia/common/util/array")), BufferWriter_1 = __importDefault(require("@libmedia/common/io/BufferWriter")), BufferReader_1 = __importDefault(require("@libmedia/common/io/BufferReader")), BitReader_1 = __importDefault(require("@libmedia/common/io/BitReader")), logger = __importStar(require("@libmedia/common/util/logger")), memory_1 = require("@libmedia/cheap/std/memory"), avpacket_1 = require("../util/avpacket"), nalu_1 = require("../util/nalu"), mem_1 = require("../util/mem"), expgolomb = __importStar(require("../util/expgolomb")), intread = __importStar(require("../util/intread"));
154
+ const cheap__fileName__0 = "src/avutil/codecs/h264.ts", cheap__identifier__1 = require("@libmedia/cheap/ctypeEnumRead"), array = __importStar(require("@libmedia/common/util/array")), BufferWriter_1 = __importDefault(require("@libmedia/common/io/BufferWriter")), BufferReader_1 = __importDefault(require("@libmedia/common/io/BufferReader")), BitReader_1 = __importDefault(require("@libmedia/common/io/BitReader")), logger = __importStar(require("@libmedia/common/util/logger")), memory_1 = require("@libmedia/cheap/std/memory"), naluUtil = __importStar(require("../util/nalu")), mem_1 = require("../util/mem"), expgolomb = __importStar(require("../util/expgolomb")), intread = __importStar(require("../util/intread")), intwrite = __importStar(require("../util/intwrite"));
184
155
 
185
156
  function extradata2SpsPps(extradata) {
186
157
  const bufferReader = new BufferReader_1.default(extradata);
@@ -211,8 +182,8 @@ function extradata2SpsPps(extradata) {
211
182
  }
212
183
 
213
184
  function spsPps2Extradata(spss, ppss, spsExts = []) {
214
- spss.length > 32 && (logger.warn(`h264 metadata's sps max length is 32, but get ${spss.length}`, cheap__fileName__0, 210),
215
- spss = spss.slice(0, 32)), spss.length > 256 && (logger.warn(`h264 metadata's pps max length is 256, but get ${spss.length}`, cheap__fileName__0, 214),
185
+ spss.length > 32 && (logger.warn(`h264 metadata's sps max length is 32, but get ${spss.length}`, cheap__fileName__0, 221),
186
+ spss = spss.slice(0, 32)), spss.length > 256 && (logger.warn(`h264 metadata's pps max length is 256, but get ${spss.length}`, cheap__fileName__0, 225),
216
187
  spss = spss.slice(0, 256));
217
188
  let length = 7;
218
189
  length = spss.reduce(((prev, sps) => prev + 2 + sps.length), length), length = ppss.reduce(((prev, pps) => prev + 2 + pps.length), length);
@@ -233,11 +204,30 @@ function spsPps2Extradata(spss, ppss, spsExts = []) {
233
204
  }))), buffer;
234
205
  }
235
206
 
207
+ function nalus2Annexb(spss, ppss, spsExts, seis, others) {
208
+ const lengths = [ naluUtil.joinNaluByStartCodeLength(seis, 0), naluUtil.joinNaluByStartCodeLength(spss, 0), naluUtil.joinNaluByStartCodeLength(ppss, 0), naluUtil.joinNaluByStartCodeLength(spsExts, 0), naluUtil.joinNaluByStartCodeLength(others, 2) ];
209
+ let length = lengths.reduce(((prev, length) => prev + length), 0);
210
+ const bufferPointer = (0, mem_1.avMalloc)(length + 6);
211
+ let offset = bufferPointer;
212
+ return intwrite.w8((offset += 1, offset - 1), 0), intwrite.w8((offset += 1, offset - 1), 0),
213
+ intwrite.w8((offset += 1, offset - 1), 0), intwrite.w8((offset += 1, offset - 1), 1),
214
+ intwrite.w8((offset += 1, offset - 1), 9), intwrite.w8((offset += 1, offset - 1), 240),
215
+ seis.length && (naluUtil.joinNaluByStartCode(seis, 0, (0, memory_1.mapUint8Array)(offset, lengths[0])),
216
+ offset += lengths[0]), spss.length && (naluUtil.joinNaluByStartCode(spss, 0, (0,
217
+ memory_1.mapUint8Array)(offset, lengths[1])), offset += lengths[1]), ppss.length && (naluUtil.joinNaluByStartCode(ppss, 0, (0,
218
+ memory_1.mapUint8Array)(offset, lengths[2])), offset += lengths[2]), spsExts.length && (naluUtil.joinNaluByStartCode(spsExts, 0, (0,
219
+ memory_1.mapUint8Array)(offset, lengths[3])), offset += lengths[3]), others.length && naluUtil.joinNaluByStartCode(others, 2, (0,
220
+ memory_1.mapUint8Array)(offset, lengths[4])), {
221
+ bufferPointer: bufferPointer,
222
+ length: length + 6
223
+ };
224
+ }
225
+
236
226
  function parseSPS(sps) {
237
227
  if (!sps || sps.length < 3) return;
238
228
  let offset = 0;
239
229
  0 === sps[0] && 0 === sps[1] && 0 === sps[2] && 1 === sps[3] && (offset = 4);
240
- const buffer = (0, nalu_1.naluUnescape)(sps.subarray(offset)), bitReader = new BitReader_1.default(buffer.length);
230
+ const buffer = naluUtil.naluUnescape(sps.subarray(offset)), bitReader = new BitReader_1.default(buffer.length);
241
231
  bitReader.appendBuffer(buffer), bitReader.readU1(), bitReader.readU(2), bitReader.readU(5);
242
232
  const profile = bitReader.readU(8);
243
233
  bitReader.readU1(), bitReader.readU1(), bitReader.readU1(), bitReader.readU1(),
@@ -271,6 +261,32 @@ function parseSPS(sps) {
271
261
  cropUnitY = 2 - frameCroppingFlag), width -= cropUnitX * (expgolomb.readUE(bitReader) + expgolomb.readUE(bitReader)),
272
262
  height -= cropUnitY * (expgolomb.readUE(bitReader) + expgolomb.readUE(bitReader));
273
263
  }
264
+ let videoDelay = 0;
265
+ if (bitReader.readU1()) {
266
+ let flag = bitReader.readU1();
267
+ if (flag) {
268
+ bitReader.readU(8) >= 17 && (bitReader.readU(16), bitReader.readU(16));
269
+ }
270
+ function parseHrdParameters() {
271
+ const cpbCount = expgolomb.readUE(bitReader) + 1;
272
+ bitReader.readU(4), bitReader.readU(4);
273
+ for (let i = 0; i < cpbCount; i++) expgolomb.readUE(bitReader), expgolomb.readUE(bitReader),
274
+ bitReader.readU1();
275
+ bitReader.readU(5), bitReader.readU(5), bitReader.readU(5), bitReader.readU(5);
276
+ }
277
+ flag = bitReader.readU1(), flag && bitReader.readU1(), flag = bitReader.readU1(),
278
+ flag && (bitReader.readU(3), bitReader.readU1(), flag = bitReader.readU1(), flag && (bitReader.readU(8),
279
+ bitReader.readU(8), bitReader.readU(8))), flag = bitReader.readU1(), flag && (expgolomb.readUE(bitReader),
280
+ expgolomb.readUE(bitReader)), flag = bitReader.readU1(), flag && (bitReader.readU(32),
281
+ bitReader.readU(32), bitReader.readU1());
282
+ let flag1 = bitReader.readU1();
283
+ flag1 && parseHrdParameters();
284
+ let flag2 = bitReader.readU1();
285
+ flag2 && parseHrdParameters(), (flag1 || flag2) && bitReader.readU1(), bitReader.readU1(),
286
+ flag = bitReader.readU1(), flag && (bitReader.readU1(), expgolomb.readUE(bitReader),
287
+ expgolomb.readUE(bitReader), expgolomb.readUE(bitReader), expgolomb.readUE(bitReader),
288
+ videoDelay = Math.min(expgolomb.readUE(bitReader), exports.H264_MAX_DPB_FRAMES));
289
+ }
274
290
  return {
275
291
  profile: profile,
276
292
  level: level,
@@ -283,11 +299,12 @@ function parseSPS(sps) {
283
299
  picOrderCntType: picOrderCntType,
284
300
  log2MaxPicOrderCntLsbMinus4: log2MaxPicOrderCntLsbMinus4,
285
301
  deltaPicOrderAlwaysZeroFlag: deltaPicOrderAlwaysZeroFlag,
286
- log2MaxFrameNumMinus4: log2MaxFrameNumMinus4
302
+ log2MaxFrameNumMinus4: log2MaxFrameNumMinus4,
303
+ videoDelay: videoDelay
287
304
  };
288
305
  }
289
306
 
290
- exports.NALULengthSizeMinusOne = 3, exports.H264Profile2Name = {
307
+ exports.H264_MAX_DPB_FRAMES = 16, exports.NALULengthSizeMinusOne = 3, exports.H264Profile2Name = {
291
308
  66: "Constrained Baseline",
292
309
  77: "Main",
293
310
  100: "High",
@@ -1 +1 @@
1
- {"version":3,"names":["exports","getLevelByResolution","width","height","fps","resolution","level","LevelCapabilities","maxResolution","maxFrameRate","extradata2SpsPps","spsPps2Extradata","annexbExtradata2AvccExtradata","data","nalus","nalu_1","splitNaluByStartCode","length","spss","ppss","spsExts","forEach","nalu","type","push","annexb2Avcc","extradata","key","filter","reduce","prev","NALULengthSizeMinusOne","bufferPointer","mem_1","avMalloc","buffer","memory_1","mapUint8Array","bufferWriter","BufferWriter_1","default","array","each","writeUint32","writeUint24","writeUint16","writeUint8","writeBuffer","subarray","avcc2Annexb","naluLengthSizeMinusOne","result","seis","bufferReader","BufferReader_1","remainingSize","readUint32","readUint24","readUint16","readUint8","Number","BigInt","asIntN","getPos","skip","naluType","sps","pps","ext","sei","index","parseAvccExtraData","avpacket","stream","cheap__identifier__1","CTypeEnumRead","avpacket_1","getAVPacketData","isAnnexb","metadata","others","extradataPointer","memcpyFromUint8Array","addAVPacketSideData","parseAnnexbExtraData","force","cheap__identifier__5","CTypeEnumWrite","parseAVCodecParameters","sideData","profile","parseSPS","codecpar","isIDR","naluLengthSize","some","size","i","intread","r8","rb32","rb24","rb16","__importStar","require","__importDefault","BitReader_1","logger","expgolomb","spsLength","readBuffer","ppsLength","spsExtLength","warn","cheap__fileName__0","slice","params","Uint8Array","chromaFormatIdc","bitDepthLumaMinus8","bitDepthChromaMinus8","offset","naluUnescape","bitReader","appendBuffer","readU1","readU","readUE","seqScalingListPresentFlag","Array","log2MaxFrameNumMinus4","picOrderCntType","log2MaxPicOrderCntLsbMinus4","deltaPicOrderAlwaysZeroFlag","readSE","numRefFramesInPicOrderCntCycle","picWidthInMbsMinus1","picHeightInMapUnitsMinus1","frameMbsOnlyFlag","frameCroppingFlag","cropUnitX","cropUnitY","H264Profile2Name"],"sources":["../../../codecs/h264.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["exports","getLevelByResolution","width","height","fps","resolution","level","LevelCapabilities","maxResolution","maxFrameRate","extradata2SpsPps","spsPps2Extradata","annexbExtradata2AvccExtradata","data","nalus","naluUtil","splitNaluByStartCode","length","spss","ppss","spsExts","forEach","nalu","type","push","generateAnnexbExtradata","joinNaluByStartCode","annexb2Avcc","extradata","key","filter","reduce","prev","NALULengthSizeMinusOne","bufferPointer","mem_1","avMalloc","buffer","memory_1","mapUint8Array","joinNaluByLength","nalus2Annexb","annexbAddExtradata","concat","seis","others","avcc2Annexb","naluLengthSizeMinusOne","result","splitNaluByLength","naluType","parseAVCodecParameters","stream","sideData","sps","isAnnexb","array","each","metadata","profile","videoDelay","chromaFormatIdc","bitDepthLumaMinus8","parseSPS","codecpar","format","isIDR","avpacket","naluLengthSize","cheap__identifier__1","CTypeEnumRead","some","size","i","intread","r8","rb32","rb24","rb16","__importStar","require","BufferWriter_1","__importDefault","BufferReader_1","BitReader_1","logger","expgolomb","intwrite","bufferReader","default","skip","spsLength","readUint8","readUint16","readBuffer","ppsLength","remainingSize","spsExtLength","warn","cheap__fileName__0","slice","pps","params","ext","Uint8Array","bufferWriter","writeUint8","writeUint16","writeBuffer","bitDepthChromaMinus8","lengths","joinNaluByStartCodeLength","offset","w8","naluUnescape","subarray","bitReader","appendBuffer","readU1","readU","readUE","seqScalingListPresentFlag","Array","log2MaxFrameNumMinus4","picOrderCntType","log2MaxPicOrderCntLsbMinus4","deltaPicOrderAlwaysZeroFlag","readSE","numRefFramesInPicOrderCntCycle","picWidthInMbsMinus1","picHeightInMapUnitsMinus1","frameMbsOnlyFlag","frameCroppingFlag","cropUnitX","cropUnitY","flag","parseHrdParameters","cpbCount","flag1","flag2","Math","min","H264_MAX_DPB_FRAMES","H264Profile2Name"],"sources":["../../../codecs/h264.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiIAA,QAAAC,uBAAA,SAAqCC,OAAeC,QAAgBC;IAClE,MAAMC,aAAaH,QAAQC;IAC3B,KAAK,MAAMG,SAASN,QAAAO,mBAClB,IAAIF,cAAcC,MAAME,iBAAiBJ,OAAOE,MAAMG,cACpD,OAAOH,MAAMA;AAGnB,GAmCAN,QAAAU,qCA8CAV,QAAAW;AA8EAX,QAAAY,gCAAA,SAA8CC;IAC5C,IAAIC,QAAQC,SAASC,qBAAqBH;IAC1C,IAAIC,MAAMG,SAAS,GAAG;QACpB,MAAMC,OAA8B,IAC9BC,OAA8B,IAC9BC,UAAiC;QAcvC,IAZAN,MAAMO,SAASC;YACb,MAAMC,OAAiB,KAAVD,KAAK;YACV,MAAJC,OACFL,KAAKM,KAAKF,QAEC,MAAJC,OACPJ,KAAKK,KAAKF,QAEC,OAAJC,QACPH,QAAQI,KAAKF;AACf,aAEEJ,KAAKD,UAAUE,KAAKF,QACtB,OAAON,iBAAiBO,MAAMC,MAAMC;AAExC;AACF,GAUApB,QAAAyB,0BAAA,SAAwCZ;IACtC,IAAIC,QAAQC,SAASC,qBAAqBH;IAC1C,IAAIC,MAAMG,SAAS,GAAG;QACpB,MAAMC,OAA8B,IAC9BC,OAA8B,IAC9BC,UAAiC;QAcvC,IAZAN,MAAMO,SAASC;YACb,MAAMC,OAAiB,KAAVD,KAAK;YACV,MAAJC,OACFL,KAAKM,KAAKF,QAEC,MAAJC,OACPJ,KAAKK,KAAKF,QAEC,OAAJC,QACPH,QAAQI,KAAKF;AACf,aAEEJ,KAAKD,UAAUE,KAAKF,QAAQ;YAC9B,MAAMH,QAAQ,EAACI,KAAK,IAAIC,KAAK;YAI7B,OAHIC,QAAQH,UACVH,MAAMU,KAAKJ,QAAQ,KAEdL,SAASW,oBAAoBZ,OAAO;AAC7C;AACF;AACF,GAQAd,QAAA2B,cAAA,SAA4Bd;IAE1B,IACIe,WADAd,QAAQC,SAASC,qBAAqBH,OAEtCgB,OAAe;IAEnB,IAAIf,MAAMG,QAAQ;QAChB,MAAMC,OAA8B,IAC9BC,OAA8B,IAC9BC,UAAiC;QAEvCN,MAAMO,SAASC;YACb,MAAMC,OAAiB,KAAVD,KAAK;YACV,MAAJC,OACFL,KAAKM,KAAKF,QAEC,MAAJC,OACPJ,KAAKK,KAAKF,QAEC,OAAJC,OACPH,QAAQI,KAAKF,QAEF,MAAJC,SACPM,OAAM;AACR,aAGEX,KAAKD,UAAUE,KAAKF,UACtBW,YAAYjB,iBAAiBO,MAAMC,MAAMC;QACzCN,QAAQA,MAAMgB,QAAQR;YACpB,MAAMC,OAAiB,KAAVD,KAAK;YAClB,OAAW,MAAJC,QACE,MAAJA,QACI,MAAJA,QACI,OAAJA;AAA6B,eAIpCT,QAAQA,MAAMgB,QAAQR,QAET,OADY,KAAVA,KAAK;AAIxB;IAEA,MAAML,SAASH,MAAMiB,QAAO,CAACC,MAAMV,SAC1BU,OAAOhC,QAAAiC,yBAAyB,IAAIX,KAAKL,SAC/C,IAEGiB,iBAAa;IAAGC,MAAAC,UAASnB,SACzBoB,UAAM,GAAGC,SAAAC,eAAcL,eAAejB;IAI5C,OAFAF,SAASyB,iBAAiB1B,OAAOd,QAAAiC,wBAAwBI;IAElD;QACLH;QACAjB;QACAY;QACAD;;AAEJ,GAYA5B,QAAAyC,6BA8DAzC,QAAA0C,qBAAA,SAAmC7B,MAA2Be;IAC5D,IAAId,QAAQC,SAASC,qBAAqBH,MAAM8B,OAAO5B,SAASC,qBAAqBY;IACrF,IAAId,MAAMG,QAAQ;QAChB,MAAMC,OAA8B,IAC9BC,OAA8B,IAC9BC,UAAiC,IACjCwB,OAA8B,IAC9BC,SAAgC;QAoBtC,OAlBA/B,MAAMO,SAASC;YACb,MAAMC,OAAiB,KAAVD,KAAK;YACV,MAAJC,OACFL,KAAKM,KAAKF,QAEC,MAAJC,OACPJ,KAAKK,KAAKF,QAEC,OAAJC,OACPH,QAAQI,KAAKF,QAEF,MAAJC,OACPqB,KAAKpB,KAAKF,QAEC,MAAJC,QACPsB,OAAOrB,KAAKF;AACd,aAEKmB,aAAavB,MAAMC,MAAMC,SAASwB,MAAMC;AACjD;AACF,GAOA7C,QAAA8C,cAAA,SAA4BjC,MAA2Be;IACrD,MAAMmB,yBAAyBnB,YAA4B,IAAfA,UAAU,KAAa5B,QAAAiC;IACnE,IAAIf,OAA8B,IAC9BC,OAA8B,IAC9BC,UAAiC,IACjCS,OAAM;IAEV,IAAID,WAAW;QACb,MAAMoB,SAAStC,iBAAiBkB;QAChCV,OAAO8B,OAAO9B,MACdC,OAAO6B,OAAO7B,MACdC,UAAU4B,OAAO5B,SACjBS,OAAM;AACR;IAEA,MAAMgB,SAAgC,IAChCD,OAA8B;IAepC,OAdc7B,SAASkC,kBAAkBpC,MAAMkC,wBACzC1B,SAASC;QACb,MAAM4B,WAAqB,KAAV5B,KAAK;QACV,MAAR4B,WACFN,KAAKpB,KAAKF,QAEK,MAAR4B,YACPL,OAAOrB,KAAKF,OAEF,MAAR4B,aACFrB,OAAM;AACR,SAGK;WACFY,aAAavB,MAAMC,MAAMC,SAASwB,MAAMC;QAC3ChB;;AAEJ,GAEA7B,QAAAmD,yBAAA,SAAuCC,QAAkBxB;KAClDA,aAAawB,OAAOC,SAAQ,OAC/BzB,YAAYwB,OAAOC,SAAQ;IAG7B,IAAIC;IACJ,IAAI1B,aAAab,SAASwC,SAAS3B,YACjC4B,MAAMC,KAAK1C,SAASC,qBAAqBY,aAAaN;QAEpD,IAAQ,OADe,KAAVA,KAAK,KAGhB,OADAgC,MAAMhC,OACC;AACT,cAGC,IAAIM,aAAaA,UAAUX,UAAU,GAAG;QAC3CmC,OAAOM,SAASX,yBAAyC,IAAfnB,UAAU;QACpD,OAAMV,MAAEA,QAASR,iBAAiBkB;QAC9BV,KAAKD,WACPqC,MAAMpC,KAAK;AAEf;IACA,IAAIoC,KAAK;QACP,OAAMK,SAAEA,SAAOrD,OAAEA,OAAKJ,OAAEA,OAAKC,QAAEA,QAAMyD,YAAEA,YAAUC,iBAAEA,iBAAeC,oBAAEA,sBAAuBC,SAAST;QAMpG,QALAF,OAAOY,SAASL,UAAUA,SAC1BP,OAAOY,SAAS1D,QAAQA,OACxB8C,OAAOY,SAAS9D,QAAQA;QACxBkD,OAAOY,SAAS7D,SAASA,QACzBiD,OAAOY,SAASJ,aAAaA,YACrBE;UACN,KAAK;YAEDV,OAAOY,SAASC,SADM,MAApBJ,kBACoB,IAEK,MAApBA,kBACe,IAGA;YAExB;;UACF,KAAK;YAEDT,OAAOY,SAASC,SADM,MAApBJ,kBACoB,KAEK,MAApBA,kBACe,KAGA;YAExB;;UACF,KAAK;YAEDT,OAAOY,SAASC,SADM,MAApBJ,kBACoB,KAEK,MAApBA,kBACe,KAGA;;AAI9B;AACF,GAEA7D,QAAAkE,QAAA,SAAsBC,UAA6BC,iBAAwB;IACzE,IAAY,MAARC,qBAAAC,cAAA,IAAAH,WAAQ,KAAiC;QAE3C,OADYpD,SAASC,sBAAoB,GAACsB,SAAAC,eAAa8B,qBAAAC,cAAA,IAACH,WAAQ,KAAAE,qBAAAC,cAAA,IAA8BH,WAAQ,MACzFI,MAAMjD,QAEN,OADY,KAAVA,KAAK;AAGtB;IACK;QACH,MAAMkD,OAAIH,qBAAAC,cAAA,IAAGH,WAAQ;QACrB,IAAIM,IAAI;QACR,MAAOA,IAAKD,OAAOJ,kBAAiB;YAElC,IAAQ,OADwD,KAAnDM,QAAQC,GAAGN,qBAAAC,cAAA,IAAAH,WAAQ,OAASM,IAAIL,mBAE3C,QAAO;YAGPK,KADqB,MAAnBL,iBACGM,QAAQE,KAAKP,qBAAAC,cAAA,IAAAH,WAAQ,MAAQM,KAER,MAAnBL,iBACFM,QAAQG,KAAKR,qBAAAC,cAAA,IAAAH,WAAQ,MAAQM,KAER,MAAnBL,iBACFM,QAAQI,KAAKT,qBAAAC,cAAA,IAAAH,WAAQ,MAAQM,KAG7BC,QAAQC,GAAGN,qBAAAC,cAAA,IAAAH,WAAQ,MAAQM;YAElCA,KAAKL;AACP;QACA,QAAO;AACT;AACF,GAkBApE,QAAA+D;;yHAtpBAP,QAAAuB,aAAAC,QAAA,iCAEAC,iBAAAC,gBAAAF,QAAA,sCACAG,iBAAAD,gBAAAF,QAAA,sCAEAI,cAAAF,gBAAAF,QAAA,mCAEAK,SAAAN,aAAAC,QAAA,kCACA1C,WAAA0C,QAAA,+BACAjE,WAAAgE,aAAAC,QAAA,kBACA7C,QAAA6C,QAAA,gBACAM,YAAAP,aAAAC,QAAA,uBAEAN,UAAAK,aAAAC,QAAA,qBACAO,WAAAR,aAAAC,QAAA;;AAoIA,SAAgBtE,iBAAiBkB;IAC/B,MAAM4D,eAAe,IAAIL,eAAAM,QAAa7D;IACtC4D,aAAaE,KAAK;IAElB,MAAMxE,OAA8B,IAC9BC,OAA8B,IAC9BC,UAAiC,IAEjCuE,YAAuC,KAA3BH,aAAaI;IAC/B,KAAK,IAAInB,IAAI,GAAGA,IAAIkB,WAAWlB,KAAK;QAClC,MAAMxD,SAASuE,aAAaK;QAC5B3E,KAAKM,KAAKgE,aAAaM,WAAW7E;AACpC;IAEA,MAAM8E,YAAYP,aAAaI;IAC/B,KAAK,IAAInB,IAAI,GAAGA,IAAIsB,WAAWtB,KAAK;QAClC,MAAMxD,SAASuE,aAAaK;QAC5B1E,KAAKK,KAAKgE,aAAaM,WAAW7E;AACpC;IAEA,IAAIuE,aAAaQ,kBAAkB,GAAG;QACpCR,aAAaE,KAAK;QAClB,MAAMO,eAAeT,aAAaI;QAClC,IAAIK,eAAe,GACjB,KAAK,IAAIxB,IAAI,GAAGA,IAAIwB,cAAcxB,KAAK;YACrC,MAAMxD,SAASuE,aAAaK;YAC5BzE,QAAQI,KAAKgE,aAAaM,WAAW7E;AACvC;AAEJ;IAEA,OAAO;QACLC;QACAC;QACAC;;AAEJ;;AAUA,SAAgBT,iBAAiBO,MAA6BC,MAA6BC,UAAiC;IAEtHF,KAAKD,SAAS,OAChBoE,OAAOa,KAAK,iDAAkDhF,KAAKD,UAAQkF,oBAAA;IAC3EjF,OAAOA,KAAKkF,MAAM,GAAG,MAEnBlF,KAAKD,SAAS,QAChBoE,OAAOa,KAAK,kDAAmDhF,KAAKD,UAAQkF,oBAAA;IAC5EjF,OAAOA,KAAKkF,MAAM,GAAG;IAGvB,IAAInF,SAAS;IACbA,SAASC,KAAKa,QAAO,CAACC,MAAMsB,QACnBtB,OAAO,IAAIsB,IAAIrC,SACrBA,SACHA,SAASE,KAAKY,QAAO,CAACC,MAAMqE,QACnBrE,OAAO,IAAIqE,IAAIpF,SACrBA;IAEH,MAAMqC,MAAMpC,KAAK,IAEXoF,SAASvC,SAAST;IAED,OAAnBgD,OAAO3C,WAAqC,OAAnB2C,OAAO3C,WAAqC,OAAnB2C,OAAO3C,YAC3D1C,UAAU;IAENG,QAAQH,WACVA,SAASG,QAAQW,QAAO,CAACC,MAAMuE,QACtBvE,OAAO,IAAIuE,IAAItF,SACrBA;IAIP,MAAMoB,SAAS,IAAImE,WAAWvF,SACxBwF,eAAe,IAAIxB,eAAAQ,QAAapD;IAmCtC,OAjCAoE,aAAaC,WAAW,IACxBD,aAAaC,WAAWpD,IAAI,KAC5BmD,aAAaC,WAAWpD,IAAI;IAC5BmD,aAAaC,WAAWpD,IAAI,KAC5BmD,aAAaC,WAAW,MAAO1G,QAAAiC;IAG/BwE,aAAaC,WAAW,MAAsB,KAAdxF,KAAKD,SACrCuC,MAAMC,KAAKvC,OAAOoC;QAChBmD,aAAaE,YAAYrD,IAAIrC,SAC7BwF,aAAaG,YAAYtD;AAAI,SAI/BmD,aAAaC,WAAWvF,KAAKF,SAC7BuC,MAAMC,KAAKtC,OAAOkF;QAChBI,aAAaE,YAAYN,IAAIpF,SAC7BwF,aAAaG,YAAYP;AAAI,SAGR,OAAnBC,OAAO3C,WAAqC,OAAnB2C,OAAO3C,WAAqC,OAAnB2C,OAAO3C,YAC3D8C,aAAaC,WAAW,MAAOJ,OAAOzC;IACtC4C,aAAaC,WAAW,MAAOJ,OAAOxC,qBACtC2C,aAAaC,WAAW,MAAOJ,OAAOO;IAElCzF,QAAQH,UACVuC,MAAMC,KAAKrC,UAAUmF;QACnBE,aAAaE,YAAYJ,IAAItF,SAC7BwF,aAAaG,YAAYL;AAAI,UAK5BlE;AACT;;AAoJA,SAAgBI,aACdvB,MACAC,MACAC,SACAwB,MACAC;IAEA,MAAMiE,UAAU,EACd/F,SAASgG,0BAA0BnE,MAAM,IACzC7B,SAASgG,0BAA0B7F,MAAM,IACzCH,SAASgG,0BAA0B5F,MAAM,IACzCJ,SAASgG,0BAA0B3F,SAAS,IAC5CL,SAASgG,0BAA0BlE,QAAQ;IAG7C,IAAI5B,SAAS6F,QAAQ/E,QAAO,CAACC,MAAMf,WAC1Be,OAAOf,SACb;IAEH,MAAMiB,iBAAa,GAAGC,MAAAC,UAASnB,SAAS;IAExC,IAAI+F,SAAS9E;IA6Bb,OA3BAqD,SAAS0B,IAAGD,UAAM,GAANA,SAAM,IAAI,IACtBzB,SAAS0B,IAAGD,UAAM,GAANA,SAAM,IAAI;IACtBzB,SAAS0B,IAAGD,UAAM,GAANA,SAAM,IAAI,IACtBzB,SAAS0B,IAAGD,UAAM,GAANA,SAAM,IAAI;IACtBzB,SAAS0B,IAAGD,UAAM,GAANA,SAAM,QAClBzB,SAAS0B,IAAGD,UAAM,GAANA,SAAM,IAAI;IAElBpE,KAAK3B,WACPF,SAASW,oBAAoBkB,MAAM,IAAC,GAAEN,SAAAC,eAAcyE,QAAQF,QAAQ;IACpEE,UAAUF,QAAQ,KAEhB5F,KAAKD,WACPF,SAASW,oBAAoBR,MAAM,IAAC;IAAEoB,SAAAC,eAAcyE,QAAQF,QAAQ,MACpEE,UAAUF,QAAQ,KAEhB3F,KAAKF,WACPF,SAASW,oBAAoBP,MAAM,IAAC;IAAEmB,SAAAC,eAAcyE,QAAQF,QAAQ,MACpEE,UAAUF,QAAQ,KAEhB1F,QAAQH,WACVF,SAASW,oBAAoBN,SAAS,IAAC;IAAEkB,SAAAC,eAAcyE,QAAQF,QAAQ,MACvEE,UAAUF,QAAQ,KAEhBjE,OAAO5B,UACTF,SAASW,oBAAoBmB,QAAQ,IAAC;IAAEP,SAAAC,eAAcyE,QAAQF,QAAQ,MAGjE;QACL5E;QACAjB,QAAQA,SAAS;;AAErB;;AAsMA,SAAgB8C,SAAST;IAEvB,KAAKA,OAAOA,IAAIrC,SAAS,GACvB;IAGF,IAAI+F,SAAS;IACE,MAAX1D,IAAI,MACQ,MAAXA,IAAI,MACO,MAAXA,IAAI,MACO,MAAXA,IAAI,OAEP0D,SAAS;IAGX,MAAM3E,SAAStB,SAASmG,aAAa5D,IAAI6D,SAASH,UAC5CI,YAAY,IAAIhC,YAAAK,QAAUpD,OAAOpB;IACvCmG,UAAUC,aAAahF,SAGvB+E,UAAUE,UAEVF,UAAUG,MAAM,IAEhBH,UAAUG,MAAM;IAEhB,MAAM5D,UAAUyD,UAAUG,MAAM;IAGhCH,UAAUE,UAEVF,UAAUE,UAEVF,UAAUE,UAEVF,UAAUE;IAEVF,UAAUE,UAEVF,UAAUE,UAEVF,UAAUG,MAAM;IAEhB,MAAMjH,QAAQ8G,UAAUG,MAAM;IAG9BjC,UAAUkC,OAAOJ;IAGjB,IAAIvD,kBAAkB,GAClBC,qBAAqB,GACrB+C,uBAAuB;IAE3B,IAAe,OAAXlD,WAA6B,OAAXA,WAA6B,OAAXA,WACxB,OAAXA,WAA6B,MAAXA,WAA4B,MAAXA,WACxB,MAAXA,WAA4B,OAAXA,WAA6B,OAAXA,WACxB,OAAXA,WAA6B,OAAXA,WAA6B,OAAXA,WAA6B,OAAXA,SACzD;QAcA,IAbAE,kBAAkByB,UAAUkC,OAAOJ,YACX,MAApBvD,mBAEFuD,UAAUE;QAGZxD,qBAAqBwB,UAAUkC,OAAOJ,YAEtCP,uBAAuBvB,UAAUkC,OAAOJ;QAExCA,UAAUE,UAEwBF,UAAUE,UACX;YAC/B,MAAMG,4BAA4B,IAAIC,MAAM;YAC5C,KAAK,IAAIjD,IAAI,GAAGA,KAAyB,KAAnBZ,kBAAwB,IAAI,KAAKY,KACrDgD,0BAA0BhD,KAAK2C,UAAUE;AAE7C;AACF;IAGA,MAAMK,wBAAwBrC,UAAUkC,OAAOJ,YAEzCQ,kBAAkBtC,UAAUkC,OAAOJ;IACzC,IAAIS,8BAA8B,GAC9BC,8BAA8B;IAElC,IAAwB,MAApBF,iBAEFC,8BAA8BvC,UAAUkC,OAAOJ,iBAE5C,IAAwB,MAApBQ,iBAAuB;QAE9BE,8BAA8BV,UAAUE,UAGxChC,UAAUyC,OAAOX,YAEjB9B,UAAUyC,OAAOX;QAEjB,MAAMY,iCAAiC1C,UAAUkC,OAAOJ;QACxD,KAAK,IAAI3C,IAAI,GAAGA,IAAIuD,gCAAgCvD,KAClDa,UAAUyC,OAAOX;AAErB;IAGA9B,UAAUkC,OAAOJ,YAEjBA,UAAUE;IAEV,MAAMW,sBAAsB3C,UAAUkC,OAAOJ,YACvCc,4BAA4B5C,UAAUkC,OAAOJ,YAC7Ce,mBAAmBf,UAAUE;IAEnC,IAAIpH,QAAoC,MAA3B+H,sBAAsB,IAC/B9H,UAAU,IAAIgI,qBAAqBD,4BAA4B,KAAK;IAEnEC,oBAEHf,UAAUE,UAIZF,UAAUE;IAEV,MAAMc,oBAAoBhB,UAAUE;IACpC,IAAIc,mBAAmB;QAMrB,IAAIC,YAAY,GACZC,YAAY,IAAIF;QAEI,MAApBvE,mBACFwE,YAAY,GACZC,YAAY,KAAK,IAAIF,sBAEQ,MAAtBA,sBACPC,YAAY;QACZC,YAAY,IAAIF,oBAGlBlI,SAASmI,aAjBmB/C,UAAUkC,OAAOJ,aAChB9B,UAAUkC,OAAOJ;QAiB9CjH,UAAUmI,aAhBiBhD,UAAUkC,OAAOJ,aACd9B,UAAUkC,OAAOJ;AAiBjD;IAEA,IAAIxD,aAAa;IAGjB,IADiCwD,UAAUE,UACb;QAE5B,IAAIiB,OAAOnB,UAAUE;QACrB,IAAIiB,MAAM;YACenB,UAAUG,MAAM,MACjB,OAEpBH,UAAUG,MAAM,KAEhBH,UAAUG,MAAM;AAEpB;QA2CA,SAASiB;YACP,MAAMC,WAAWnD,UAAUkC,OAAOJ,aAAa;YAE/CA,UAAUG,MAAM,IAEhBH,UAAUG,MAAM;YAChB,KAAK,IAAI9C,IAAI,GAAGA,IAAIgE,UAAUhE,KAE5Ba,UAAUkC,OAAOJ,YAEjB9B,UAAUkC,OAAOJ;YAEjBA,UAAUE;YAGZF,UAAUG,MAAM,IAEhBH,UAAUG,MAAM,IAEhBH,UAAUG,MAAM,IAEhBH,UAAUG,MAAM;AAClB;QA/DAgB,OAAOnB,UAAUE,UACbiB,QAEFnB,UAAUE,UAGZiB,OAAOnB,UAAUE;QACbiB,SAEFnB,UAAUG,MAAM,IAEhBH,UAAUE,UAEViB,OAAOnB,UAAUE,UACbiB,SAEFnB,UAAUG,MAAM;QAEhBH,UAAUG,MAAM,IAEhBH,UAAUG,MAAM,MAIpBgB,OAAOnB,UAAUE,UACbiB,SAEFjD,UAAUkC,OAAOJ;QAEjB9B,UAAUkC,OAAOJ,aAGnBmB,OAAOnB,UAAUE,UACbiB,SAEFnB,UAAUG,MAAM;QAEhBH,UAAUG,MAAM,KAEhBH,UAAUE;QA0BZ,IAAIoB,QAAQtB,UAAUE;QAClBoB,SACFF;QAGF,IAAIG,QAAQvB,UAAUE;QAClBqB,SACFH,uBAEEE,SAASC,UAEXvB,UAAUE,UAGZF,UAAUE;QAEViB,OAAOnB,UAAUE,UACbiB,SAEFnB,UAAUE,UAEVhC,UAAUkC,OAAOJ;QAEjB9B,UAAUkC,OAAOJ,YAEjB9B,UAAUkC,OAAOJ,YAEjB9B,UAAUkC,OAAOJ;QAEjBxD,aAAagF,KAAKC,IAAIvD,UAAUkC,OAAOJ,YAAYpH,QAAA8I;AAEvD;IAEA,OAAO;QACLnF;QACArD;QACAJ;QACAC;QACA0D;QACAC;QACA+C;QACAsB;QACAP;QACAC;QACAC;QACAH;QACA/D;;AAEJ;;AA35Ba5D,QAAA8I,sBAAsB,IAEtB9I,QAAAiC,yBAAyB,GAsDzBjC,QAAA+I,mBAAgD;IAC3D,IAAyB;IACzB,IAAqB;IACrB,KAAqB;IACrB,KAAuB;IACvB,KAAwB;IACxB,KAAwB;GAGb/I,QAAAO,oBAAoB,EAC/B;IAAED,OAAO;IAAIE,eAAe;IAAOC,cAAc;GACjD;IAAEH,OAAO;IAAIE,eAAe;IAAOC,cAAc;GACjD;IAAEH,OAAO;IAAIE,eAAe;IAAQC,cAAc;GAClD;IAAEH,OAAO;IAAIE,eAAe;IAAQC,cAAc;GAClD;IAAEH,OAAO;IAAIE,eAAe;IAAQC,cAAc;GAClD;IAAEH,OAAO;IAAIE,eAAe;IAAQC,cAAc;GAClD;IAAEH,OAAO;IAAIE,eAAe;IAAQC,cAAc;GAClD;IAAEH,OAAO;IAAIE,eAAe;IAAQC,cAAc;GAClD;IAAEH,OAAO;IAAIE,eAAe;IAAQC,cAAc;GAClD;IAAEH,OAAO;IAAIE,eAAe;IAASC,cAAc;GACnD;IAAEH,OAAO;IAAIE,eAAe;IAASC,cAAc;GACnD;IAAEH,OAAO;IAAIE,eAAe;IAASC,cAAc;GACnD;IAAEH,OAAO;IAAIE,eAAe;IAASC,cAAc;GACnD;IAAEH,OAAO;IAAIE,eAAe;IAASC,cAAc;GACnD;IAAEH,OAAO;IAAIE,eAAe;IAASC,cAAc;GACnD;IAAEH,OAAO;IAAIE,eAAe;IAASC,cAAc;GACnD;IAAEH,OAAO;IAAIE,eAAe;IAAUC,cAAc;GACpD;IAAEH,OAAO;IAAIE,eAAe;IAAUC,cAAc;GACpD;IAAEH,OAAO;IAAIE,eAAe;IAAUC,cAAc","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  import AVPacket from "../struct/avpacket";
2
2
  import AVStream from "../AVStream";
3
3
  import { Uint8ArrayInterface } from "@libmedia/common/io/interface";
4
+ export declare const HEVC_MAX_DPB_FRAMES = 16;
4
5
  export declare const enum HEVCProfile {
5
6
  Main = 1,
6
7
  Main10 = 2,
@@ -91,34 +92,83 @@ export declare const enum HEVCSliceType {
91
92
  *
92
93
  */
93
94
  export declare function extradata2VpsSpsPps(extradata: Uint8ArrayInterface): {
94
- vpss: any[];
95
- spss: any[];
96
- ppss: any[];
95
+ vpss: Uint8ArrayInterface[];
96
+ spss: Uint8ArrayInterface[];
97
+ ppss: Uint8ArrayInterface[];
97
98
  };
98
- export declare function vpsSpsPps2Extradata(vpss: Uint8ArrayInterface[], spss: Uint8ArrayInterface[], ppss: Uint8ArrayInterface[]): Uint8Array;
99
- export declare function annexbExtradata2AvccExtradata(data: Uint8ArrayInterface): Uint8Array;
99
+ /**
100
+ * annexb vps sps pps 转 avcc 格式的 extradata
101
+ *
102
+ * @param vpss
103
+ * @param spss
104
+ * @param ppss
105
+ * @returns
106
+ */
107
+ export declare function vpsSpsPps2Extradata(vpss: Uint8ArrayInterface[], spss: Uint8ArrayInterface[], ppss: Uint8ArrayInterface[]): Uint8Array<ArrayBuffer>;
108
+ /**
109
+ * annexb extradata 转 avcc extradata
110
+ *
111
+ * @param data
112
+ * @returns
113
+ */
114
+ export declare function annexbExtradata2AvccExtradata(data: Uint8ArrayInterface): Uint8Array<ArrayBuffer>;
115
+ /**
116
+ * 从 annexb 码流里面生成 annexb extradata
117
+ *
118
+ * 提取出 vps、 sps 和 pps
119
+ *
120
+ * @param data
121
+ * @returns
122
+ */
123
+ export declare function generateAnnexbExtradata(data: Uint8ArrayInterface): Uint8Array<ArrayBufferLike>;
100
124
  /**
101
125
  *
102
126
  * annexb 格式的 NALU 转 avcc NALU
103
127
  *
128
+ * 需要保证 data 是 safe 的
129
+ *
104
130
  */
105
131
  export declare function annexb2Avcc(data: Uint8ArrayInterface): {
106
132
  bufferPointer: pointer<void>;
107
133
  length: number;
108
- extradata: Uint8Array;
134
+ extradata: Uint8Array<ArrayBufferLike>;
109
135
  key: boolean;
110
136
  };
137
+ /**
138
+ *
139
+ * 需要保证 data 是 safe 的
140
+ *
141
+ * @param vpss
142
+ * @param spss
143
+ * @param ppss
144
+ * @param nalus
145
+ * @returns
146
+ */
147
+ export declare function nalus2Annexb(vpss: Uint8ArrayInterface[], spss: Uint8ArrayInterface[], ppss: Uint8ArrayInterface[], nalus: Uint8ArrayInterface[]): {
148
+ bufferPointer: pointer<void>;
149
+ length: number;
150
+ };
151
+ /**
152
+ * annexb 添加 sps pps
153
+ *
154
+ * @param data
155
+ * @param extradata
156
+ */
157
+ export declare function annexbAddExtradata(data: Uint8ArrayInterface, extradata: Uint8ArrayInterface): {
158
+ bufferPointer: pointer<void>;
159
+ length: number;
160
+ };
111
161
  /**
112
162
  * avcc 格式的 NALU 转 annexb NALU
113
163
  *
164
+ * 需要保证 data 是 safe 的
165
+ *
114
166
  */
115
167
  export declare function avcc2Annexb(data: Uint8ArrayInterface, extradata?: Uint8ArrayInterface): {
116
- bufferPointer: pointer<void>;
117
- length: any;
118
168
  key: boolean;
169
+ bufferPointer: pointer<void>;
170
+ length: number;
119
171
  };
120
- export declare function parseAvccExtraData(avpacket: pointer<AVPacket>, stream: AVStream): void;
121
- export declare function parseAnnexbExtraData(avpacket: pointer<AVPacket>, force?: boolean): void;
122
172
  export declare function parseAVCodecParameters(stream: AVStream, extradata?: Uint8ArrayInterface): void;
123
173
  export declare function isIDR(avpacket: pointer<AVPacket>, naluLengthSize?: int32): boolean;
124
174
  export interface HevcSPS {
@@ -151,6 +201,7 @@ export interface HevcSPS {
151
201
  min_pu_width: number;
152
202
  min_pu_height: number;
153
203
  log2_max_poc_lsb: number;
204
+ video_delay: number;
154
205
  }
155
206
  export declare function parseSPS(sps: Uint8ArrayInterface): HevcSPS;
156
207
  export interface HevcPPS {