@bitmovin/player-web-x 10.2.0-beta.13 → 10.2.0-beta.15

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 (204) hide show
  1. package/bundles/playerx-bitmovin-v8-core.js +2 -2
  2. package/bundles/playerx-bitmovin-v8.js +2 -2
  3. package/bundles/playerx-core.js +2 -2
  4. package/bundles/playerx-dash.js +2 -2
  5. package/bundles/playerx-hls-ts-audio.js +2 -2
  6. package/bundles/playerx-hls.js +2 -2
  7. package/bundles/playerx-playback.js +2 -2
  8. package/bundles/playerx-tv.js +2 -2
  9. package/package.json +1 -1
  10. package/packages/playerx-adaptation.package.js +2 -2
  11. package/packages/playerx-advertising-api.package.js +2 -2
  12. package/packages/playerx-advertising-base.package.js +2 -2
  13. package/packages/playerx-advertising-bitmovin.package.js +2 -2
  14. package/packages/playerx-analytics.package.js +1 -1
  15. package/packages/playerx-bitmovin-advertising-bundle.package.js +2 -2
  16. package/packages/playerx-bitmovin-source-api.package.js +2 -2
  17. package/packages/playerx-bitmovin-ui.package.js +2 -2
  18. package/packages/playerx-bitmovin-v8-core.package.js +2 -2
  19. package/packages/playerx-bitmovin-v8-static-api.package.js +2 -2
  20. package/packages/playerx-bitmovin-video-element-utils.package.js +2 -2
  21. package/packages/playerx-capabilities.package.js +2 -2
  22. package/packages/playerx-container-mp4.package.js +2 -2
  23. package/packages/playerx-container-ts.package.js +2 -2
  24. package/packages/playerx-core.package.js +2 -2
  25. package/packages/playerx-dash-manifest-technology.package.js +2 -2
  26. package/packages/playerx-dash-manifest.package.js +2 -2
  27. package/packages/playerx-dash-parsing.package.js +2 -2
  28. package/packages/playerx-dash-translation.package.js +2 -2
  29. package/packages/playerx-dash.package.js +2 -2
  30. package/packages/playerx-data.package.js +2 -2
  31. package/packages/playerx-event-bus.package.js +1 -1
  32. package/packages/playerx-hls-manifest-technology.package.js +2 -2
  33. package/packages/playerx-hls-manifest.package.js +2 -2
  34. package/packages/playerx-hls-parsing.package.js +2 -2
  35. package/packages/playerx-hls-translation.package.js +2 -2
  36. package/packages/playerx-hls.package.js +2 -2
  37. package/packages/playerx-media-state.package.d.ts +1 -0
  38. package/packages/playerx-media-state.package.js +10 -0
  39. package/packages/playerx-mse-playback.package.js +2 -2
  40. package/packages/playerx-mse-presentation.package.js +2 -2
  41. package/packages/playerx-native-playback.package.js +2 -2
  42. package/packages/playerx-native-presentation.package.js +2 -2
  43. package/packages/playerx-network.package.js +2 -2
  44. package/packages/playerx-no-adaptation.package.js +2 -2
  45. package/packages/playerx-playback-api.package.js +2 -2
  46. package/packages/playerx-playback-technology.package.js +2 -2
  47. package/packages/playerx-playback.package.js +2 -2
  48. package/packages/playerx-player-api.package.js +2 -2
  49. package/packages/playerx-segment-processing.package.js +2 -2
  50. package/packages/playerx-source.package.js +2 -2
  51. package/packages/playerx-sources-api.package.js +2 -2
  52. package/packages/playerx-stream-data-structure.package.js +2 -2
  53. package/packages/playerx-streaming.package.js +1 -1
  54. package/packages/playerx-subtitle-api.package.js +2 -2
  55. package/packages/playerx-subtitle-base.package.js +2 -2
  56. package/packages/playerx-subtitle-format-detection.package.js +1 -1
  57. package/packages/playerx-subtitle-native-renderer.package.js +2 -2
  58. package/packages/playerx-subtitles.package.js +2 -2
  59. package/packages/playerx-trick-play.package.js +2 -2
  60. package/packages/playerx-ts-transmuxer.package.js +2 -2
  61. package/packages/playerx-tv.package.js +1 -1
  62. package/packages/playerx-ui.package.js +2 -2
  63. package/packages/playerx-video-element-controller.package.d.ts +1 -0
  64. package/packages/playerx-video-element-controller.package.js +10 -0
  65. package/packages/playerx-view-mode.package.js +2 -2
  66. package/packages/playerx-web-vtt.package.js +2 -2
  67. package/playerx-framework-utils.js +1 -1
  68. package/types/Types.d.ts +3 -0
  69. package/types/bundles/BitmovinV8.bundle.d.ts +1 -1
  70. package/types/bundles/Dash.bundle.d.ts +1 -1
  71. package/types/bundles/Hls.bundle.d.ts +1 -1
  72. package/types/bundles/HlsTsAudio.bundle.d.ts +1 -1
  73. package/types/bundles/Playback.bundle.d.ts +1 -1
  74. package/types/bundles/Tv.bundle.d.ts +1 -1
  75. package/types/packages/adaptation/AdaptationAlgorithm.d.ts +4 -0
  76. package/types/packages/adaptation/StartupQuality.d.ts +5 -0
  77. package/types/packages/adaptation/Types.d.ts +7 -11
  78. package/types/packages/adaptation/WishDataAtom.d.ts +9 -2
  79. package/types/packages/advertising/BitmovinAdvertisingBundle.package.d.ts +1 -1
  80. package/types/packages/advertising/api/AdvertisingApi.package.d.ts +1 -1
  81. package/types/packages/advertising/api/AdvertisingEvents.d.ts +45 -6
  82. package/types/packages/advertising/api/Types.d.ts +110 -11
  83. package/types/packages/advertising/api/api-conversion/AdApiCache.d.ts +14 -0
  84. package/types/packages/advertising/api/content-source/AdBreakAtom.d.ts +19 -0
  85. package/types/packages/advertising/api/content-source/Types.d.ts +36 -0
  86. package/types/packages/advertising/base/AdExtension.d.ts +11 -0
  87. package/types/packages/advertising/base/AdIconAtom.d.ts +20 -0
  88. package/types/packages/advertising/base/AdIconPosition.d.ts +8 -0
  89. package/types/packages/advertising/base/AdPosition.d.ts +1 -0
  90. package/types/packages/advertising/base/AdQuartile.d.ts +5 -0
  91. package/types/packages/advertising/base/AdResource.d.ts +16 -0
  92. package/types/packages/advertising/base/AdSchedule.d.ts +2 -2
  93. package/types/packages/advertising/base/AdTagAtom.d.ts +1 -1
  94. package/types/packages/advertising/base/AdType.d.ts +4 -0
  95. package/types/packages/advertising/base/BaseAdAtom.d.ts +27 -5
  96. package/types/packages/advertising/base/{BaseAdBreakAtom.d.ts → BaseAdPodAtom.d.ts} +8 -6
  97. package/types/packages/advertising/base/BaseAdPodState.d.ts +7 -0
  98. package/types/packages/advertising/base/BaseAdState.d.ts +7 -0
  99. package/types/packages/advertising/base/ClickThroughAtom.d.ts +11 -0
  100. package/types/packages/advertising/base/CompanionAdAtom.d.ts +18 -0
  101. package/types/packages/advertising/base/Types.d.ts +19 -29
  102. package/types/packages/advertising/bitmovin/Types.d.ts +17 -10
  103. package/types/packages/capabilities/Types.d.ts +1 -1
  104. package/types/packages/container/container-mp4/ContainerMp4.package.d.ts +2 -0
  105. package/types/packages/container/container-ts/ContainerTs.package.d.ts +3 -1
  106. package/types/packages/container/ts-transmuxer/TsTransmuxer.package.d.ts +2 -0
  107. package/types/packages/core/Constants.d.ts +7 -0
  108. package/types/packages/core/Types.d.ts +3 -2
  109. package/types/packages/core/metrics/MetricsAtom.d.ts +1 -1
  110. package/types/packages/{adaptation → core/state}/RingBufferAtom.d.ts +2 -2
  111. package/types/packages/core/state/StateMachineAtom.d.ts +13 -12
  112. package/types/packages/core/state/state-effect/Types.d.ts +2 -2
  113. package/types/packages/core/technology/Types.d.ts +2 -2
  114. package/types/packages/data/Types.d.ts +7 -1
  115. package/types/packages/manifest/dash/parsing/Errors.d.ts +1 -1
  116. package/types/packages/manifest/dash/root/Types.d.ts +3 -1
  117. package/types/packages/manifest/dash/technology/Types.d.ts +2 -1
  118. package/types/packages/manifest/hls/parsing/Constants.d.ts +47 -0
  119. package/types/packages/manifest/hls/parsing/Errors.d.ts +1 -1
  120. package/types/packages/manifest/hls/parsing/Types.d.ts +5 -48
  121. package/types/packages/manifest/hls/parsing/m3u8/TranslatorStream.d.ts +1 -0
  122. package/types/packages/manifest/hls/root/Hls.package.d.ts +6 -1
  123. package/types/packages/manifest/hls/technology/Types.d.ts +2 -1
  124. package/types/packages/manifest/hls/translation/HlsTranslation.package.d.ts +5 -0
  125. package/types/packages/manifest/hls/translation/Types.d.ts +10 -11
  126. package/types/packages/manifest/hls/translation/segments/StreamHelpers.d.ts +14 -0
  127. package/types/packages/manifest/hls/translation/stream/TracksToSelectionGroups.d.ts +6 -0
  128. package/types/packages/manifest/hls/translation/stream/UnknownTrackToMediaTrackTranslator.d.ts +4 -0
  129. package/types/packages/media-state/MediaInfoAtoms.d.ts +18 -0
  130. package/types/packages/media-state/MediaState.d.ts +10 -0
  131. package/types/packages/media-state/MediaState.package.d.ts +22 -0
  132. package/types/packages/media-state/MediaStateAtom.d.ts +16 -0
  133. package/types/packages/media-state/MediaStateTransitionType.d.ts +11 -0
  134. package/types/packages/media-state/SeekRestrictionAtom.d.ts +2 -0
  135. package/types/packages/media-state/Types.d.ts +48 -0
  136. package/types/packages/media-state/controllers/video-element/Types.d.ts +32 -0
  137. package/types/packages/media-state/controllers/video-element/VideoElementController.package.d.ts +15 -0
  138. package/types/packages/network/HttpRequestMethod.d.ts +5 -0
  139. package/types/packages/network/HttpRequestType.d.ts +11 -0
  140. package/types/packages/network/HttpResponseType.d.ts +7 -0
  141. package/types/packages/network/NetworkAtom.d.ts +15 -0
  142. package/types/packages/network/NetworkTask.d.ts +8 -7
  143. package/types/packages/network/Types.d.ts +17 -26
  144. package/types/packages/playback/play-pause/Types.d.ts +0 -3
  145. package/types/packages/playback/volume/Types.d.ts +2 -4
  146. package/types/packages/playback-api/play-pause-api/Types.d.ts +4 -3
  147. package/types/packages/playback-api/playback-api-events/Types.d.ts +11 -8
  148. package/types/packages/playback-api/time-api/Types.d.ts +4 -5
  149. package/types/packages/playback-technology/PlaybackTechnologyEntryType.d.ts +4 -0
  150. package/types/packages/playback-technology/Types.d.ts +6 -6
  151. package/types/packages/player-api/PlayerApi.package.d.ts +2 -0
  152. package/types/packages/player-api/PlayerEvent.d.ts +3 -0
  153. package/types/packages/player-api/Types.d.ts +4 -4
  154. package/types/packages/presentation/mse/playback-technology/Types.d.ts +2 -1
  155. package/types/packages/presentation/mse/playback-technology/atoms/MsePresentationStateAtom.d.ts +1 -4
  156. package/types/packages/presentation/mse/presentation/MsePresentation.package.d.ts +4 -2
  157. package/types/packages/presentation/mse/presentation/Types.d.ts +6 -0
  158. package/types/packages/presentation/native/NativePlayback.package.d.ts +1 -2
  159. package/types/packages/presentation/native/playback-technology/Types.d.ts +2 -1
  160. package/types/packages/segment-processing/SegmentProcessing.package.d.ts +2 -1
  161. package/types/packages/segment-processing/SegmentProcessorType.d.ts +7 -0
  162. package/types/packages/segment-processing/Types.d.ts +10 -10
  163. package/types/packages/source/SourceReference.d.ts +1 -1
  164. package/types/packages/source/atoms/PlaybackConfigAtom.d.ts +2 -2
  165. package/types/packages/source/atoms/SourceConfigAtom.d.ts +2 -0
  166. package/types/packages/sources-api/SourcesApiEvent.d.ts +7 -0
  167. package/types/packages/sources-api/Types.d.ts +4 -8
  168. package/types/packages/stream-data-structure/Types.d.ts +1 -0
  169. package/types/packages/stream-data-structure/segment/Exports.d.ts +3 -3
  170. package/types/packages/stream-data-structure/segment/SegmentAtom.d.ts +11 -2
  171. package/types/packages/stream-data-structure/segment/SegmentDataAtom.d.ts +1 -7
  172. package/types/packages/stream-data-structure/segment/SegmentUtils.d.ts +3 -2
  173. package/types/packages/stream-data-structure/selection-group/SelectionGroupAtom.d.ts +1 -2
  174. package/types/packages/stream-data-structure/track/Exports.d.ts +6 -1
  175. package/types/packages/stream-data-structure/track/TrackAtom.d.ts +19 -4
  176. package/types/packages/stream-data-structure/track/TrackTypeGuards.d.ts +3 -1
  177. package/types/packages/stream-data-structure/track/TypeDetection.d.ts +25 -0
  178. package/types/packages/stream-data-structure/track/TypeDetectionTypeGuards.d.ts +4 -0
  179. package/types/packages/streaming/Streaming.package.d.ts +2 -2
  180. package/types/packages/streaming/Types.d.ts +3 -2
  181. package/types/packages/subtitles/subtitle-api/SubtitleEvent.d.ts +9 -0
  182. package/types/packages/subtitles/subtitle-api/Types.d.ts +3 -9
  183. package/types/packages/trick-play/TrickPlay.package.d.ts +2 -1
  184. package/types/packages/v8-compat/BitmovinUi.package.d.ts +4 -4
  185. package/types/packages/v8-compat/BitmovinV8Core.package.d.ts +16 -4
  186. package/types/packages/v8-compat/BitmovinV8StaticApi.package.d.ts +8 -5
  187. package/types/packages/v8-compat/apis/SourceApis.d.ts +5 -0
  188. package/types/packages/v8-compat/apis/SubtitleApi.d.ts +5 -0
  189. package/types/packages/v8-compat/enums/AdditionalPlayerExportNames.d.ts +9 -0
  190. package/types/packages/v8-compat/enums/PlayerExports.d.ts +0 -7
  191. package/types/packages/v8-compat/event-handling/EventDispatcher.d.ts +11 -0
  192. package/types/packages/v8-compat/source-api/BitmovinSourceApi.package.d.ts +10 -4
  193. package/types/packages/v8-compat/video-element/BitmovinVideoElementUtils.package.d.ts +4 -4
  194. package/types/packages/view-mode/Types.d.ts +4 -6
  195. package/types/packages/view-mode/ViewMode.d.ts +5 -0
  196. package/types/packages/view-mode/ViewMode.package.d.ts +2 -0
  197. package/types/packages/view-mode/ViewModeAtom.d.ts +1 -1
  198. package/types/packages/core/FrameworkError.d.ts +0 -4
  199. package/types/packages/core/network/NetworkAtom.d.ts +0 -21
  200. package/types/packages/playback/playback-state/Types.d.ts +0 -41
  201. package/types/packages/playback/video-element-state/SeekRestrictionAtom.d.ts +0 -2
  202. package/types/packages/playback/video-element-state/Types.d.ts +0 -32
  203. package/types/packages/playback/video-element-state/VideoElementStateAtom.d.ts +0 -58
  204. package/types/packages/presentation/native/Types.d.ts +0 -12
@@ -4,8 +4,6 @@ import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../../core/Ty
4
4
  import type { SourceStateAtom } from '../../source/atoms/SourceStateAtom';
5
5
  import type { SourceExportNames } from '../../source/Types';
6
6
  import type { ContextWithState } from '../../Types';
7
- import type { VideoElementStateExportNames } from '../video-element-state/Types';
8
- import type { VideoElementStateAtom } from '../video-element-state/VideoElementStateAtom';
9
7
  import type { TargetPlaybackState, TargetPlaybackStateAtom } from './TargetPlaybackStateAtom';
10
8
  export declare enum PlayPauseExportNames {
11
9
  TargetPlaybackStateAtom = "target-playback-state-atom",
@@ -15,7 +13,6 @@ export type PlayPausePackageDependencies = {
15
13
  [SourceExportNames.SourceState]: SourceStateAtom;
16
14
  [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
17
15
  [CoreExportNames.CoreEffects]: CoreEffects;
18
- [VideoElementStateExportNames.VideoElementState]: VideoElementStateAtom;
19
16
  };
20
17
  export type PlayPausePackageApi = EmptyObject;
21
18
  export type PlayPausePackageExports = {
@@ -3,17 +3,15 @@ import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../../core/Ty
3
3
  import type { SourceStateAtom } from '../../source/atoms/SourceStateAtom';
4
4
  import type { SourceExportNames } from '../../source/Types';
5
5
  import type { ContextWithState } from '../../Types';
6
- import type { VideoElementStateExportNames } from '../video-element-state/Types';
7
- import type { VideoElementStateAtom } from '../video-element-state/VideoElementStateAtom';
8
6
  import type { TargetVolumeStateAtom } from './TargetVolumeStateAtom';
9
7
  export declare const TargetVolumeState = "target-volume-state";
10
- export type VolumePackageExports = {
8
+ export type TargetVolumeState = {
11
9
  [TargetVolumeState]: TargetVolumeStateAtom;
12
10
  };
11
+ export type VolumePackageExports = TargetVolumeState;
13
12
  export type VolumePackageDependencies = {
14
13
  [CoreExportNames.CoreEffects]: CoreEffects;
15
14
  [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
16
15
  [SourceExportNames.SourceState]: SourceStateAtom;
17
- [VideoElementStateExportNames.VideoElementState]: VideoElementStateAtom;
18
16
  };
19
17
  export type VolumePackageContext = ContextHaving<VolumePackageDependencies, VolumePackageExports, ContextWithState>;
@@ -2,10 +2,10 @@ import type { ApiManager } from '../../../../framework-types/api-manager/ApiMana
2
2
  import type { EmptyObject } from '../../../../framework-types/BaseTypes';
3
3
  import type { ContextHaving } from '../../../../framework-types/execution-context/Types';
4
4
  import type { CoreEffects, CoreExportNames } from '../../core/Types';
5
+ import type { MediaStateAtom } from '../../media-state/MediaStateAtom';
6
+ import type { MediaState, MediaStateExportNames } from '../../media-state/Types';
5
7
  import type { TargetPlaybackState, TargetPlaybackStateAtom } from '../../playback/play-pause/TargetPlaybackStateAtom';
6
8
  import type { PlayPauseExportNames } from '../../playback/play-pause/Types';
7
- import type { VideoElementStateExportNames } from '../../playback/video-element-state/Types';
8
- import type { VideoElementStateAtom } from '../../playback/video-element-state/VideoElementStateAtom';
9
9
  import type { SourcesApiExportNames } from '../../sources-api/Types';
10
10
  import type { ContextWithState } from '../../Types';
11
11
  export type PlayPauseApi = {
@@ -17,7 +17,8 @@ export type PlayPauseApiPackageDependencies = {
17
17
  [PlayPauseExportNames.TargetPlaybackState]: typeof TargetPlaybackState;
18
18
  [PlayPauseExportNames.TargetPlaybackStateAtom]: TargetPlaybackStateAtom;
19
19
  [SourcesApiExportNames.SourceApiManager]: ApiManager<PlayPauseApi>;
20
- [VideoElementStateExportNames.VideoElementState]: VideoElementStateAtom;
20
+ [MediaStateExportNames.MediaStateAtom]: MediaStateAtom;
21
+ [MediaStateExportNames.MediaState]: typeof MediaState;
21
22
  };
22
23
  export type PlayPauseApiPackageExports = EmptyObject;
23
24
  export type PlayPauseApiPackageContext = ContextHaving<PlayPauseApiPackageDependencies, PlayPauseApiPackageExports, ContextWithState>;
@@ -1,11 +1,12 @@
1
1
  import type { ApiManager } from '../../../../framework-types/api-manager/ApiManager';
2
2
  import type { ContextHaving } from '../../../../framework-types/execution-context/Types';
3
- import type { CoreEffects, CoreExportNames } from '../../core/Types';
3
+ import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../../core/Types';
4
+ import type { CoreUtils } from '../../core/utils/Types';
4
5
  import type { extendEventBusTypes } from '../../event-bus/EventBus';
5
6
  import type { EventBus, EventBusExportNames } from '../../event-bus/Types';
6
- import type { PlaybackState, PlaybackStateMachineAtom, PlaybackStatePackageExportNames } from '../../playback/playback-state/Types';
7
- import type { VideoElementStateExportNames } from '../../playback/video-element-state/Types';
8
- import type { VideoElementStateAtom } from '../../playback/video-element-state/VideoElementStateAtom';
7
+ import type { MediaInfo } from '../../media-state/MediaInfoAtoms';
8
+ import type { MediaStateAtom } from '../../media-state/MediaStateAtom';
9
+ import type { MediaState, MediaStateExportNames } from '../../media-state/Types';
9
10
  import type { SourceStateAtom } from '../../source/atoms/SourceStateAtom';
10
11
  import type { SourceExportNames } from '../../source/Types';
11
12
  import type { SourcesApiExportNames } from '../../sources-api/Types';
@@ -13,13 +14,15 @@ import type { ContextWithState } from '../../Types';
13
14
  import type { PlaybackEvent, PlaybackEventMap } from './events/PlaybackEventMap';
14
15
  export type PlaybackApiEventsPackageDependencies = {
15
16
  [CoreExportNames.CoreEffects]: CoreEffects;
17
+ [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
18
+ [CoreExportNames.Utils]: CoreUtils;
16
19
  [EventBusExportNames.ExtendEventBusTypes]: typeof extendEventBusTypes;
17
- [PlaybackStatePackageExportNames.PlaybackState]: typeof PlaybackState;
18
- [PlaybackStatePackageExportNames.PlaybackStateMachine]: PlaybackStateMachineAtom;
20
+ [MediaStateExportNames.MediaStateAtom]: MediaStateAtom;
21
+ [MediaStateExportNames.MediaState]: typeof MediaState;
22
+ [MediaStateExportNames.MediaInfo]: MediaInfo;
19
23
  [SourcesApiExportNames.SourceEventBus]: EventBus<PlaybackEventMap>;
20
24
  [SourcesApiExportNames.SourceApiManager]: ApiManager<PlaybackStateApi>;
21
25
  [SourceExportNames.SourceState]: SourceStateAtom;
22
- [VideoElementStateExportNames.VideoElementState]: VideoElementStateAtom;
23
26
  };
24
27
  export declare enum PlaybackApiEventsPackageExportNames {
25
28
  PlaybackEvent = "playback-event"
@@ -29,5 +32,5 @@ export type PlaybackApiEventsPackageExports = {
29
32
  };
30
33
  export type PlaybackApiEventsPackageContext = ContextHaving<PlaybackApiEventsPackageDependencies, PlaybackApiEventsPackageExports, ContextWithState>;
31
34
  export type PlaybackStateApi = {
32
- readonly state: PlaybackState;
35
+ readonly state: MediaState;
33
36
  };
@@ -3,8 +3,8 @@ import type { ContextHaving } from '../../../../framework-types/execution-contex
3
3
  import type { ArrayAtom } from '../../core/state/ArrayStateAtom';
4
4
  import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../../core/Types';
5
5
  import type { CoreUtils } from '../../core/utils/Types';
6
- import type { VideoElementStateExportNames } from '../../playback/video-element-state/Types';
7
- import type { VideoElementStateAtom } from '../../playback/video-element-state/VideoElementStateAtom';
6
+ import type { MediaInfo } from '../../media-state/MediaInfoAtoms';
7
+ import type { MediaStateExportNames } from '../../media-state/Types';
8
8
  import type { SourceStateAtom } from '../../source/atoms/SourceStateAtom';
9
9
  import type { SourceExportNames } from '../../source/Types';
10
10
  import type { SourcesApiExportNames } from '../../sources-api/Types';
@@ -24,7 +24,7 @@ export type TimeApiPackageDependencies = {
24
24
  [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
25
25
  [CoreExportNames.CoreEffects]: CoreEffects;
26
26
  [CoreExportNames.Utils]: CoreUtils;
27
- [VideoElementStateExportNames.VideoElementState]: VideoElementStateAtom;
27
+ [MediaStateExportNames.MediaInfo]: MediaInfo;
28
28
  [SourceExportNames.SourceState]: SourceStateAtom;
29
29
  [SourcesApiExportNames.SourceApiManager]: ApiManager<TimeApi>;
30
30
  };
@@ -32,5 +32,4 @@ export declare const SeekableRangeProviders = "seekable-range-providers";
32
32
  export type SeekableRangeProviders = {
33
33
  [SeekableRangeProviders]: ArrayAtom<SeekableRangeProviderAtom>;
34
34
  };
35
- export type TimeApiPackageExports = SeekableRangeProviders;
36
- export type TimeApiPackageContext = ContextHaving<TimeApiPackageDependencies, TimeApiPackageExports, ContextWithState>;
35
+ export type TimeApiPackageContext = ContextHaving<TimeApiPackageDependencies, SeekableRangeProviders, ContextWithState>;
@@ -0,0 +1,4 @@
1
+ export declare enum PlaybackTechnologyEntryType {
2
+ Presentation = "presentation",
3
+ Manifest = "manifest"
4
+ }
@@ -9,12 +9,8 @@ import type { Resource } from '../source/atoms/SourceConfigAtom';
9
9
  import type { SourceStateAtom } from '../source/atoms/SourceStateAtom';
10
10
  import type { SourceExportNames } from '../source/Types';
11
11
  import type { ContextWithState } from '../Types';
12
- export declare enum PlaybackTechnologyEntryType {
13
- Presentation = "presentation",
14
- Manifest = "manifest"
15
- }
16
- export declare function isManifestEntry(entry: TechnologyEntry): entry is ManifestTechnologyEntry;
17
- export declare function isPresentationEntry(entry: TechnologyEntry): entry is PresentationTechnologyEntry;
12
+ import type { PlaybackTechnologyEntryType } from './PlaybackTechnologyEntryType';
13
+ export type { PlaybackTechnologyEntryType } from './PlaybackTechnologyEntryType';
18
14
  export interface TechnologyEntryBase<Exports extends AnyRecord = EmptyObject> {
19
15
  type: PlaybackTechnologyEntryType;
20
16
  name: string;
@@ -49,6 +45,10 @@ export interface PlaybackTechnologyComponent {
49
45
  addTechnology: NamedTask<Task<BaseContext, TechnologyEntry<AnyRecord>, void>>;
50
46
  }
51
47
  export declare const PlaybackTechnologyComponent = "playback-technology-component";
48
+ export declare enum PlaybackTechnologyExportNames {
49
+ EntryType = "playback-technology-entry-type"
50
+ }
52
51
  export type PlaybackTechnologyExports = {
53
52
  [PlaybackTechnologyComponent]: PlaybackTechnologyComponent;
53
+ [PlaybackTechnologyExportNames.EntryType]: typeof PlaybackTechnologyEntryType;
54
54
  };
@@ -13,6 +13,7 @@ import type { BaseContext } from '../../../framework-types/Types';
13
13
  import type { createEventBus, extendEventBusTypes } from '../event-bus/EventBus';
14
14
  import type { EventBus } from '../event-bus/Types';
15
15
  import { EventBusExportNames } from '../event-bus/Types';
16
+ import { PlayerEvent } from './PlayerEvent';
16
17
  import type { PlayerApi, PlayerEventMap } from './Types';
17
18
  import { PlayerApiExportNames } from './Types';
18
19
  type PlayerApiDependencies = {
@@ -21,6 +22,7 @@ type PlayerApiDependencies = {
21
22
  };
22
23
  type PlayerApiExports = {
23
24
  [PlayerApiExportNames.PlayerEventBus]: EventBus<PlayerEventMap>;
25
+ [PlayerApiExportNames.PlayerEvent]: typeof PlayerEvent;
24
26
  };
25
27
  export type PlayerApiContext = ContextHaving<PlayerApiDependencies, PlayerApiExports, BaseContext>;
26
28
  declare const PlayerApiPackage: import("../../../framework-types/package-api/Package").Package<PlayerApiDependencies, PlayerApiExports, PlayerApi>;
@@ -0,0 +1,3 @@
1
+ export declare enum PlayerEvent {
2
+ PlayerError = "player-error"
3
+ }
@@ -1,10 +1,10 @@
1
1
  import type { LogLevel, OnLogCallback } from '../../../framework-types/effects/LoggerEffect';
2
2
  import type { EventBus } from '../event-bus/Types';
3
+ import type { PlayerEvent } from './PlayerEvent';
4
+ export type { PlayerEvent } from './PlayerEvent';
3
5
  export declare enum PlayerApiExportNames {
4
- PlayerEventBus = "player-event-bus"
5
- }
6
- export declare enum PlayerEvent {
7
- PlayerError = "player-error"
6
+ PlayerEventBus = "player-event-bus",
7
+ PlayerEvent = "player-event"
8
8
  }
9
9
  export type PlayerErrorEvent = {
10
10
  message: string;
@@ -3,7 +3,7 @@ import type { ContextHaving } from '../../../../../framework-types/execution-con
3
3
  import type { CapabilitiesExportNames, PlatformCapabilities } from '../../../capabilities/Types';
4
4
  import type { Constants } from '../../../core/Constants';
5
5
  import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../../../core/Types';
6
- import type { PlaybackTechnologyComponent, PresentationTechnologyEntry } from '../../../playback-technology/Types';
6
+ import type { PlaybackTechnologyComponent, PlaybackTechnologyEntryType, PlaybackTechnologyExportNames, PresentationTechnologyEntry } from '../../../playback-technology/Types';
7
7
  import type { Resource } from '../../../source/atoms/SourceConfigAtom';
8
8
  import type { ContextWithState } from '../../../Types';
9
9
  import type { MsePresentationStateAtom } from './atoms/MsePresentationStateAtom';
@@ -17,6 +17,7 @@ export interface MsePresentationStateData {
17
17
  export type MsePlaybackTechnologyExports = EmptyObject;
18
18
  export type MsePlaybackTechnologyDependencies = {
19
19
  [PlaybackTechnologyComponent]: PlaybackTechnologyComponent;
20
+ [PlaybackTechnologyExportNames.EntryType]: typeof PlaybackTechnologyEntryType;
20
21
  [CoreExportNames.Constants]: Constants;
21
22
  [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
22
23
  [CoreExportNames.CoreEffects]: CoreEffects;
@@ -1,10 +1,7 @@
1
1
  import type { EmptyObject } from '../../../../../../framework-types/BaseTypes';
2
- import type { ContextHaving } from '../../../../../../framework-types/execution-context/Types';
3
2
  import type { StateAtom } from '../../../../core/state/Types';
4
3
  import type { Resource } from '../../../../source/atoms/SourceConfigAtom';
5
4
  import type { ContextWithState } from '../../../../Types';
6
5
  import type { MsePresentationStateData } from '../Types';
7
6
  export type MsePresentationStateAtom = StateAtom<MsePresentationStateData, EmptyObject>;
8
- type ExtendedContext = ContextHaving<EmptyObject, EmptyObject, ContextWithState>;
9
- export declare function createMsePresentationStateAtom(context: ExtendedContext, resource: Resource): MsePresentationStateAtom;
10
- export {};
7
+ export declare function createMsePresentationStateAtom(context: ContextWithState, resource: Resource): MsePresentationStateAtom;
@@ -18,6 +18,7 @@ import type { NamedTask, Task } from '../../../../../framework-types/task/Types'
18
18
  import type { EmptyObject } from '../../../../Types';
19
19
  import type { PlatformCapabilities } from '../../../capabilities/Types';
20
20
  import { CapabilitiesExportNames } from '../../../capabilities/Types';
21
+ import type { ContainerFormat } from '../../../core/Constants';
21
22
  import type { MapStateAtom } from '../../../core/state/MapStateAtom';
22
23
  import type { StoreEffectFactory } from '../../../core/state/StoreEffectFactory';
23
24
  import type { StreamTimelineAtom } from '../../../core/state/stream-timeline/StreamTimelineMapAtom';
@@ -28,13 +29,13 @@ import type { SegmentProcessingComponent, SegmentProcessorContext, SelectContain
28
29
  import { SegmentProcessingExportNames } from '../../../segment-processing/Types';
29
30
  import type { SourceState } from '../../../source/atoms/SourceStateAtom';
30
31
  import { SourceExportNames } from '../../../source/Types';
31
- import type { ContainerFormat } from '../../../stream-data-structure/segment/SegmentDataAtom';
32
32
  import type { SelectionGroupAtom } from '../../../stream-data-structure/selection-group/SelectionGroupAtom';
33
33
  import type { StreamDataStructurePackageExports } from '../../../stream-data-structure/Types';
34
34
  import { StreamingState } from '../../../streaming/Types';
35
35
  import type { ContextWithState } from '../../../Types';
36
36
  import { MsePresentationState } from '../playback-technology/Types';
37
37
  import type { SegmentOutputCache } from './cache/Types';
38
+ import type { SegmentDataLayout } from './Types';
38
39
  import { MsePresentationExportNames } from './Types';
39
40
  type Dependencies = {
40
41
  [SourceExportNames.SourceState]: SourceState;
@@ -49,7 +50,8 @@ export type PresentationExports = {
49
50
  };
50
51
  export type PresentationContext = ContextUsing<[
51
52
  StoreEffectFactory<'segmentDataCache', SegmentOutputCache>,
52
- StoreEffectFactory<'containerFormatMap', MapStateAtom<SelectionGroupAtom, ContainerFormat>>
53
+ StoreEffectFactory<'containerFormatMap', MapStateAtom<SelectionGroupAtom, ContainerFormat>>,
54
+ StoreEffectFactory<'segmentDataLayoutMap', MapStateAtom<SelectionGroupAtom, SegmentDataLayout>>
53
55
  ], ContextHaving<Dependencies, PresentationExports, ContextWithState>>;
54
56
  export declare const MsePresentationPackage: import("../../../../../framework-types/package-api/Package").Package<Dependencies, PresentationExports, EmptyObject>;
55
57
  export default MsePresentationPackage;
@@ -1,3 +1,9 @@
1
+ import type { ContainerFormat, MediaType } from '../../../core/Constants';
1
2
  export declare enum MsePresentationExportNames {
2
3
  SelectContainerFormat = "presentation-select-container-format-task"
3
4
  }
5
+ export type SegmentDataLayoutEntry = {
6
+ containerFormat: ContainerFormat;
7
+ mediaTypes: readonly MediaType[];
8
+ };
9
+ export type SegmentDataLayout = SegmentDataLayoutEntry[];
@@ -1,4 +1,3 @@
1
1
  import type { EmptyObject } from '../../../../framework-types/BaseTypes';
2
- import type { NativePlaybackDependencies } from './Types';
3
- export declare const NativePlaybackPackage: import("../../../../framework-types/package-api/Package").Package<NativePlaybackDependencies, EmptyObject, EmptyObject>;
2
+ export declare const NativePlaybackPackage: import("../../../../framework-types/package-api/Package").Package<EmptyObject, EmptyObject, EmptyObject>;
4
3
  export default NativePlaybackPackage;
@@ -3,7 +3,7 @@ import type { ContextHaving } from '../../../../../framework-types/execution-con
3
3
  import type { CapabilitiesExportNames, PlatformCapabilities } from '../../../capabilities/Types';
4
4
  import type { Constants } from '../../../core/Constants';
5
5
  import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../../../core/Types';
6
- import type { PlaybackTechnologyComponent, PresentationTechnologyEntry } from '../../../playback-technology/Types';
6
+ import type { PlaybackTechnologyComponent, PlaybackTechnologyEntryType, PlaybackTechnologyExportNames, PresentationTechnologyEntry } from '../../../playback-technology/Types';
7
7
  import type { Resource } from '../../../source/atoms/SourceConfigAtom';
8
8
  import type { ContextWithState } from '../../../Types';
9
9
  import type { NativePresentationStateAtom } from './atoms/NativePresentationStateAtom';
@@ -17,6 +17,7 @@ export interface NativePresentationStateData {
17
17
  export type NativePlaybackTechnologyExports = EmptyObject;
18
18
  export type NativePlaybackTechnologyDependencies = {
19
19
  [PlaybackTechnologyComponent]: PlaybackTechnologyComponent;
20
+ [PlaybackTechnologyExportNames.EntryType]: typeof PlaybackTechnologyEntryType;
20
21
  [CoreExportNames.Constants]: Constants;
21
22
  [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
22
23
  [CoreExportNames.CoreEffects]: CoreEffects;
@@ -15,7 +15,8 @@ import type { SourceStateAtom } from '../source/atoms/SourceStateAtom';
15
15
  import { SourceExportNames } from '../source/Types';
16
16
  import Errors from './Errors';
17
17
  import { createSegmentProcessingComponent } from './SegmentProcessingComponent';
18
- import { SegmentProcessingExportNames, SegmentProcessorType } from './Types';
18
+ import { SegmentProcessorType } from './SegmentProcessorType';
19
+ import { SegmentProcessingExportNames } from './Types';
19
20
  export type SegmentProcessingDependencies = {
20
21
  [SourceExportNames.SourceState]: SourceStateAtom;
21
22
  };
@@ -0,0 +1,7 @@
1
+ export declare enum SegmentProcessorType {
2
+ Decryptor = "decryptor",
3
+ Parser = "parser",
4
+ Preprocessor = "preprocessor",
5
+ Transmuxer = "transmuxer",
6
+ Postprocessor = "postprocessor"
7
+ }
@@ -1,7 +1,7 @@
1
1
  import type { ContextHaving, ContextUsing } from '../../../framework-types/execution-context/Types';
2
2
  import type { NamedTask, Task } from '../../../framework-types/task/Types';
3
3
  import type { EmptyObject } from '../../Types';
4
- import type { Constants, MediaType } from '../core/Constants';
4
+ import type { Constants, ContainerFormat, MediaType } from '../core/Constants';
5
5
  import type { EventListenerEffect } from '../core/effects/EventListenerEffectFactory';
6
6
  import type { DataStreamAtom } from '../core/state/data-stream/DataStreamAtom';
7
7
  import type { CoreExportNames, CoreStateAtoms } from '../core/Types';
@@ -9,9 +9,11 @@ import type { Transient } from '../core/utils/StateUtils';
9
9
  import type { CoreUtils } from '../core/utils/Types';
10
10
  import type { StreamDataStructureSegments } from '../stream-data-structure/segment/Exports';
11
11
  import type { SegmentAtom } from '../stream-data-structure/segment/SegmentAtom';
12
- import type { ContainerFormat, SegmentDataAtom } from '../stream-data-structure/segment/SegmentDataAtom';
12
+ import type { SegmentDataAtom } from '../stream-data-structure/segment/SegmentDataAtom';
13
13
  import type { ContextWithState } from '../Types';
14
14
  import type Errors from './Errors';
15
+ import type { SegmentProcessorType } from './SegmentProcessorType';
16
+ export type { SegmentProcessorType } from './SegmentProcessorType';
15
17
  type ProcessorDependencies = {
16
18
  [CoreExportNames.Utils]: CoreUtils;
17
19
  [CoreExportNames.Constants]: Constants;
@@ -29,13 +31,10 @@ export type SegmentProcessorContext = ContextUsing<[
29
31
  export type CodecMap = {
30
32
  [key in MediaType]?: string[];
31
33
  };
32
- export declare enum SegmentProcessorType {
33
- Decryptor = "decryptor",
34
- Parser = "parser",
35
- Preprocessor = "preprocessor",
36
- Transmuxer = "transmuxer",
37
- Postprocessor = "postprocessor"
38
- }
34
+ export type VideoInfo = {
35
+ width: number;
36
+ height: number;
37
+ };
39
38
  type BaseProcessorData<I, O> = {
40
39
  segment: SegmentAtom;
41
40
  input: DataStreamAtom<I>;
@@ -54,6 +53,7 @@ export type SegmentDecryptor = BaseSegmentProcessor<SegmentDecryptorData> & {
54
53
  export type SegmentParserData = BaseProcessorData<Uint8Array, SegmentDataAtom> & {
55
54
  segment: SegmentAtom;
56
55
  codecsExtracted: Transient<CodecMap>;
56
+ videoInfoExtracted: Transient<VideoInfo>;
57
57
  playbackTimeExtracted: Transient<number>;
58
58
  durationExtracted: Transient<number>;
59
59
  };
@@ -90,6 +90,7 @@ export type SegmentProcessingComponentData = BaseProcessorData<Uint8Array, Segme
90
90
  codecsExtracted: Transient<{
91
91
  [key in MediaType]?: string[];
92
92
  }>;
93
+ videoInfoExtracted: Transient<VideoInfo>;
93
94
  playbackTimeExtracted: Transient<number>;
94
95
  durationExtracted: Transient<number>;
95
96
  selectContainerFormat: SelectContainerFormatTask;
@@ -98,4 +99,3 @@ export interface SegmentProcessingComponent {
98
99
  addProcessor(processor: SegmentProcessor): RemoveProcessor;
99
100
  process: NamedTask<Task<SegmentProcessorContext, SegmentProcessingComponentData, void>>;
100
101
  }
101
- export {};
@@ -20,7 +20,7 @@ type ExtendedContext = ContextHaving<{
20
20
  type CreateSourceReferenceParam = {
21
21
  context?: ExtendedContext;
22
22
  sourceConfig: SourceConfig;
23
- sourceOptions?: Partial<SourceOptions>;
23
+ sourceOptions: SourceOptions;
24
24
  sourceErrorHandler?: (error: Error) => boolean;
25
25
  task?: NamedTask<Task<ExtendedContext, void, void>>;
26
26
  sourceId?: string;
@@ -1,8 +1,8 @@
1
1
  import type { PlaybackConfig } from '../../../bundles/Types';
2
2
  import type { ContextWithState } from '../../Types';
3
3
  export type PlaybackConfigAtom = ReturnType<typeof createPlaybackConfigAtom>;
4
- export declare const createPlaybackConfigAtom: (context: ContextWithState, options: PlaybackConfig | undefined) => import("../../core/state/Types").StateAtom<{
5
- autoplay: boolean;
4
+ export declare const createPlaybackConfigAtom: (context: ContextWithState, options: PlaybackConfig) => import("../../core/state/Types").StateAtom<{
6
5
  muted: boolean;
6
+ autoplay: boolean;
7
7
  preventSeeking: boolean;
8
8
  }, {}>;
@@ -1,11 +1,13 @@
1
1
  import type { EmptyObject } from '../../../../framework-types/BaseTypes';
2
2
  import type { ContextHaving } from '../../../../framework-types/execution-context/Types';
3
3
  import type { Constants, ContentType, ResourceType } from '../../core/Constants';
4
+ import type { CoreStateAtoms } from '../../core/Types';
4
5
  import { CoreExportNames } from '../../core/Types';
5
6
  import type { ContextWithState } from '../../Types';
6
7
  export type SourceConfigAtom = ReturnType<typeof createSourceConfigAtom>;
7
8
  type ExtendedContext = ContextHaving<{
8
9
  [CoreExportNames.Constants]: Constants;
10
+ [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
9
11
  }, EmptyObject, ContextWithState>;
10
12
  export interface Resource {
11
13
  url: string;
@@ -0,0 +1,7 @@
1
+ export declare enum SourcesApiEvent {
2
+ SourceAdded = "source-added",
3
+ SourceRemoved = "source-removed",
4
+ VideoAttached = "video-attached",
5
+ VideoDetached = "video-detached",
6
+ SourceError = "source-error"
7
+ }
@@ -3,6 +3,7 @@ import type { EmptyObject } from '../../../framework-types/BaseTypes';
3
3
  import type { LogLevel } from '../../../framework-types/effects/LoggerEffect';
4
4
  import type { ContextHaving } from '../../../framework-types/execution-context/Types';
5
5
  import type { BundleExportNames, PlayerConfig } from '../../bundles/Types';
6
+ import type { DeepPartial } from '../../Types';
6
7
  import type { Constants, LoadControl } from '../core/Constants';
7
8
  import type { MapStateAtom } from '../core/state/MapStateAtom';
8
9
  import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../core/Types';
@@ -18,7 +19,9 @@ import type { StreamDataStructurePackageExports } from '../stream-data-structure
18
19
  import type { StreamingPackageExports } from '../streaming/Types';
19
20
  import type { ContextWithState } from '../Types';
20
21
  import type { SourceRemovedError } from './SourceRemovedError';
22
+ import type { SourcesApiEvent } from './SourcesApiEvent';
21
23
  import type VideoElementUtils from './VideoElementUtils';
24
+ export type { SourcesApiEvent } from './SourcesApiEvent';
22
25
  export interface SourcesApiObject<SourceApi extends EmptyObject> {
23
26
  list(): SourceApi[];
24
27
  add(config: SourceConfig, options?: SourceOptionsWithAttach, insertAt?: number): SourceApi;
@@ -26,20 +29,13 @@ export interface SourcesApiObject<SourceApi extends EmptyObject> {
26
29
  attachVideo(source: SourceApi, options?: AttachOptions): void;
27
30
  detachVideo(source: SourceApi): void;
28
31
  }
29
- export type SourceOptionsWithAttach = Partial<SourceOptions> & {
32
+ export type SourceOptionsWithAttach = DeepPartial<SourceOptions> & {
30
33
  attach?: boolean | AttachOptions;
31
34
  };
32
35
  export interface AttachOptions {
33
36
  video?: HTMLVideoElement;
34
37
  container?: HTMLElement;
35
38
  }
36
- export declare enum SourcesApiEvent {
37
- SourceAdded = "source-added",
38
- SourceRemoved = "source-removed",
39
- VideoAttached = "video-attached",
40
- VideoDetached = "video-detached",
41
- SourceError = "source-error"
42
- }
43
39
  export type SourcesApiEventMap = {
44
40
  [SourcesApiEvent.SourceAdded]: SourceAddedEvent;
45
41
  [SourcesApiEvent.SourceRemoved]: SourceRemovedEvent;
@@ -14,6 +14,7 @@ export type StreamDataStructure = {
14
14
  [StreamDataStructure]: StreamAtom;
15
15
  };
16
16
  export declare const StreamDataStructureExportNames: readonly ["stream-data-structure-segments", "stream-data-structure-selection-groups", "stream-data-structure-tracks", "stream-data-structure-stream"];
17
+ export type StreamDataStructureExportNames = typeof StreamDataStructureExportNames;
17
18
  export type StreamDataStructurePackageExports = StreamDataStructureSegments & StreamDataStructureSelectionGroups & StreamDataStructureTracks & StreamDataStructureStream;
18
19
  export type StreamDataStructureContext = ContextHaving<{
19
20
  [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
@@ -1,12 +1,12 @@
1
- import type { createDataSegmentAtom, createInitSegmentAtom, createSelfInitSegmentAtom, getGapToNextSegment, getReadableSegmentName, getTimeRange } from './SegmentAtom';
2
- import type { ContainerFormat, createSegmentDataAtom } from './SegmentDataAtom';
1
+ import type { createDataSegmentAtom, createInitSegmentAtom, createSelfInitSegmentAtom, getGapToNextSegment, getReadableSegmentName, getTimeRange, SegmentType } from './SegmentAtom';
2
+ import type { createSegmentDataAtom } from './SegmentDataAtom';
3
3
  import type { createSegmentTiming } from './SegmentTimingAtom';
4
4
  import type { isDataOrSelfInitSegment, isDataSegment, isInitSegment } from './SegmentTypeGuards';
5
5
  import type { SegmentUtils } from './SegmentUtils';
6
6
  export declare const StreamDataStructureSegments = "stream-data-structure-segments";
7
7
  export type StreamDataStructureSegments = {
8
8
  [StreamDataStructureSegments]: {
9
- ContainerFormat: typeof ContainerFormat;
9
+ SegmentType: typeof SegmentType;
10
10
  createDataSegmentAtom: typeof createDataSegmentAtom;
11
11
  createInitSegmentAtom: typeof createInitSegmentAtom;
12
12
  createSelfInitSegmentAtom: typeof createSelfInitSegmentAtom;
@@ -9,9 +9,14 @@ import type { SegmentTimingAtom } from './SegmentTimingAtom';
9
9
  export type Metadata = Record<string, any>;
10
10
  export type DataSegmentAtom = StateAtom<DataSegment, typeof BaseSegmentModifiers & {
11
11
  setInitSegment: typeof setInitSegment;
12
+ setTrack: typeof setTrack;
13
+ }>;
14
+ export type InitSegmentAtom = StateAtom<InitSegment, typeof BaseSegmentModifiers & {
15
+ setTrack: typeof setTrack;
16
+ }>;
17
+ export type SelfInitSegmentAtom = StateAtom<SelfInitializingSegment, typeof BaseSegmentModifiers & {
18
+ setTrack: typeof setTrack;
12
19
  }>;
13
- export type InitSegmentAtom = StateAtom<InitSegment, typeof BaseSegmentModifiers>;
14
- export type SelfInitSegmentAtom = StateAtom<SelfInitializingSegment, typeof BaseSegmentModifiers>;
15
20
  export interface ByteRange {
16
21
  start: number;
17
22
  end: number;
@@ -45,17 +50,21 @@ type Segment = InitSegment | DataSegment | SelfInitializingSegment;
45
50
  export type DataOrSelfInitSegmentAtom = DataSegmentAtom | SelfInitSegmentAtom;
46
51
  export type SegmentAtom = InitSegmentAtom | DataSegmentAtom | SelfInitSegmentAtom;
47
52
  declare const setInitSegment: (data: DataSegment, initSegment: InitSegmentAtom) => boolean;
53
+ declare const setTrack: (segment: Segment, track: TrackAtom) => boolean;
48
54
  declare const BaseSegmentModifiers: {
49
55
  setSelectionGroup: (segment: Segment, selectionGroup: SelectionGroupAtom) => boolean;
50
56
  };
51
57
  export declare const createDataSegmentAtom: (context: StreamDataStructureContext, initialData: PartialRequired<DataSegment, 'url' | 'initSegment' | 'segmentTiming' | 'track'>) => StateAtom<DataSegment, {
52
58
  setInitSegment: (data: DataSegment, initSegment: InitSegmentAtom) => boolean;
59
+ setTrack: (segment: Segment, track: TrackAtom) => boolean;
53
60
  setSelectionGroup: (segment: Segment, selectionGroup: SelectionGroupAtom) => boolean;
54
61
  }>;
55
62
  export declare const createInitSegmentAtom: (context: StreamDataStructureContext, initialData: PartialRequired<InitSegment, 'url' | 'track'>) => StateAtom<InitSegment, {
63
+ setTrack: (segment: Segment, track: TrackAtom) => boolean;
56
64
  setSelectionGroup: (segment: Segment, selectionGroup: SelectionGroupAtom) => boolean;
57
65
  }>;
58
66
  export declare const createSelfInitSegmentAtom: (context: StreamDataStructureContext, initialData: PartialRequired<SelfInitializingSegment, 'url' | 'segmentTiming' | 'track'>) => StateAtom<SelfInitializingSegment, {
67
+ setTrack: (segment: Segment, track: TrackAtom) => boolean;
59
68
  setSelectionGroup: (segment: Segment, selectionGroup: SelectionGroupAtom) => boolean;
60
69
  }>;
61
70
  export declare function getReadableSegmentName(segment: SegmentAtom, pathLength?: number): string;
@@ -1,12 +1,6 @@
1
- import type { MediaType } from '../../core/Constants';
1
+ import type { ContainerFormat, MediaType } from '../../core/Constants';
2
2
  import type { DataStreamAtom } from '../../core/state/data-stream/DataStreamAtom';
3
3
  import type { ContextWithState } from '../../Types';
4
- export declare enum ContainerFormat {
5
- MP4 = "mp4",
6
- TS = "mp2t",
7
- WebM = "webm",
8
- Unknown = "unknown"
9
- }
10
4
  export interface Fragment {
11
5
  data: Uint8Array;
12
6
  }
@@ -1,17 +1,18 @@
1
1
  import type { ContextHaving } from '../../../../framework-types/execution-context/Types';
2
2
  import type { EmptyObject } from '../../../Types';
3
+ import type { Constants, ContainerFormat } from '../../core/Constants';
3
4
  import { CoreExportNames } from '../../core/Types';
4
5
  import type { CoreUtils } from '../../core/utils/Types';
5
6
  import type { ContextWithState } from '../../Types';
6
7
  import type { DataOrSelfInitSegmentAtom, SegmentAtom } from './SegmentAtom';
7
- import { ContainerFormat } from './SegmentDataAtom';
8
8
  type ExtendedContext = ContextHaving<{
9
9
  [CoreExportNames.Utils]: CoreUtils;
10
+ [CoreExportNames.Constants]: Constants;
10
11
  }, EmptyObject, ContextWithState>;
11
12
  declare function areSegmentsOverlapping(segments: DataOrSelfInitSegmentAtom[]): boolean;
12
13
  declare function resetData(segment: SegmentAtom, { effects: { state, logger } }: ContextWithState): void;
13
14
  declare function resolveContainerFormatFromUrl(context: ExtendedContext, url: string): ContainerFormat | undefined;
14
- declare function resolveContainerFormatFromExtension(extension: string): ContainerFormat | undefined;
15
+ declare function resolveContainerFormatFromExtension(context: ExtendedContext, extension: string): ContainerFormat | undefined;
15
16
  export declare const SegmentUtils: {
16
17
  areSegmentsOverlapping: typeof areSegmentsOverlapping;
17
18
  resetData: typeof resetData;
@@ -1,6 +1,6 @@
1
1
  import type { ContextHaving } from '../../../../framework-types/execution-context/Types';
2
2
  import type { EmptyObject, PartialRequired } from '../../../Types';
3
- import type { Constants } from '../../core/Constants';
3
+ import type { Constants, ContainerFormat } from '../../core/Constants';
4
4
  import type { ArrayAtom } from '../../core/state/ArrayStateAtom';
5
5
  import type { PrimitiveAtom } from '../../core/state/PrimitiveAtom';
6
6
  import type { StateAtom } from '../../core/state/Types';
@@ -8,7 +8,6 @@ import type { CoreStateAtoms } from '../../core/Types';
8
8
  import { CoreExportNames } from '../../core/Types';
9
9
  import type { CoreUtils } from '../../core/utils/Types';
10
10
  import type { ContextWithState } from '../../Types';
11
- import type { ContainerFormat } from '../segment/SegmentDataAtom';
12
11
  import type { AudioTrackAtom, MediaTrackAtom, SubtitleTrackAtom, TimeRange, TrackAtom, VideoTrackAtom } from '../track/TrackAtom';
13
12
  type ExtendedContext = ContextHaving<{
14
13
  [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
@@ -1,5 +1,6 @@
1
1
  import type { createAudioTrackAtom, createMuxedTrackAtom, createSubtitleTrackAtom, createUnknownTrackAtom, createVideoTrackAtom } from './TrackAtom';
2
- import type { isAudioTrack, isMediaOrSubtitleTrack, isMediaTrack, isMuxedTrack, isSubtitleTrack, isVideoTrack } from './TrackTypeGuards';
2
+ import type { isAudioTrack, isMediaOrSubtitleTrack, isMediaTrack, isMuxedTrack, isSubtitleTrack, isUnknownTrack, isVideoTrack } from './TrackTypeGuards';
3
+ import type { isAudioTypeDetection, isMuxedTypeDetection, isVideoTypeDetection } from './TypeDetectionTypeGuards';
3
4
  export declare const StreamDataStructureTracks = "stream-data-structure-tracks";
4
5
  export type StreamDataStructureTracks = {
5
6
  [StreamDataStructureTracks]: {
@@ -8,11 +9,15 @@ export type StreamDataStructureTracks = {
8
9
  createMuxedTrackAtom: typeof createMuxedTrackAtom;
9
10
  createSubtitleTrackAtom: typeof createSubtitleTrackAtom;
10
11
  createUnknownTrackAtom: typeof createUnknownTrackAtom;
12
+ isUnknownTrack: typeof isUnknownTrack;
11
13
  isAudioTrack: typeof isAudioTrack;
12
14
  isMediaTrack: typeof isMediaTrack;
13
15
  isSubtitleTrack: typeof isSubtitleTrack;
14
16
  isVideoTrack: typeof isVideoTrack;
15
17
  isMuxedTrack: typeof isMuxedTrack;
16
18
  isMediaOrSubtitleTrack: typeof isMediaOrSubtitleTrack;
19
+ isAudioTypeDetection: typeof isAudioTypeDetection;
20
+ isVideoTypeDetection: typeof isVideoTypeDetection;
21
+ isMuxedTypeDetection: typeof isMuxedTypeDetection;
17
22
  };
18
23
  };