保利威文档中心

幫助中心

快速入門

更新時間:2026-02-06 15:18:49

一、核心概念

1.1 PlaybackTarget

播放目標物件,包含播放影片的所有資訊:

interface PlaybackTarget {
  playbackId: string; // 回放唯一标识
  title: string; // 回放标题
  duration: number; // 回放时长(毫秒)
  startTime?: number; // 开始时间
  firstImage?: string; // 首帧图片
  playbackOptions: SetupPlayerPlaybackOptions; // 播放器回放参数
  chatReplayEnabled: boolean; // 聊天重放
  chatMsgReplayEnabled: boolean; // 聊天消息重放
  cardPushEnabled: boolean; // 卡片推送重放
  // ... 其他重放功能
}

1.2 PlaybackType

播放類型列舉:

類型 說明
PlaybackType.Record 暫存播放
PlaybackType.Playback 一般播放
PlaybackType.Vod 隨選播放
PlaybackType.Material 素材庫播放

1.3 PlaybackMode

播放方式列舉:

類型 說明
PlaybackMode.Single 單一播放
PlaybackMode.List 列表播放

二、快速開始

2.1 基礎流程

import { createWatchCore, PlaybackMode } from "@polyv/live-watch-sdk";

// 1. 初始化 WatchCore
const watchCore = createWatchCore({
  // 配置参数
});

// 2. 安装 WatchCore
await watchCore.setup();

// 3. 获取回放方式(单个或列表)
const playbackMode = watchCore.playback.getCurrentPlaybackMode();
console.log("回放方式:", playbackMode);

if (playbackMode === PlaybackMode.Single) {
  // 单个回放模式:直接获取单个回放对象
  const playbackTarget = watchCore.playback.getSinglePlaybackTarget();

  if (playbackTarget) {
    // 设置当前回放对象到 SDK
    watchCore.playback.setCurrentPlaybackTarget(playbackTarget);

    // 创建播放器时传入回放选项
    watchCore.player.setupPlayer({
      container: document.getElementById("player"),
      playbackOptions: playbackTarget.playbackOptions,
    });
  }
} else {
  // 列表回放模式:获取回放列表
  const playbackList = await watchCore.playback.getPlaybackList({
    pageNumber: 1,
    pageSize: 10,
  });

  console.log("回放总数:", playbackList.totalElements);

  // 选择第一个回放进行播放
  if (playbackList.contents.length > 0) {
    const firstPlayback = playbackList.contents[0];
    watchCore.playback.setCurrentPlaybackTarget(firstPlayback);

    await watchCore.player.setupPlayer({
      container: document.getElementById("player"),
      playbackOptions: firstPlayback.playbackOptions,
    });
  }
}

2.2 取得指定播放影片

import { PlaybackEvents } from "@polyv/live-watch-sdk";

// ...默认已处理 watchCore 相关逻辑

// 获取指定回放视频
const playbackTarget = await watchCore.playback.getPlaybackTargetById({
  playbackId: "xxx",
});
watchCore.playback.setCurrentPlaybackTarget(playbackTarget);

// 创建播放器时传入回放选项
await watchCore.player.setupPlayer({
  container: document.getElementById("player"),
  playbackOptions: playbackTarget.playbackOptions,
});

// 切换回放
// await watchCore.player.changePlayback(playbackTarget.playbackOptions);
联系客服,在线咨询