eyevinn-channel-engine 4.2.9 → 4.3.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.
package/README.md CHANGED
@@ -134,6 +134,7 @@ In addition there other reference implemetations that can be used:
134
134
  - `examples/multicodec.ts` : example with multicodec
135
135
  - `examples/drm.ts` : example with DRM
136
136
  - `examples/autocreate.ts` : example to auto create channel on demand
137
+ - `examples/truncate.ts` : example when trimming start and end of a VOD
137
138
 
138
139
  ### Source linking hls-vodtolive library
139
140
 
@@ -17,6 +17,8 @@ export interface ChannelEngineOpts {
17
17
  subtitleSliceEndpoint?: string;
18
18
  useVTTSubtitles?: boolean;
19
19
  alwaysNewSegments?: boolean;
20
+ partialStoreHLSVod?: boolean;
21
+ alwaysMapBandwidthByNearest?: boolean;
20
22
  diffCompensationRate?: number;
21
23
  staticDirectory?: string;
22
24
  averageSegmentDuration?: number;
@@ -56,6 +58,7 @@ export interface VodResponse {
56
58
  offset?: number;
57
59
  diffMs?: number;
58
60
  desiredDuration?: number;
61
+ startOffset?: number;
59
62
  type?: string;
60
63
  currentMetadata?: VodResponseMetadata;
61
64
  timedMetadata?: VodTimedMetadata;
@@ -125,6 +128,8 @@ export declare class ChannelEngine {
125
128
  private subtitleSliceEndpoint;
126
129
  private useVTTSubtitles;
127
130
  private alwaysNewSegments;
131
+ private partialStoreHLSVod;
132
+ private alwaysMapBandwidthByNearest;
128
133
  private defaultSlateUri?;
129
134
  private slateDuration?;
130
135
  private assetMgr;
@@ -89,6 +89,14 @@ var ChannelEngine = /** @class */ (function () {
89
89
  if (options && options.alwaysNewSegments) {
90
90
  this.alwaysNewSegments = true;
91
91
  }
92
+ this.partialStoreHLSVod = false;
93
+ if (options && options.partialStoreHLSVod) {
94
+ this.partialStoreHLSVod = true;
95
+ }
96
+ this.alwaysMapBandwidthByNearest = false;
97
+ if (options && options.alwaysMapBandwidthByNearest) {
98
+ this.alwaysMapBandwidthByNearest = true;
99
+ }
92
100
  if (options && options.defaultSlateUri) {
93
101
  this.defaultSlateUri = options.defaultSlateUri;
94
102
  this.slateRepetitions = options.slateRepetitions || 10;
@@ -437,6 +445,8 @@ var ChannelEngine = /** @class */ (function () {
437
445
  subtitleSliceEndpoint: this.subtitleSliceEndpoint,
438
446
  useVTTSubtitles: this.useVTTSubtitles,
439
447
  alwaysNewSegments: options.alwaysNewSegments,
448
+ partialStoreHLSVod: options.partialStoreHLSVod,
449
+ alwaysMapBandwidthByNearest: options.alwaysMapBandwidthByNearest,
440
450
  noSessionDataTags: options.noSessionDataTags,
441
451
  playheadDiffThreshold: channel.options && channel.options.playheadDiffThreshold ? channel.options.playheadDiffThreshold : this.streamerOpts.defaultPlayheadDiffThreshold,
442
452
  maxTickInterval: channel.options && channel.options.maxTickInterval ? channel.options.maxTickInterval : this.streamerOpts.defaultMaxTickInterval,
@@ -49,6 +49,9 @@ declare class Session {
49
49
  };
50
50
  isAllowedToClearVodCache: boolean;
51
51
  alwaysNewSegments: any;
52
+ alwaysMapBandwidthByNearest: any;
53
+ partialStoreHLSVod: any;
54
+ currentPlayheadRef: any;
52
55
  _category: any;
53
56
  startWithId: any;
54
57
  _sessionProfile: any;