Vinyl
    Preparing search index...

    Function createVinylFactories

    • Creates the dependency factories for a standard player.

      Parameters

      Returns NoInfer<
          {
              autoResetController: (
                  deps: AutoResetControllerImplDeps,
              ) => AutoResetControllerImpl;
              capabilities: (deps: CapabilitiesImplDeps) => CapabilitiesImpl;
              commonEme: () => null | CommonEme;
              createDashFactories: (
                  deps: DashFactoryDeps,
              ) => (
                  loadOptions: DashTrackLoadOptions,
              ) => NoInfer<
                  {
                      baseUrlSelector: () => BaseUrlSelector;
                      capabilities: Factory<Capabilities>;
                      contentStreamFactory: (
                          deps: {
                              createContentStreamFactories: (
                                  contentType: ContentType,
                              ) => Factories<ContentStreamImplDeps>;
                          },
                      ) => (contentType: ContentType) => ContentStreamImpl;
                      contentTypesValue: (
                          deps: DashContentTypesValueDeps,
                      ) => ContentTypesValue;
                      createContentStreamFactories: (
                          deps: DashContentStreamTrackDeps,
                      ) => MemoizedFunction & (
                          contentType: ContentType,
                      ) => NoInfer<
                          {
                              baseUrlSelector: ...;
                              bufferingController: ...;
                              manifestTransformed: ...;
                              mediaQualityMetadataResolver: ...;
                              mediaSourceController: ...;
                              playbackController: ...;
                              qualitySelector: ...;
                              requestInterceptor: ...;
                              segmentController: ...;
                              segmentProvider: ...;
                              segmentRequestInit: ...;
                              sourceBufferControllerFactory: ...;
                          },
                      >;
                      drmController: Factory<DrmController>;
                      drmKeySystemResolver: Factory<DrmKeySystemResolver>;
                      manifestController: (
                          deps: DashManifestControllerImplDeps,
                      ) => DashManifestController;
                      manifestProvider: (
                          deps: { requestInterceptor: RequestInterceptor },
                      ) => DashManifestProvider;
                      manifestTransformed: (
                          deps: DashManifestTransformerDeps,
                      ) => ObservableValue<Promise<DashManifestAndPath>>;
                      mediaQualityMetadataResolver: (
                          deps: DashMediaQualityMetadataResolverDeps,
                      ) => DashMediaQualityMetadataResolver;
                      mediaSourceController: (
                          deps: MediaSourceControllerImplDeps,
                      ) => MediaSourceControllerImpl;
                      mediaSourceFactory: () => () => MediaSource;
                      options: Factory<
                          ObservableValue<
                              {
                                  abr: QualitySelectorImplOptions;
                                  preferredLanguage: null
                                  | string;
                              },
                          >,
                      >;
                      playbackController: Factory<PlaybackController>;
                      playbackSource: Factory<PlaybackSource>;
                      qualitySelector: (
                          deps: { options: ObservableValue<Pick<VinylOptions, "abr">> },
                      ) => QualitySelectorImpl;
                      requestInterceptor: Factory<RequestInterceptor>;
                      segmentRequestInit: () => Maybe<Readonly<Omit<RequestInit, "signal">>>;
                  },
              >;
              createHlsFactories: (
                  deps: HlsFactoryDeps,
              ) => (
                  loadOptions: HlsTrackLoadOptions,
              ) => NoInfer<
                  {
                      capabilities: Factory<Capabilities>;
                      contentStreamFactory: (
                          deps: {
                              createContentStreamFactories: (
                                  contentType: ContentType,
                              ) => Factories<ContentStreamImplDeps>;
                          },
                      ) => (contentType: ContentType) => ContentStreamImpl;
                      contentTypesValue: (deps: HlsContentTypesValueDeps) => ContentTypesValue;
                      createContentStreamFactories: (
                          deps: HlsContentStreamTrackDeps,
                      ) => MemoizedFunction & (
                          contentType: ContentType,
                      ) => NoInfer<
                          {
                              bufferingController: ...;
                              manifestTransformed: ...;
                              mediaQualityMetadataResolver: ...;
                              mediaSourceController: ...;
                              playbackController: ...;
                              qualitySelector: ...;
                              requestInterceptor: ...;
                              segmentController: ...;
                              segmentProvider: ...;
                              segmentRequestInit: ...;
                              sourceBufferControllerFactory: ...;
                          },
                      >;
                      drmController: Factory<DrmController>;
                      drmKeySystemResolver: Factory<DrmKeySystemResolver>;
                      manifestController: () => HlsManifestControllerImpl;
                      manifestTransformed: (
                          deps: HlsManifestTransformerDeps,
                      ) => ObservableValue<Promise<HlsManifestData>>;
                      mediaQualityMetadataResolver: () => HlsMediaQualityMetadataResolver;
                      mediaSourceController: (
                          deps: MediaSourceControllerImplDeps,
                      ) => MediaSourceControllerImpl;
                      mediaSourceFactory: () => () => MediaSource;
                      options: Factory<
                          ObservableValue<
                              {
                                  abr: QualitySelectorImplOptions;
                                  preferredLanguage: null
                                  | string;
                              },
                          >,
                      >;
                      playbackController: Factory<PlaybackController>;
                      playbackSource: Factory<PlaybackSource>;
                      qualitySelector: (
                          deps: { options: ObservableValue<Pick<VinylOptions, "abr">> },
                      ) => QualitySelectorImpl;
                      requestInterceptor: Factory<RequestInterceptor>;
                      segmentRequestInit: () => Maybe<Readonly<Omit<RequestInit, "signal">>>;
                  },
              >;
              drmController: (deps: DrmControllerImplDeps) => DrmControllerImpl;
              drmKeySystemResolver: () => DrmKeySystemResolver;
              loudnessNormalizationController: (
                  deps: {
                      options: ObservableValue<Pick<VinylOptions, "loudnessNormalization">>;
                  },
              ) => LoudnessNormalizationControllerImpl;
              media: (
                  deps: { patchedMedia: { patched: HTMLMediaElement } },
              ) => HTMLMediaElement;
              options: (
                  _deps: AnyRecord,
                  add: AddDisposable,
              ) => MutableValue<VinylOptions>;
              patchedMedia: () => PatchedRef<HTMLMediaElement>;
              playbackController: (
                  deps: PlaybackControllerImplDeps,
              ) => PlaybackControllerImpl;
              playbackSource: (deps: PlaybackSourceImplDeps) => PlaybackSourceImpl;
              requestInterceptor: () => (..._: any[]) => void;
              trackController: (
                  deps: TrackControllerImplDeps<any>,
              ) => TrackControllerImpl<any>;
              trackFactory: (
                  deps: VinylTrackFactoryDeps,
              ) => TrackFactory<
                  | DashTrackLoadOptions
                  | SourceObjectTrackLoadOptions
                  | SourceTrackLoadOptions
                  | HlsTrackLoadOptions,
              >;
          },
      >