Files
2025-09-16 19:52:02 +00:00

5.7 KiB

OPTIONS

Детальнее смотри VokaOptions.IOptions

1. Настройки элементов управления (controls)
{
  /**
   * Показывать элементы управления
   * @default false
   */
  isVisible: true,
  zoomButton: {
    /**
     * Показывать кнопку масштабирования видео
     * @default false
     */
    enable: false,

    /**
     * Видимость кнопки масштабирования
     * @default false
     */
    isVisible: false
  },

  selectionButton: {
    /**
     * Включить выбор диапазона на шкале прогресса
     * @default false
     */
    enable: false
  },

  tracks: {
    /**
     * URL к файлу субтитров (также субтитры тянутся из потока)
     * @deprecated Будет удалено/переработано
     * @default null
     */
    url: null,

    /**
     * Трехбуквенный код языка субтитров (например 'eng', 'rus')
     * @default null
     */
    lang: null
  }
}
2. Основные настройки воспроизведения (streamOpts)
/**
 * Настройки потока воспроизведения.
 * Описывает поведение автозапуска, DRM, метрики, heartbeat, внешние субтитры
 * и структуры манифеста (как «сырые» данные, так и результаты парсинга).
 */
interface
IStream
{
  /**
   * Автоматически начинать воспроизведение после загрузки.
   * Может быть булевым значением или строкой 'muted' (для автоплея без звука).
   * @default false
   */
  autoplay: boolean | 'muted' | any

  /**
   * Конфигурация DRM (Widevine / FairPlay / PlayReady).
   * Если null — DRM не используется.
   */
  drmConfig: IDRMConfig | null

  /**
   * Конфигурация метрик (сбор аналитики).
   * Если null — метрики отключены.
   */
  metrics: IMetrics | null

  /**
   * Конфигурация heartbeat (периодические запросы).
   * Если null — heartbeat отключён.
   */
  heartbeat: IHeartbeat | null

  /**
   * Внешние субтитры (загружаемые по URL).
   * Если null — внешние субтитры не используются.
   */
  externalSubtitles: ISubtitle | null

  /**
   * Описание манифеста (список доступных треков видео/аудио).
   * Используется течами для телеков для выбора качеств/треков
   * Если null — манифест не задан.
   */
  manifest: Manifest | null

  /**
   * Результат парсинга манифеста (подробная структура HLS/DASH).
   * Если null — парсинг не выполнялся.
   */
  parsedManifest: IManifestParser | null
}
3. Настройки кодеков (codecs)
codecs: {
  /**
   * Включить поддержку H.264
   * @default true
   */
  h264: true,

  /**
   * Включить поддержку H.265
   * @default false
   */
  h265: false,

  /**
   * Включить поддержку VP9
   * @default false
   */
  vp9: false,

  /**
   * Включить поддержку AV1
   * @default false
   */
  av1: false
}
4. Дополнительные настройки (tweaks)
tweaks: {
  /**
   * Принудительно использовать нативный плеер:
   * 'hls' - для HLS,
   * 'mss' - для MSS
   * @default null
   */
  forceNative: null,

  /**
   * Инициализировать плеер в режиме HLS
   * @default false
   */
  forceHls: false,

  /**
   * Перезагружать live-стрим после возобновления
   * @default false
   */
  resumeReloadsLive: false
}
5. Основные настройки (features)
features: {
  /**
   * Включить API для live-каналов
   * @default false
   */
  api: false,

  /**
   * Включить поддержку DRM (если плеер будет воспроизводить защищенные потоки)
   * @default false
   */
  drm: false,

  /**
   * Включить показ рекламы
   * @default false
   */
  ads: false,

  /**
   * Включить отправку heartbeat-сигналов
   * @default false
   */
  heartbeat: false,

  /**
   * Включить сбор метрик
   * @default false
   */
  metrics: false
}
6. Настройки API (apiConfig)
apiConfig: {
  /**
   * Client ID для API
   * @default null
   */
  clientId: null,

  /**
   * ID канала для API
   * @default null
   */
  channelId: null,

  /**
   * ID фильма для API
   * @default null
   */
  movieId: null,

  /**
   * ID эпизода для API
   * @default null
   */
  episodeId: null,

  /**
   * ID новости для API
   * @default null
   */
  newsId: null,

  /**
   * Хост API
   * @default null
   */
  apiHost: null,

  /**
   * GET-параметры для добавления к URL потока при использовании API
   * @default null
   */
  urlGetParams: null
}
**7. Настройки логирования **
/** Включает детальное логировани, по умолчаниб выключено */
log: false