aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/assets/player/shared/p2p-media-loader/segment-url-builder.ts
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/assets/player/shared/p2p-media-loader/segment-url-builder.ts')
-rw-r--r--client/src/assets/player/shared/p2p-media-loader/segment-url-builder.ts17
1 files changed, 17 insertions, 0 deletions
diff --git a/client/src/assets/player/shared/p2p-media-loader/segment-url-builder.ts b/client/src/assets/player/shared/p2p-media-loader/segment-url-builder.ts
new file mode 100644
index 000000000..9d324078a
--- /dev/null
+++ b/client/src/assets/player/shared/p2p-media-loader/segment-url-builder.ts
@@ -0,0 +1,17 @@
1import { Segment } from '@peertube/p2p-media-loader-core'
2import { RedundancyUrlManager } from './redundancy-url-manager'
3
4function segmentUrlBuilderFactory (redundancyUrlManager: RedundancyUrlManager, useOriginPriority: number) {
5 return function segmentBuilder (segment: Segment) {
6 // Don't use redundancy for high priority segments
7 if (segment.priority <= useOriginPriority) return segment.url
8
9 return redundancyUrlManager.buildUrl(segment.url)
10 }
11}
12
13// ---------------------------------------------------------------------------
14
15export {
16 segmentUrlBuilderFactory
17}