@editframe/elements 0.19.4-beta.0 → 0.20.1-beta.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/dist/elements/ContextProxiesController.d.ts +40 -0
- package/dist/elements/ContextProxiesController.js +69 -0
- package/dist/elements/EFCaptions.d.ts +45 -6
- package/dist/elements/EFCaptions.js +220 -26
- package/dist/elements/EFImage.js +4 -1
- package/dist/elements/EFMedia/AssetIdMediaEngine.d.ts +2 -1
- package/dist/elements/EFMedia/AssetIdMediaEngine.js +9 -0
- package/dist/elements/EFMedia/AssetMediaEngine.d.ts +1 -0
- package/dist/elements/EFMedia/AssetMediaEngine.js +11 -0
- package/dist/elements/EFMedia/BaseMediaEngine.d.ts +13 -1
- package/dist/elements/EFMedia/BaseMediaEngine.js +9 -0
- package/dist/elements/EFMedia/JitMediaEngine.d.ts +7 -1
- package/dist/elements/EFMedia/JitMediaEngine.js +15 -0
- package/dist/elements/EFMedia/audioTasks/makeAudioBufferTask.js +2 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioFrequencyAnalysisTask.js +2 -0
- package/dist/elements/EFMedia/audioTasks/makeAudioInitSegmentFetchTask.d.ts +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioInitSegmentFetchTask.js +3 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioInputTask.js +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioSegmentFetchTask.d.ts +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioSegmentFetchTask.js +6 -5
- package/dist/elements/EFMedia/audioTasks/makeAudioSegmentIdTask.js +3 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioTimeDomainAnalysisTask.js +2 -0
- package/dist/elements/EFMedia/shared/AudioSpanUtils.js +2 -2
- package/dist/elements/EFMedia/shared/GlobalInputCache.d.ts +39 -0
- package/dist/elements/EFMedia/shared/GlobalInputCache.js +57 -0
- package/dist/elements/EFMedia/shared/ThumbnailExtractor.d.ts +27 -0
- package/dist/elements/EFMedia/shared/ThumbnailExtractor.js +106 -0
- package/dist/elements/EFMedia/tasks/makeMediaEngineTask.js +1 -1
- package/dist/elements/EFMedia.d.ts +2 -2
- package/dist/elements/EFMedia.js +25 -1
- package/dist/elements/EFSurface.browsertest.d.ts +0 -0
- package/dist/elements/EFSurface.d.ts +30 -0
- package/dist/elements/EFSurface.js +96 -0
- package/dist/elements/EFTemporal.js +7 -6
- package/dist/elements/EFThumbnailStrip.browsertest.d.ts +0 -0
- package/dist/elements/EFThumbnailStrip.d.ts +86 -0
- package/dist/elements/EFThumbnailStrip.js +490 -0
- package/dist/elements/EFThumbnailStrip.media-engine.browsertest.d.ts +0 -0
- package/dist/elements/EFTimegroup.d.ts +6 -1
- package/dist/elements/EFTimegroup.js +53 -11
- package/dist/elements/updateAnimations.browsertest.d.ts +13 -0
- package/dist/elements/updateAnimations.d.ts +5 -0
- package/dist/elements/updateAnimations.js +37 -13
- package/dist/getRenderInfo.js +1 -1
- package/dist/gui/ContextMixin.js +27 -14
- package/dist/gui/EFControls.browsertest.d.ts +0 -0
- package/dist/gui/EFControls.d.ts +38 -0
- package/dist/gui/EFControls.js +51 -0
- package/dist/gui/EFFilmstrip.d.ts +40 -1
- package/dist/gui/EFFilmstrip.js +240 -3
- package/dist/gui/EFPreview.js +2 -1
- package/dist/gui/EFScrubber.d.ts +6 -5
- package/dist/gui/EFScrubber.js +31 -21
- package/dist/gui/EFTimeDisplay.browsertest.d.ts +0 -0
- package/dist/gui/EFTimeDisplay.d.ts +2 -6
- package/dist/gui/EFTimeDisplay.js +13 -23
- package/dist/gui/TWMixin.js +1 -1
- package/dist/gui/currentTimeContext.d.ts +3 -0
- package/dist/gui/currentTimeContext.js +3 -0
- package/dist/gui/durationContext.d.ts +3 -0
- package/dist/gui/durationContext.js +3 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +4 -1
- package/dist/style.css +1 -1
- package/dist/transcoding/types/index.d.ts +11 -0
- package/dist/utils/LRUCache.d.ts +46 -0
- package/dist/utils/LRUCache.js +382 -1
- package/dist/utils/LRUCache.test.d.ts +1 -0
- package/package.json +2 -2
- package/src/elements/ContextProxiesController.ts +124 -0
- package/src/elements/EFCaptions.browsertest.ts +1820 -0
- package/src/elements/EFCaptions.ts +373 -36
- package/src/elements/EFImage.ts +4 -1
- package/src/elements/EFMedia/AssetIdMediaEngine.ts +30 -1
- package/src/elements/EFMedia/AssetMediaEngine.ts +33 -0
- package/src/elements/EFMedia/BaseMediaEngine.browsertest.ts +3 -8
- package/src/elements/EFMedia/BaseMediaEngine.ts +35 -0
- package/src/elements/EFMedia/JitMediaEngine.ts +34 -0
- package/src/elements/EFMedia/audioTasks/makeAudioBufferTask.ts +6 -5
- package/src/elements/EFMedia/audioTasks/makeAudioFrequencyAnalysisTask.ts +5 -0
- package/src/elements/EFMedia/audioTasks/makeAudioInitSegmentFetchTask.ts +8 -5
- package/src/elements/EFMedia/audioTasks/makeAudioInputTask.ts +5 -5
- package/src/elements/EFMedia/audioTasks/makeAudioSegmentFetchTask.ts +11 -12
- package/src/elements/EFMedia/audioTasks/makeAudioSegmentIdTask.ts +7 -4
- package/src/elements/EFMedia/audioTasks/makeAudioTimeDomainAnalysisTask.ts +5 -0
- package/src/elements/EFMedia/shared/AudioSpanUtils.ts +2 -2
- package/src/elements/EFMedia/shared/GlobalInputCache.ts +77 -0
- package/src/elements/EFMedia/shared/RenditionHelpers.browsertest.ts +2 -2
- package/src/elements/EFMedia/shared/RenditionHelpers.ts +2 -2
- package/src/elements/EFMedia/shared/ThumbnailExtractor.ts +227 -0
- package/src/elements/EFMedia/tasks/makeMediaEngineTask.ts +1 -1
- package/src/elements/EFMedia.ts +38 -1
- package/src/elements/EFSurface.browsertest.ts +155 -0
- package/src/elements/EFSurface.ts +141 -0
- package/src/elements/EFTemporal.ts +14 -8
- package/src/elements/EFThumbnailStrip.browsertest.ts +591 -0
- package/src/elements/EFThumbnailStrip.media-engine.browsertest.ts +713 -0
- package/src/elements/EFThumbnailStrip.ts +905 -0
- package/src/elements/EFTimegroup.browsertest.ts +56 -7
- package/src/elements/EFTimegroup.ts +88 -16
- package/src/elements/updateAnimations.browsertest.ts +333 -11
- package/src/elements/updateAnimations.ts +68 -19
- package/src/gui/ContextMixin.browsertest.ts +0 -25
- package/src/gui/ContextMixin.ts +44 -20
- package/src/gui/EFControls.browsertest.ts +175 -0
- package/src/gui/EFControls.ts +84 -0
- package/src/gui/EFFilmstrip.ts +323 -4
- package/src/gui/EFPreview.ts +2 -1
- package/src/gui/EFScrubber.ts +29 -25
- package/src/gui/EFTimeDisplay.browsertest.ts +237 -0
- package/src/gui/EFTimeDisplay.ts +12 -40
- package/src/gui/currentTimeContext.ts +5 -0
- package/src/gui/durationContext.ts +3 -0
- package/src/transcoding/types/index.ts +13 -0
- package/src/utils/LRUCache.test.ts +272 -0
- package/src/utils/LRUCache.ts +543 -0
- package/test/__cache__/GET__api_v1_transcode_high_1_m4s_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__26197f6f7c46cacb0a71134131c3f775/data.bin +0 -0
- package/test/__cache__/GET__api_v1_transcode_high_1_m4s_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__26197f6f7c46cacb0a71134131c3f775/metadata.json +1 -1
- package/test/__cache__/GET__api_v1_transcode_high_2_m4s_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__4cb6774cd3650ccf59c8f8dc6678c0b9/data.bin +0 -0
- package/test/__cache__/GET__api_v1_transcode_high_2_m4s_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__4cb6774cd3650ccf59c8f8dc6678c0b9/metadata.json +1 -1
- package/test/__cache__/GET__api_v1_transcode_high_3_m4s_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__0b3b2b1c8933f7fcf8a9ecaa88d58b41/data.bin +0 -0
- package/test/__cache__/GET__api_v1_transcode_high_3_m4s_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__0b3b2b1c8933f7fcf8a9ecaa88d58b41/metadata.json +1 -1
- package/test/__cache__/GET__api_v1_transcode_high_4_m4s_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__a6fb05a22b18d850f7f2950bbcdbdeed/data.bin +0 -0
- package/test/__cache__/GET__api_v1_transcode_high_4_m4s_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__a6fb05a22b18d850f7f2950bbcdbdeed/metadata.json +1 -1
- package/test/__cache__/GET__api_v1_transcode_high_5_m4s_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__a50058c7c3602e90879fe3428ed891f4/data.bin +0 -0
- package/test/__cache__/GET__api_v1_transcode_high_5_m4s_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__a50058c7c3602e90879fe3428ed891f4/metadata.json +1 -1
- package/test/__cache__/GET__api_v1_transcode_high_init_m4s_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__0798c479b44aaeef850609a430f6e613/data.bin +0 -0
- package/test/__cache__/GET__api_v1_transcode_manifest_json_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__3be92a0437de726b431ed5af2369158a/data.bin +1 -1
- package/test/__cache__/GET__api_v1_transcode_manifest_json_url_http_3A_2F_2Fweb_3A3000_2Fhead_moov_480p_mp4__3be92a0437de726b431ed5af2369158a/metadata.json +1 -1
- package/types.json +1 -1
- package/dist/transcoding/cache/CacheManager.d.ts +0 -73
- package/src/transcoding/cache/CacheManager.ts +0 -208
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { CacheStats, ManifestResponse, VideoMetadata } from '../types/index.js';
|
|
2
|
-
export declare class CacheManager {
|
|
3
|
-
private maxSize;
|
|
4
|
-
private segmentCache;
|
|
5
|
-
private metadataCache;
|
|
6
|
-
private manifestCache;
|
|
7
|
-
private initSegmentCache;
|
|
8
|
-
private cacheAccessOrder;
|
|
9
|
-
private cacheHits;
|
|
10
|
-
private cacheMisses;
|
|
11
|
-
private totalRequests;
|
|
12
|
-
constructor(maxSize: number);
|
|
13
|
-
/**
|
|
14
|
-
* Cache a segment with LRU eviction
|
|
15
|
-
*/
|
|
16
|
-
cacheSegment(cacheKey: string, buffer: ArrayBuffer): void;
|
|
17
|
-
/**
|
|
18
|
-
* Get a segment from cache
|
|
19
|
-
*/
|
|
20
|
-
getSegment(cacheKey: string): ArrayBuffer | undefined;
|
|
21
|
-
/**
|
|
22
|
-
* Check if a segment exists in cache
|
|
23
|
-
*/
|
|
24
|
-
hasSegment(cacheKey: string): boolean;
|
|
25
|
-
/**
|
|
26
|
-
* Cache metadata
|
|
27
|
-
*/
|
|
28
|
-
cacheMetadata(url: string, metadata: VideoMetadata): void;
|
|
29
|
-
/**
|
|
30
|
-
* Get metadata from cache
|
|
31
|
-
*/
|
|
32
|
-
getMetadata(url: string): VideoMetadata | undefined;
|
|
33
|
-
/**
|
|
34
|
-
* Cache manifest
|
|
35
|
-
*/
|
|
36
|
-
cacheManifest(url: string, manifest: ManifestResponse): void;
|
|
37
|
-
/**
|
|
38
|
-
* Get manifest from cache
|
|
39
|
-
*/
|
|
40
|
-
getManifest(url: string): ManifestResponse | undefined;
|
|
41
|
-
/**
|
|
42
|
-
* Cache init segment
|
|
43
|
-
*/
|
|
44
|
-
cacheInitSegment(cacheKey: string, buffer: ArrayBuffer): void;
|
|
45
|
-
/**
|
|
46
|
-
* Get init segment from cache
|
|
47
|
-
*/
|
|
48
|
-
getInitSegment(cacheKey: string): ArrayBuffer | undefined;
|
|
49
|
-
/**
|
|
50
|
-
* Get comprehensive cache statistics
|
|
51
|
-
*/
|
|
52
|
-
getCacheStats(): CacheStats;
|
|
53
|
-
/**
|
|
54
|
-
* Clear all caches
|
|
55
|
-
*/
|
|
56
|
-
clearAll(): void;
|
|
57
|
-
/**
|
|
58
|
-
* Get cache sizes for each cache type
|
|
59
|
-
*/
|
|
60
|
-
getCacheSizes(): {
|
|
61
|
-
segments: number;
|
|
62
|
-
metadata: number;
|
|
63
|
-
manifests: number;
|
|
64
|
-
initSegments: number;
|
|
65
|
-
};
|
|
66
|
-
/**
|
|
67
|
-
* Clear specific cache type
|
|
68
|
-
*/
|
|
69
|
-
clearSegmentCache(): void;
|
|
70
|
-
clearMetadataCache(): void;
|
|
71
|
-
clearManifestCache(): void;
|
|
72
|
-
clearInitSegmentCache(): void;
|
|
73
|
-
}
|
|
@@ -1,208 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Cache manager for handling multiple cache types with LRU eviction and statistics
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import type {
|
|
6
|
-
CacheStats,
|
|
7
|
-
ManifestResponse,
|
|
8
|
-
VideoMetadata,
|
|
9
|
-
} from "../types/index.js";
|
|
10
|
-
|
|
11
|
-
export class CacheManager {
|
|
12
|
-
private segmentCache = new Map<string, ArrayBuffer>();
|
|
13
|
-
private metadataCache = new Map<string, VideoMetadata>();
|
|
14
|
-
private manifestCache = new Map<string, ManifestResponse>();
|
|
15
|
-
private initSegmentCache = new Map<string, ArrayBuffer>();
|
|
16
|
-
private cacheAccessOrder: string[] = [];
|
|
17
|
-
|
|
18
|
-
// Cache performance tracking
|
|
19
|
-
private cacheHits = 0;
|
|
20
|
-
private cacheMisses = 0;
|
|
21
|
-
private totalRequests = 0;
|
|
22
|
-
|
|
23
|
-
constructor(private maxSize: number) {}
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Cache a segment with LRU eviction
|
|
27
|
-
*/
|
|
28
|
-
cacheSegment(cacheKey: string, buffer: ArrayBuffer): void {
|
|
29
|
-
// Implement LRU eviction
|
|
30
|
-
if (this.segmentCache.size >= this.maxSize) {
|
|
31
|
-
const firstKey = this.segmentCache.keys().next().value;
|
|
32
|
-
if (firstKey) {
|
|
33
|
-
this.segmentCache.delete(firstKey);
|
|
34
|
-
// Remove from access order tracking
|
|
35
|
-
const index = this.cacheAccessOrder.indexOf(firstKey);
|
|
36
|
-
if (index > -1) {
|
|
37
|
-
this.cacheAccessOrder.splice(index, 1);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
this.segmentCache.set(cacheKey, buffer);
|
|
43
|
-
|
|
44
|
-
// Track access order for LRU analytics
|
|
45
|
-
const existingIndex = this.cacheAccessOrder.indexOf(cacheKey);
|
|
46
|
-
if (existingIndex > -1) {
|
|
47
|
-
this.cacheAccessOrder.splice(existingIndex, 1);
|
|
48
|
-
}
|
|
49
|
-
this.cacheAccessOrder.push(cacheKey);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Get a segment from cache
|
|
54
|
-
*/
|
|
55
|
-
getSegment(cacheKey: string): ArrayBuffer | undefined {
|
|
56
|
-
const cached = this.segmentCache.get(cacheKey);
|
|
57
|
-
if (cached) {
|
|
58
|
-
this.cacheHits++;
|
|
59
|
-
// Update access order for LRU
|
|
60
|
-
const index = this.cacheAccessOrder.indexOf(cacheKey);
|
|
61
|
-
if (index > -1) {
|
|
62
|
-
this.cacheAccessOrder.splice(index, 1);
|
|
63
|
-
this.cacheAccessOrder.push(cacheKey);
|
|
64
|
-
}
|
|
65
|
-
return cached;
|
|
66
|
-
}
|
|
67
|
-
this.cacheMisses++;
|
|
68
|
-
return undefined;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Check if a segment exists in cache
|
|
73
|
-
*/
|
|
74
|
-
hasSegment(cacheKey: string): boolean {
|
|
75
|
-
return this.segmentCache.has(cacheKey);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* Cache metadata
|
|
80
|
-
*/
|
|
81
|
-
cacheMetadata(url: string, metadata: VideoMetadata): void {
|
|
82
|
-
this.metadataCache.set(url, metadata);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* Get metadata from cache
|
|
87
|
-
*/
|
|
88
|
-
getMetadata(url: string): VideoMetadata | undefined {
|
|
89
|
-
const cached = this.metadataCache.get(url);
|
|
90
|
-
if (cached) {
|
|
91
|
-
this.cacheHits++;
|
|
92
|
-
return cached;
|
|
93
|
-
}
|
|
94
|
-
this.cacheMisses++;
|
|
95
|
-
return undefined;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
/**
|
|
99
|
-
* Cache manifest
|
|
100
|
-
*/
|
|
101
|
-
cacheManifest(url: string, manifest: ManifestResponse): void {
|
|
102
|
-
this.manifestCache.set(url, manifest);
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
/**
|
|
106
|
-
* Get manifest from cache
|
|
107
|
-
*/
|
|
108
|
-
getManifest(url: string): ManifestResponse | undefined {
|
|
109
|
-
const cached = this.manifestCache.get(url);
|
|
110
|
-
if (cached) {
|
|
111
|
-
this.cacheHits++;
|
|
112
|
-
return cached;
|
|
113
|
-
}
|
|
114
|
-
this.cacheMisses++;
|
|
115
|
-
return undefined;
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
/**
|
|
119
|
-
* Cache init segment
|
|
120
|
-
*/
|
|
121
|
-
cacheInitSegment(cacheKey: string, buffer: ArrayBuffer): void {
|
|
122
|
-
this.initSegmentCache.set(cacheKey, buffer);
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
/**
|
|
126
|
-
* Get init segment from cache
|
|
127
|
-
*/
|
|
128
|
-
getInitSegment(cacheKey: string): ArrayBuffer | undefined {
|
|
129
|
-
const cached = this.initSegmentCache.get(cacheKey);
|
|
130
|
-
if (cached) {
|
|
131
|
-
this.cacheHits++;
|
|
132
|
-
return cached;
|
|
133
|
-
}
|
|
134
|
-
this.cacheMisses++;
|
|
135
|
-
return undefined;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
/**
|
|
139
|
-
* Get comprehensive cache statistics
|
|
140
|
-
*/
|
|
141
|
-
getCacheStats(): CacheStats {
|
|
142
|
-
this.totalRequests = this.cacheHits + this.cacheMisses;
|
|
143
|
-
const hitRate =
|
|
144
|
-
this.totalRequests > 0 ? this.cacheHits / this.totalRequests : 0;
|
|
145
|
-
const efficiency =
|
|
146
|
-
this.segmentCache.size > 0 ? this.cacheHits / this.segmentCache.size : 0;
|
|
147
|
-
|
|
148
|
-
return {
|
|
149
|
-
size: this.segmentCache.size,
|
|
150
|
-
maxSize: this.maxSize,
|
|
151
|
-
hitRate: hitRate,
|
|
152
|
-
efficiency: efficiency,
|
|
153
|
-
totalRequests: this.totalRequests,
|
|
154
|
-
recentKeys: this.cacheAccessOrder.slice(-5), // Last 5 accessed keys
|
|
155
|
-
};
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
/**
|
|
159
|
-
* Clear all caches
|
|
160
|
-
*/
|
|
161
|
-
clearAll(): void {
|
|
162
|
-
this.segmentCache.clear();
|
|
163
|
-
this.metadataCache.clear();
|
|
164
|
-
this.manifestCache.clear();
|
|
165
|
-
this.initSegmentCache.clear();
|
|
166
|
-
this.cacheAccessOrder = [];
|
|
167
|
-
this.cacheHits = 0;
|
|
168
|
-
this.cacheMisses = 0;
|
|
169
|
-
this.totalRequests = 0;
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
/**
|
|
173
|
-
* Get cache sizes for each cache type
|
|
174
|
-
*/
|
|
175
|
-
getCacheSizes(): {
|
|
176
|
-
segments: number;
|
|
177
|
-
metadata: number;
|
|
178
|
-
manifests: number;
|
|
179
|
-
initSegments: number;
|
|
180
|
-
} {
|
|
181
|
-
return {
|
|
182
|
-
segments: this.segmentCache.size,
|
|
183
|
-
metadata: this.metadataCache.size,
|
|
184
|
-
manifests: this.manifestCache.size,
|
|
185
|
-
initSegments: this.initSegmentCache.size,
|
|
186
|
-
};
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
/**
|
|
190
|
-
* Clear specific cache type
|
|
191
|
-
*/
|
|
192
|
-
clearSegmentCache(): void {
|
|
193
|
-
this.segmentCache.clear();
|
|
194
|
-
this.cacheAccessOrder = [];
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
clearMetadataCache(): void {
|
|
198
|
-
this.metadataCache.clear();
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
clearManifestCache(): void {
|
|
202
|
-
this.manifestCache.clear();
|
|
203
|
-
}
|
|
204
|
-
|
|
205
|
-
clearInitSegmentCache(): void {
|
|
206
|
-
this.initSegmentCache.clear();
|
|
207
|
-
}
|
|
208
|
-
}
|