hls.js 1.5.5-0.canary.9977 → 1.5.5-0.canary.9980

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.
package/dist/hls.light.js CHANGED
@@ -525,7 +525,7 @@
525
525
  // Some browsers don't allow to use bind on console object anyway
526
526
  // fallback to default if needed
527
527
  try {
528
- newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.5.5-0.canary.9977");
528
+ newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.5.5-0.canary.9980");
529
529
  } catch (e) {
530
530
  /* log fn threw an exception. All logger methods are no-ops. */
531
531
  return createLogger();
@@ -1201,7 +1201,7 @@
1201
1201
  // This file is inserted as a shim for modules which we do not want to include into the distro.
1202
1202
  // This replacement is done in the "alias" plugin of the rollup config.
1203
1203
  var empty = undefined;
1204
- var Cues = /*@__PURE__*/getDefaultExportFromCjs(empty);
1204
+ var HevcVideoParser = /*@__PURE__*/getDefaultExportFromCjs(empty);
1205
1205
 
1206
1206
  function sliceUint8(array, start, end) {
1207
1207
  // @ts-expect-error This polyfills IE11 usage of Uint8Array slice.
@@ -9810,7 +9810,7 @@
9810
9810
  });
9811
9811
  function timelineConfig() {
9812
9812
  return {
9813
- cueHandler: Cues,
9813
+ cueHandler: HevcVideoParser,
9814
9814
  // used by timeline-controller
9815
9815
  enableWebVTT: false,
9816
9816
  // used by timeline-controller
@@ -14985,608 +14985,6 @@
14985
14985
  return AvcVideoParser;
14986
14986
  }(BaseVideoParser);
14987
14987
 
14988
- var HevcVideoParser = /*#__PURE__*/function (_BaseVideoParser) {
14989
- _inheritsLoose(HevcVideoParser, _BaseVideoParser);
14990
- function HevcVideoParser() {
14991
- var _this;
14992
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
14993
- args[_key] = arguments[_key];
14994
- }
14995
- _this = _BaseVideoParser.call.apply(_BaseVideoParser, [this].concat(args)) || this;
14996
- _this.initVPS = null;
14997
- return _this;
14998
- }
14999
- var _proto = HevcVideoParser.prototype;
15000
- _proto.parsePES = function parsePES(track, textTrack, pes, last, duration) {
15001
- var _this2 = this;
15002
- var units = this.parseNALu(track, pes.data);
15003
- var VideoSample = this.VideoSample;
15004
- var push;
15005
- var spsfound = false;
15006
- // free pes.data to save up some memory
15007
- pes.data = null;
15008
-
15009
- // if new NAL units found and last sample still there, let's push ...
15010
- // this helps parsing streams with missing AUD (only do this if AUD never found)
15011
- if (VideoSample && units.length && !track.audFound) {
15012
- this.pushAccessUnit(VideoSample, track);
15013
- VideoSample = this.VideoSample = this.createVideoSample(false, pes.pts, pes.dts, '');
15014
- }
15015
- units.forEach(function (unit) {
15016
- var _VideoSample2;
15017
- switch (unit.type) {
15018
- // NON-IDR, NON RANDOM ACCESS SLICE
15019
- case 0:
15020
- case 1:
15021
- case 2:
15022
- case 3:
15023
- case 4:
15024
- case 5:
15025
- case 6:
15026
- case 7:
15027
- case 8:
15028
- case 9:
15029
- if (!VideoSample) {
15030
- VideoSample = _this2.VideoSample = _this2.createVideoSample(false, pes.pts, pes.dts, '');
15031
- }
15032
- VideoSample.frame = true;
15033
- push = true;
15034
- break;
15035
-
15036
- // CRA, BLA (random access picture)
15037
- case 16:
15038
- case 17:
15039
- case 18:
15040
- case 21:
15041
- push = true;
15042
- if (spsfound) {
15043
- var _VideoSample;
15044
- // handle PES not starting with AUD
15045
- // if we have frame data already, that cannot belong to the same frame, so force a push
15046
- if ((_VideoSample = VideoSample) != null && _VideoSample.frame && !VideoSample.key) {
15047
- _this2.pushAccessUnit(VideoSample, track);
15048
- VideoSample = _this2.VideoSample = null;
15049
- }
15050
- }
15051
- if (!VideoSample) {
15052
- VideoSample = _this2.VideoSample = _this2.createVideoSample(true, pes.pts, pes.dts, '');
15053
- }
15054
- VideoSample.key = true;
15055
- VideoSample.frame = true;
15056
- break;
15057
-
15058
- // IDR
15059
- case 19:
15060
- case 20:
15061
- push = true;
15062
- // handle PES not starting with AUD
15063
- // if we have frame data already, that cannot belong to the same frame, so force a push
15064
- if ((_VideoSample2 = VideoSample) != null && _VideoSample2.frame && !VideoSample.key) {
15065
- _this2.pushAccessUnit(VideoSample, track);
15066
- VideoSample = _this2.VideoSample = null;
15067
- }
15068
- if (!VideoSample) {
15069
- VideoSample = _this2.VideoSample = _this2.createVideoSample(true, pes.pts, pes.dts, '');
15070
- }
15071
- VideoSample.key = true;
15072
- VideoSample.frame = true;
15073
- break;
15074
-
15075
- // SEI
15076
- case 39:
15077
- push = true;
15078
- parseSEIMessageFromNALu(unit.data, 2,
15079
- // NALu header size
15080
- pes.pts, textTrack.samples);
15081
- break;
15082
-
15083
- // VPS
15084
- case 32:
15085
- push = true;
15086
- if (!track.vps) {
15087
- var config = _this2.readVPS(unit.data);
15088
- track.params = _objectSpread2({}, config);
15089
- _this2.initVPS = unit.data;
15090
- }
15091
- track.vps = [unit.data];
15092
- break;
15093
-
15094
- // SPS
15095
- case 33:
15096
- push = true;
15097
- spsfound = true;
15098
- if (typeof track.params === 'object') {
15099
- if (track.vps !== undefined && track.vps[0] !== _this2.initVPS && track.sps !== undefined && !_this2.matchSPS(track.sps[0], unit.data)) {
15100
- _this2.initVPS = track.vps[0];
15101
- track.sps = track.pps = undefined;
15102
- }
15103
- if (!track.sps) {
15104
- var _config = _this2.readSPS(unit.data);
15105
- track.width = _config.width;
15106
- track.height = _config.height;
15107
- track.pixelRatio = _config.pixelRatio;
15108
- track.duration = duration;
15109
- track.codec = _config.codecString;
15110
- track.sps = [];
15111
- for (var prop in _config.params) {
15112
- track.params[prop] = _config.params[prop];
15113
- }
15114
- }
15115
- if (track.vps !== undefined && track.vps[0] === _this2.initVPS) {
15116
- track.sps.push(unit.data);
15117
- }
15118
- }
15119
- if (!VideoSample) {
15120
- VideoSample = _this2.VideoSample = _this2.createVideoSample(true, pes.pts, pes.dts, '');
15121
- }
15122
- VideoSample.key = true;
15123
- break;
15124
-
15125
- // PPS
15126
- case 34:
15127
- push = true;
15128
- if (typeof track.params === 'object') {
15129
- if (!track.pps) {
15130
- track.pps = [];
15131
- var _config2 = _this2.readPPS(unit.data);
15132
- for (var _prop in _config2) {
15133
- track.params[_prop] = _config2[_prop];
15134
- }
15135
- }
15136
- if (_this2.initVPS !== null || track.pps.length === 0) {
15137
- track.pps.push(unit.data);
15138
- }
15139
- }
15140
- break;
15141
-
15142
- // ACCESS UNIT DELIMITER
15143
- case 35:
15144
- push = true;
15145
- track.audFound = true;
15146
- if (VideoSample) {
15147
- _this2.pushAccessUnit(VideoSample, track);
15148
- }
15149
- VideoSample = _this2.VideoSample = _this2.createVideoSample(false, pes.pts, pes.dts, '');
15150
- break;
15151
- default:
15152
- push = false;
15153
- if (VideoSample) {
15154
- VideoSample.debug += 'unknown or irrelevant NAL ' + unit.type + ' ';
15155
- }
15156
- break;
15157
- }
15158
- if (VideoSample && push) {
15159
- var _units = VideoSample.units;
15160
- _units.push(unit);
15161
- }
15162
- });
15163
- // if last PES packet, push samples
15164
- if (last && VideoSample) {
15165
- this.pushAccessUnit(VideoSample, track);
15166
- this.VideoSample = null;
15167
- }
15168
- };
15169
- _proto.getNALuType = function getNALuType(data, offset) {
15170
- return (data[offset] & 0x7e) >>> 1;
15171
- };
15172
- _proto.ebsp2rbsp = function ebsp2rbsp(arr) {
15173
- var dst = new Uint8Array(arr.byteLength);
15174
- var dstIdx = 0;
15175
- for (var i = 0; i < arr.byteLength; i++) {
15176
- if (i >= 2) {
15177
- // Unescape: Skip 0x03 after 00 00
15178
- if (arr[i] === 0x03 && arr[i - 1] === 0x00 && arr[i - 2] === 0x00) {
15179
- continue;
15180
- }
15181
- }
15182
- dst[dstIdx] = arr[i];
15183
- dstIdx++;
15184
- }
15185
- return new Uint8Array(dst.buffer, 0, dstIdx);
15186
- };
15187
- _proto.readVPS = function readVPS(vps) {
15188
- var eg = new ExpGolomb(vps);
15189
- // remove header
15190
- eg.readUByte();
15191
- eg.readUByte();
15192
- eg.readBits(4); // video_parameter_set_id
15193
- eg.skipBits(2);
15194
- eg.readBits(6); // max_layers_minus1
15195
- var max_sub_layers_minus1 = eg.readBits(3);
15196
- var temporal_id_nesting_flag = eg.readBoolean();
15197
- // ...vui fps can be here, but empty fps value is not critical for metadata
15198
-
15199
- return {
15200
- numTemporalLayers: max_sub_layers_minus1 + 1,
15201
- temporalIdNested: temporal_id_nesting_flag
15202
- };
15203
- };
15204
- _proto.readSPS = function readSPS(sps) {
15205
- var eg = new ExpGolomb(this.ebsp2rbsp(sps));
15206
- eg.readUByte();
15207
- eg.readUByte();
15208
- eg.readBits(4); //video_parameter_set_id
15209
- var max_sub_layers_minus1 = eg.readBits(3);
15210
- eg.readBoolean(); // temporal_id_nesting_flag
15211
-
15212
- // profile_tier_level
15213
- var general_profile_space = eg.readBits(2);
15214
- var general_tier_flag = eg.readBoolean();
15215
- var general_profile_idc = eg.readBits(5);
15216
- var general_profile_compatibility_flags_1 = eg.readUByte();
15217
- var general_profile_compatibility_flags_2 = eg.readUByte();
15218
- var general_profile_compatibility_flags_3 = eg.readUByte();
15219
- var general_profile_compatibility_flags_4 = eg.readUByte();
15220
- var general_constraint_indicator_flags_1 = eg.readUByte();
15221
- var general_constraint_indicator_flags_2 = eg.readUByte();
15222
- var general_constraint_indicator_flags_3 = eg.readUByte();
15223
- var general_constraint_indicator_flags_4 = eg.readUByte();
15224
- var general_constraint_indicator_flags_5 = eg.readUByte();
15225
- var general_constraint_indicator_flags_6 = eg.readUByte();
15226
- var general_level_idc = eg.readUByte();
15227
- var sub_layer_profile_present_flags = [];
15228
- var sub_layer_level_present_flags = [];
15229
- for (var i = 0; i < max_sub_layers_minus1; i++) {
15230
- sub_layer_profile_present_flags.push(eg.readBoolean());
15231
- sub_layer_level_present_flags.push(eg.readBoolean());
15232
- }
15233
- if (max_sub_layers_minus1 > 0) {
15234
- for (var _i = max_sub_layers_minus1; _i < 8; _i++) {
15235
- eg.readBits(2);
15236
- }
15237
- }
15238
- for (var _i2 = 0; _i2 < max_sub_layers_minus1; _i2++) {
15239
- if (sub_layer_profile_present_flags[_i2]) {
15240
- eg.readUByte(); // sub_layer_profile_space, sub_layer_tier_flag, sub_layer_profile_idc
15241
- eg.readUByte();
15242
- eg.readUByte();
15243
- eg.readUByte();
15244
- eg.readUByte(); // sub_layer_profile_compatibility_flag
15245
- eg.readUByte();
15246
- eg.readUByte();
15247
- eg.readUByte();
15248
- eg.readUByte();
15249
- eg.readUByte();
15250
- eg.readUByte();
15251
- }
15252
- if (sub_layer_level_present_flags[_i2]) {
15253
- eg.readUByte();
15254
- }
15255
- }
15256
- eg.readUEG(); // seq_parameter_set_id
15257
- var chroma_format_idc = eg.readUEG();
15258
- if (chroma_format_idc == 3) {
15259
- eg.skipBits(1); //separate_colour_plane_flag
15260
- }
15261
- var pic_width_in_luma_samples = eg.readUEG();
15262
- var pic_height_in_luma_samples = eg.readUEG();
15263
- var conformance_window_flag = eg.readBoolean();
15264
- var pic_left_offset = 0,
15265
- pic_right_offset = 0,
15266
- pic_top_offset = 0,
15267
- pic_bottom_offset = 0;
15268
- if (conformance_window_flag) {
15269
- pic_left_offset += eg.readUEG();
15270
- pic_right_offset += eg.readUEG();
15271
- pic_top_offset += eg.readUEG();
15272
- pic_bottom_offset += eg.readUEG();
15273
- }
15274
- var bit_depth_luma_minus8 = eg.readUEG();
15275
- var bit_depth_chroma_minus8 = eg.readUEG();
15276
- var log2_max_pic_order_cnt_lsb_minus4 = eg.readUEG();
15277
- var sub_layer_ordering_info_present_flag = eg.readBoolean();
15278
- for (var _i3 = sub_layer_ordering_info_present_flag ? 0 : max_sub_layers_minus1; _i3 <= max_sub_layers_minus1; _i3++) {
15279
- eg.skipUEG(); // max_dec_pic_buffering_minus1[i]
15280
- eg.skipUEG(); // max_num_reorder_pics[i]
15281
- eg.skipUEG(); // max_latency_increase_plus1[i]
15282
- }
15283
- eg.skipUEG(); // log2_min_luma_coding_block_size_minus3
15284
- eg.skipUEG(); // log2_diff_max_min_luma_coding_block_size
15285
- eg.skipUEG(); // log2_min_transform_block_size_minus2
15286
- eg.skipUEG(); // log2_diff_max_min_transform_block_size
15287
- eg.skipUEG(); // max_transform_hierarchy_depth_inter
15288
- eg.skipUEG(); // max_transform_hierarchy_depth_intra
15289
- var scaling_list_enabled_flag = eg.readBoolean();
15290
- if (scaling_list_enabled_flag) {
15291
- var sps_scaling_list_data_present_flag = eg.readBoolean();
15292
- if (sps_scaling_list_data_present_flag) {
15293
- for (var sizeId = 0; sizeId < 4; sizeId++) {
15294
- for (var matrixId = 0; matrixId < (sizeId === 3 ? 2 : 6); matrixId++) {
15295
- var scaling_list_pred_mode_flag = eg.readBoolean();
15296
- if (!scaling_list_pred_mode_flag) {
15297
- eg.readUEG(); // scaling_list_pred_matrix_id_delta
15298
- } else {
15299
- var coefNum = Math.min(64, 1 << 4 + (sizeId << 1));
15300
- if (sizeId > 1) {
15301
- eg.readEG();
15302
- }
15303
- for (var _i4 = 0; _i4 < coefNum; _i4++) {
15304
- eg.readEG();
15305
- }
15306
- }
15307
- }
15308
- }
15309
- }
15310
- }
15311
- eg.readBoolean(); // amp_enabled_flag
15312
- eg.readBoolean(); // sample_adaptive_offset_enabled_flag
15313
- var pcm_enabled_flag = eg.readBoolean();
15314
- if (pcm_enabled_flag) {
15315
- eg.readUByte();
15316
- eg.skipUEG();
15317
- eg.skipUEG();
15318
- eg.readBoolean();
15319
- }
15320
- var num_short_term_ref_pic_sets = eg.readUEG();
15321
- var num_delta_pocs = 0;
15322
- for (var _i5 = 0; _i5 < num_short_term_ref_pic_sets; _i5++) {
15323
- var inter_ref_pic_set_prediction_flag = false;
15324
- if (_i5 !== 0) {
15325
- inter_ref_pic_set_prediction_flag = eg.readBoolean();
15326
- }
15327
- if (inter_ref_pic_set_prediction_flag) {
15328
- if (_i5 === num_short_term_ref_pic_sets) {
15329
- eg.readUEG();
15330
- }
15331
- eg.readBoolean();
15332
- eg.readUEG();
15333
- var next_num_delta_pocs = 0;
15334
- for (var j = 0; j <= num_delta_pocs; j++) {
15335
- var used_by_curr_pic_flag = eg.readBoolean();
15336
- var use_delta_flag = false;
15337
- if (!used_by_curr_pic_flag) {
15338
- use_delta_flag = eg.readBoolean();
15339
- }
15340
- if (used_by_curr_pic_flag || use_delta_flag) {
15341
- next_num_delta_pocs++;
15342
- }
15343
- }
15344
- num_delta_pocs = next_num_delta_pocs;
15345
- } else {
15346
- var num_negative_pics = eg.readUEG();
15347
- var num_positive_pics = eg.readUEG();
15348
- num_delta_pocs = num_negative_pics + num_positive_pics;
15349
- for (var _j = 0; _j < num_negative_pics; _j++) {
15350
- eg.readUEG();
15351
- eg.readBoolean();
15352
- }
15353
- for (var _j2 = 0; _j2 < num_positive_pics; _j2++) {
15354
- eg.readUEG();
15355
- eg.readBoolean();
15356
- }
15357
- }
15358
- }
15359
- var long_term_ref_pics_present_flag = eg.readBoolean();
15360
- if (long_term_ref_pics_present_flag) {
15361
- var num_long_term_ref_pics_sps = eg.readUEG();
15362
- for (var _i6 = 0; _i6 < num_long_term_ref_pics_sps; _i6++) {
15363
- for (var _j3 = 0; _j3 < log2_max_pic_order_cnt_lsb_minus4 + 4; _j3++) {
15364
- eg.readBits(1);
15365
- }
15366
- eg.readBits(1);
15367
- }
15368
- }
15369
- var min_spatial_segmentation_idc = 0;
15370
- var sar_width = 1,
15371
- sar_height = 1;
15372
- var fps_fixed = true,
15373
- fps_den = 1,
15374
- fps_num = 0;
15375
- eg.readBoolean(); // sps_temporal_mvp_enabled_flag
15376
- eg.readBoolean(); // strong_intra_smoothing_enabled_flag
15377
- var default_display_window_flag = false;
15378
- var vui_parameters_present_flag = eg.readBoolean();
15379
- if (vui_parameters_present_flag) {
15380
- var aspect_ratio_info_present_flag = eg.readBoolean();
15381
- if (aspect_ratio_info_present_flag) {
15382
- var aspect_ratio_idc = eg.readUByte();
15383
- var sar_width_table = [1, 12, 10, 16, 40, 24, 20, 32, 80, 18, 15, 64, 160, 4, 3, 2];
15384
- var sar_height_table = [1, 11, 11, 11, 33, 11, 11, 11, 33, 11, 11, 33, 99, 3, 2, 1];
15385
- if (aspect_ratio_idc > 0 && aspect_ratio_idc < 16) {
15386
- sar_width = sar_width_table[aspect_ratio_idc - 1];
15387
- sar_height = sar_height_table[aspect_ratio_idc - 1];
15388
- } else if (aspect_ratio_idc === 255) {
15389
- sar_width = eg.readBits(16);
15390
- sar_height = eg.readBits(16);
15391
- }
15392
- }
15393
- var overscan_info_present_flag = eg.readBoolean();
15394
- if (overscan_info_present_flag) {
15395
- eg.readBoolean();
15396
- }
15397
- var video_signal_type_present_flag = eg.readBoolean();
15398
- if (video_signal_type_present_flag) {
15399
- eg.readBits(3);
15400
- eg.readBoolean();
15401
- var colour_description_present_flag = eg.readBoolean();
15402
- if (colour_description_present_flag) {
15403
- eg.readUByte();
15404
- eg.readUByte();
15405
- eg.readUByte();
15406
- }
15407
- }
15408
- var chroma_loc_info_present_flag = eg.readBoolean();
15409
- if (chroma_loc_info_present_flag) {
15410
- eg.readUEG();
15411
- eg.readUEG();
15412
- }
15413
- eg.readBoolean(); // neutral_chroma_indication_flag
15414
- eg.readBoolean(); // field_seq_flag
15415
- eg.readBoolean(); // frame_field_info_present_flag
15416
- default_display_window_flag = eg.readBoolean();
15417
- if (default_display_window_flag) {
15418
- pic_left_offset += eg.readUEG();
15419
- pic_right_offset += eg.readUEG();
15420
- pic_top_offset += eg.readUEG();
15421
- pic_bottom_offset += eg.readUEG();
15422
- }
15423
- var vui_timing_info_present_flag = eg.readBoolean();
15424
- if (vui_timing_info_present_flag) {
15425
- fps_den = eg.readBits(32);
15426
- fps_num = eg.readBits(32);
15427
- var vui_poc_proportional_to_timing_flag = eg.readBoolean();
15428
- if (vui_poc_proportional_to_timing_flag) {
15429
- eg.readUEG();
15430
- }
15431
- var vui_hrd_parameters_present_flag = eg.readBoolean();
15432
- if (vui_hrd_parameters_present_flag) {
15433
- //const commonInfPresentFlag = true;
15434
- //if (commonInfPresentFlag) {
15435
- var nal_hrd_parameters_present_flag = eg.readBoolean();
15436
- var vcl_hrd_parameters_present_flag = eg.readBoolean();
15437
- var sub_pic_hrd_params_present_flag = false;
15438
- if (nal_hrd_parameters_present_flag || vcl_hrd_parameters_present_flag) {
15439
- sub_pic_hrd_params_present_flag = eg.readBoolean();
15440
- if (sub_pic_hrd_params_present_flag) {
15441
- eg.readUByte();
15442
- eg.readBits(5);
15443
- eg.readBoolean();
15444
- eg.readBits(5);
15445
- }
15446
- eg.readBits(4); // bit_rate_scale
15447
- eg.readBits(4); // cpb_size_scale
15448
- if (sub_pic_hrd_params_present_flag) {
15449
- eg.readBits(4);
15450
- }
15451
- eg.readBits(5);
15452
- eg.readBits(5);
15453
- eg.readBits(5);
15454
- }
15455
- //}
15456
- for (var _i7 = 0; _i7 <= max_sub_layers_minus1; _i7++) {
15457
- fps_fixed = eg.readBoolean(); // fixed_pic_rate_general_flag
15458
- var fixed_pic_rate_within_cvs_flag = fps_fixed || eg.readBoolean();
15459
- var low_delay_hrd_flag = false;
15460
- if (fixed_pic_rate_within_cvs_flag) {
15461
- eg.readEG();
15462
- } else {
15463
- low_delay_hrd_flag = eg.readBoolean();
15464
- }
15465
- var cpb_cnt = low_delay_hrd_flag ? 1 : eg.readUEG() + 1;
15466
- if (nal_hrd_parameters_present_flag) {
15467
- for (var _j4 = 0; _j4 < cpb_cnt; _j4++) {
15468
- eg.readUEG();
15469
- eg.readUEG();
15470
- if (sub_pic_hrd_params_present_flag) {
15471
- eg.readUEG();
15472
- eg.readUEG();
15473
- }
15474
- eg.skipBits(1);
15475
- }
15476
- }
15477
- if (vcl_hrd_parameters_present_flag) {
15478
- for (var _j5 = 0; _j5 < cpb_cnt; _j5++) {
15479
- eg.readUEG();
15480
- eg.readUEG();
15481
- if (sub_pic_hrd_params_present_flag) {
15482
- eg.readUEG();
15483
- eg.readUEG();
15484
- }
15485
- eg.skipBits(1);
15486
- }
15487
- }
15488
- }
15489
- }
15490
- }
15491
- var bitstream_restriction_flag = eg.readBoolean();
15492
- if (bitstream_restriction_flag) {
15493
- eg.readBoolean(); // tiles_fixed_structure_flag
15494
- eg.readBoolean(); // motion_vectors_over_pic_boundaries_flag
15495
- eg.readBoolean(); // restricted_ref_pic_lists_flag
15496
- min_spatial_segmentation_idc = eg.readUEG();
15497
- }
15498
- }
15499
- var width = pic_width_in_luma_samples,
15500
- height = pic_height_in_luma_samples;
15501
- if (conformance_window_flag || default_display_window_flag) {
15502
- var chroma_scale_w = 1,
15503
- chroma_scale_h = 1;
15504
- if (chroma_format_idc === 1) {
15505
- // YUV 420
15506
- chroma_scale_w = chroma_scale_h = 2;
15507
- } else if (chroma_format_idc == 2) {
15508
- // YUV 422
15509
- chroma_scale_w = 2;
15510
- }
15511
- width = pic_width_in_luma_samples - chroma_scale_w * pic_right_offset - chroma_scale_w * pic_left_offset;
15512
- height = pic_height_in_luma_samples - chroma_scale_h * pic_bottom_offset - chroma_scale_h * pic_top_offset;
15513
- }
15514
- var profile_space_string = general_profile_space ? ['A', 'B', 'C'][general_profile_space] : '';
15515
- var profile_compatibility_buf = general_profile_compatibility_flags_1 << 24 | general_profile_compatibility_flags_2 << 16 | general_profile_compatibility_flags_3 << 8 | general_profile_compatibility_flags_4;
15516
- var profile_compatibility_rev = 0;
15517
- for (var _i8 = 0; _i8 < 32; _i8++) {
15518
- profile_compatibility_rev = (profile_compatibility_rev | (profile_compatibility_buf >> _i8 & 1) << 31 - _i8) >>> 0; // reverse bit position (and cast as UInt32)
15519
- }
15520
- var profile_compatibility_flags_string = profile_compatibility_rev.toString(16);
15521
- if (general_profile_idc === 1 && profile_compatibility_flags_string === '2') {
15522
- profile_compatibility_flags_string = '6';
15523
- }
15524
- var tier_flag_string = general_tier_flag ? 'H' : 'L';
15525
- return {
15526
- codecString: "hvc1." + profile_space_string + general_profile_idc + "." + profile_compatibility_flags_string + "." + tier_flag_string + general_level_idc + ".B0",
15527
- params: {
15528
- general_tier_flag: general_tier_flag,
15529
- general_profile_idc: general_profile_idc,
15530
- general_profile_space: general_profile_space,
15531
- general_profile_compatibility_flags: [general_profile_compatibility_flags_1, general_profile_compatibility_flags_2, general_profile_compatibility_flags_3, general_profile_compatibility_flags_4],
15532
- general_constraint_indicator_flags: [general_constraint_indicator_flags_1, general_constraint_indicator_flags_2, general_constraint_indicator_flags_3, general_constraint_indicator_flags_4, general_constraint_indicator_flags_5, general_constraint_indicator_flags_6],
15533
- general_level_idc: general_level_idc,
15534
- bit_depth: bit_depth_luma_minus8 + 8,
15535
- bit_depth_luma_minus8: bit_depth_luma_minus8,
15536
- bit_depth_chroma_minus8: bit_depth_chroma_minus8,
15537
- min_spatial_segmentation_idc: min_spatial_segmentation_idc,
15538
- chroma_format_idc: chroma_format_idc,
15539
- frame_rate: {
15540
- fixed: fps_fixed,
15541
- fps: fps_num / fps_den
15542
- }
15543
- },
15544
- width: width,
15545
- height: height,
15546
- pixelRatio: [sar_width, sar_height]
15547
- };
15548
- };
15549
- _proto.readPPS = function readPPS(pps) {
15550
- var eg = new ExpGolomb(this.ebsp2rbsp(pps));
15551
- eg.readUByte();
15552
- eg.readUByte();
15553
- eg.skipUEG(); // pic_parameter_set_id
15554
- eg.skipUEG(); // seq_parameter_set_id
15555
- eg.skipBits(2); // dependent_slice_segments_enabled_flag, output_flag_present_flag
15556
- eg.skipBits(3); // num_extra_slice_header_bits
15557
- eg.skipBits(2); // sign_data_hiding_enabled_flag, cabac_init_present_flag
15558
- eg.skipUEG();
15559
- eg.skipUEG();
15560
- eg.skipEG(); // init_qp_minus26
15561
- eg.skipBits(2); // constrained_intra_pred_flag, transform_skip_enabled_flag
15562
- var cu_qp_delta_enabled_flag = eg.readBoolean();
15563
- if (cu_qp_delta_enabled_flag) {
15564
- eg.skipUEG();
15565
- }
15566
- eg.skipEG(); // cb_qp_offset
15567
- eg.skipEG(); // cr_qp_offset
15568
- eg.skipBits(4); // pps_slice_chroma_qp_offsets_present_flag, weighted_pred_flag, weighted_bipred_flag, transquant_bypass_enabled_flag
15569
- var tiles_enabled_flag = eg.readBoolean();
15570
- var entropy_coding_sync_enabled_flag = eg.readBoolean();
15571
- var parallelismType = 1; // slice-based parallel decoding
15572
- if (entropy_coding_sync_enabled_flag && tiles_enabled_flag) {
15573
- parallelismType = 0; // mixed-type parallel decoding
15574
- } else if (entropy_coding_sync_enabled_flag) {
15575
- parallelismType = 3; // wavefront-based parallel decoding
15576
- } else if (tiles_enabled_flag) {
15577
- parallelismType = 2; // tile-based parallel decoding
15578
- }
15579
- return {
15580
- parallelismType: parallelismType
15581
- };
15582
- };
15583
- _proto.matchSPS = function matchSPS(sps1, sps2) {
15584
- // compare without headers and VPS related params
15585
- return String.fromCharCode.apply(null, sps1).substr(3) === String.fromCharCode.apply(null, sps2).substr(3);
15586
- };
15587
- return HevcVideoParser;
15588
- }(BaseVideoParser);
15589
-
15590
14988
  /**
15591
14989
  * SAMPLE-AES decrypter
15592
14990
  */
@@ -15896,9 +15294,6 @@
15896
15294
  case 'avc':
15897
15295
  this.videoParser = new AvcVideoParser();
15898
15296
  break;
15899
- case 'hevc':
15900
- this.videoParser = new HevcVideoParser();
15901
- break;
15902
15297
  }
15903
15298
  }
15904
15299
  if (this.videoParser !== null) {
@@ -16066,9 +15461,6 @@
16066
15461
  case 'avc':
16067
15462
  this.videoParser = new AvcVideoParser();
16068
15463
  break;
16069
- case 'hevc':
16070
- this.videoParser = new HevcVideoParser();
16071
- break;
16072
15464
  }
16073
15465
  }
16074
15466
  if (this.videoParser !== null) {
@@ -16377,10 +15769,8 @@
16377
15769
  break;
16378
15770
  case 0x24:
16379
15771
  // ITU-T Rec. H.265 and ISO/IEC 23008-2 (HEVC)
16380
- if (result.videoPid === -1) {
16381
- result.videoPid = pid;
16382
- result.segmentVideoCodec = 'hevc';
16383
- logger.log('HEVC in M2TS found');
15772
+ {
15773
+ logger.warn('Unsupported HEVC in M2TS found');
16384
15774
  }
16385
15775
  break;
16386
15776
  }
@@ -21867,7 +21257,7 @@
21867
21257
  * Get the video-dev/hls.js package version.
21868
21258
  */
21869
21259
  function get() {
21870
- return "1.5.5-0.canary.9977";
21260
+ return "1.5.5-0.canary.9980";
21871
21261
  }
21872
21262
  }, {
21873
21263
  key: "Events",