Skip to content

fb.player 播放控制

play()

开始播放。如果已暂停则恢复播放,已停止则从头开始。返回 {success}

javascript
await fb.player.play();

pause()

暂停播放。返回 {success}

javascript
await fb.player.pause();

stop()

停止播放。返回 {success}

javascript
await fb.player.stop();

next() / prev()

播放下一首/上一首。返回 {success}

javascript
await fb.player.next();
await fb.player.prev();

seek(seconds)

跳转到指定位置。

参数类型说明
secondsnumber目标位置(秒)
javascript
await fb.player.seek(90); // 跳转到 1 分 30 秒

getVolume()

获取当前音量。返回 Promise<{volume, volumeDb, muted}>,其中 volume 范围 0-100。

javascript
const info = await fb.player.getVolume();
console.log(info.volume);   // 0-100
console.log(info.volumeDb); // -100..0 dB
console.log(info.muted);    // boolean

setVolume(volume)

设置音量。

参数类型说明
volumenumber音量百分比 (0-100)
javascript
await fb.player.setVolume(80); // 80%
await fb.player.setVolume(0);  // 静音

mute()

静音。已静音时无操作。如需切换静音,请使用底层 API playback.toggleMute

javascript
await fb.player.mute();

toggle()

切换播放/暂停。返回 {success, isPlaying}

javascript
const r = await fb.player.toggle();
console.log(r.isPlaying ? '正在播放' : '已暂停');

random()

随机播放一曲。返回 {success}

javascript
await fb.player.random();

getState()

获取播放状态。返回 {state, canSeek, canPause}

javascript
const state = await fb.player.getState();
// state.state: 'playing' | 'paused' | 'stopped'

getCurrentTrack()

获取当前播放曲目信息。无正在播放时返回 {success: true, found: false, playing: false}

返回字段类型说明
titlestring曲目标题
artiststring艺术家
albumstring专辑
albumArtiststring专辑艺术家
genrestring流派
datestring日期
trackNumbernumber曲目序号
discNumbernumber光盘序号
durationnumber时长(秒)
pathstringfoobar 原始路径
absolutePathstring规范化本地文件路径(不含 subsong 后缀)
fullPathstring完整路径(含 subsong 后缀,如 file.cue//1)
idstring唯一标识符(path + subsong 组合)
subsongnumber子曲目索引(0 = 普通文件)
fileSizenumber文件大小(字节)
bitratenumber比特率 (kbps)
sampleRatenumber采样率 (Hz)
channelsnumber声道数
codecstring编码格式
javascript
const track = await fb.player.getCurrentTrack();
if (track.found !== false) {
    console.log(`${track.artist} - ${track.title} [${track.codec} ${track.bitrate}kbps]`);
}

getPosition()

获取当前播放位置。返回 {position, duration, subsong, path}

javascript
const pos = await fb.player.getPosition();
console.log(`${pos.position} / ${pos.duration}`);
// pos.subsong — 子曲目索引
// pos.path — 当前播放文件路径

getOrder() / setOrder(order)

获取/设置播放顺序。

名称
0Default
1Repeat (playlist)
2Repeat (track)
3Random
4Shuffle (tracks)
5Shuffle (albums)
6Shuffle (directories)
javascript
const r = await fb.player.getOrder();
console.log(r.order, r.name); // 0, 'Default'
await fb.player.setOrder(2);  // 单曲循环

getStopAfterCurrent() / setStopAfterCurrent(enabled)

获取/设置“当前曲目后停止”状态。

javascript
const r = await fb.player.getStopAfterCurrent();
console.log(r.enabled); // false
await fb.player.setStopAfterCurrent(true);

获取当前播放曲目在播放列表中的索引。返回 {playlist, index, ...}

javascript
const r = await fb.player.getCurrentTrackIndex();
console.log(`播放列表 ${r.playlist},曲目 ${r.index}`);

直接播放指定路径的文件。支持 CUE subsong 格式。

javascript
await fb.player.playPath('E:\\Music\\song.flac');

播放多个文件路径。

参数类型说明
pathsstring[]文件路径数组
startIndexnumber从第几首开始播放(默认 0)

音量增大/减小一档。

javascript
await fb.player.volumeUp();
await fb.player.volumeDown();

SDK 方法 stub

scripts/gen_vitepress_sdk_doc.mjs 生成。该区块用于补齐 SDK 视角方法覆盖,后续可人工扩展为完整示例与最佳实践。

getPlayingPlaylist()

签名:fb.player.getPlayingPlaylist(...args): Promise<unknown>

参数类型必填说明
...argsunknown[]视方法而定透传给 SDK wrapper;详细类型以 sdk/src/bridge/namespaces/ 源码和生成类型为准

返回值:底层 playback.getPlayingPlaylist 调用结果。

javascript
const result = await fb.player.getPlayingPlaylist();

playPause()

签名:fb.player.playPause(...args): Promise<unknown>

参数类型必填说明
...argsunknown[]视方法而定透传给 SDK wrapper;详细类型以 sdk/src/bridge/namespaces/ 源码和生成类型为准

返回值:底层 playback.playPause 调用结果。

javascript
const result = await fb.player.playPause();

toggleMute()

签名:fb.player.toggleMute(...args): Promise<unknown>

参数类型必填说明
...argsunknown[]视方法而定透传给 SDK wrapper;详细类型以 sdk/src/bridge/namespaces/ 源码和生成类型为准

返回值:底层 playback.toggleMute 调用结果。

javascript
const result = await fb.player.toggleMute();

toggleStopAfterCurrent()

签名:fb.player.toggleStopAfterCurrent(...args): Promise<unknown>

参数类型必填说明
...argsunknown[]视方法而定透传给 SDK wrapper;详细类型以 sdk/src/bridge/namespaces/ 源码和生成类型为准

返回值:底层 playback.toggleStopAfterCurrent 调用结果。

javascript
const result = await fb.player.toggleStopAfterCurrent();