视频嵌入方式参考 Firefly 的视频示例,在本站封装为 MDC 组件。卡片沿用文章主题,播放器按 16:9 自适应宽度,窄屏保留至少 200 像素高度以容纳控件,接近可视区域时加载,默认不自动播放。

文章与关于页均可使用,不需要 API 密钥,也不需要手写 iframe。标题由 title 填写,不会自动抓取平台上的视频信息。

Bilibili

从视频地址中复制 BV 开头的完整 BV 号,填入 bvid。结束标记 :: 请保留。

源码

md
::bilibili{bvid="BV1acjF68EKJ" title="Bilibili 视频示例"}
::

效果

BilibiliBilibili 视频示例
无法播放时,可前往平台观看 在 Bilibili 观看(在新标签页打开)

也可以直接使用视频页面链接,链接中的 p 和 t 会作为分 P 与开始时间。b23.tv 短链接需要先在浏览器打开,复制跳转后的完整视频地址。

md
::bilibili{src="https://www.bilibili.com/video/BV1acjF68EKJ/" title="Bilibili 视频示例"}
::

多 P 视频使用 p 指定集数,从 1 开始;start 指定开始秒数:

md
::bilibili{bvid="BV1acjF68EKJ" p="2" start="30" title="从第二 P 的 30 秒处开始"}
::

请确认视频包含对应分 P;组件只检查参数格式,不查询视频的集数。

YouTube

将视频链接中 v= 后的 11 位标识填入 id。

源码

md
::youtube{id="5gIf0_xpFPI" title="YouTube 视频示例"}
::

效果

YouTubeYouTube 视频示例
无法播放时,可前往平台观看 在 YouTube 观看(在新标签页打开)

src 也接受 YouTube 视频页面、youtu.be 分享链接、Shorts、直播与嵌入链接。链接的 t 或 start 会保留;也可用组件的 start 显式覆盖。

md
::youtube{src="https://youtu.be/5gIf0_xpFPI?t=1m30s" title="从 1 分 30 秒处开始"}
::

YouTube 使用 youtube-nocookie.com 嵌入地址,支持全屏与画中画,移动端可内联播放。

参数与播放说明

参数适用平台说明
bvidBilibiliBV 号,与 src 二选一
idYouTube11 位视频 ID,与 src 二选一
src两个平台对应平台的完整视频链接
title两个平台卡片标题,默认显示平台名称与“视频”
pBilibili分 P,正整数,默认 1
start两个平台非负整数秒,或 1h2m3s 这样的时分秒写法,默认 0

同时提供 ID 和 src 时,以 ID 为准;显式填写的 p、start 优先于链接参数。分享追踪参数与链接中的自动播放设置不会传入播放器。普通视频链接仍显示为文字链接,不会自动转成卡片。

播放器由视频平台提供,播放取决于网络、视频可用性及平台的嵌入许可。无法播放时,可通过卡片底部的链接在新标签页前往平台观看。无效 ID、链接或参数会显示提示,不影响后续正文。