Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
80294db4
D
Docs
项目概览
OpenHarmony
/
Docs
1 年多 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
80294db4
编写于
5月 11, 2023
作者:
O
openharmony_ci
提交者:
Gitee
5月 11, 2023
浏览文件
操作
浏览文件
下载
差异文件
!17995 增加直播说明
Merge pull request !17995 from XUXIAOBO/master20230509
上级
afb57f47
99720286
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
7 addition
and
2 deletion
+7
-2
zh-cn/application-dev/media/avplayer-avrecorder-overview.md
zh-cn/application-dev/media/avplayer-avrecorder-overview.md
+1
-0
zh-cn/application-dev/reference/apis/js-apis-media.md
zh-cn/application-dev/reference/apis/js-apis-media.md
+6
-2
未找到文件。
zh-cn/application-dev/media/avplayer-avrecorder-overview.md
浏览文件 @
80294db4
...
...
@@ -59,6 +59,7 @@ AVPlayer提供功能完善一体化播放能力,应用只需要提供流媒体
| -------- | -------- |
| 本地点播 | 协议格式:支持file
descriptor,禁止file
path |
| 网络点播 | 协议格式:支持http/https/hls |
| 网络直播 | 协议格式:支持hls |
支持的音频播放格式如下:
...
...
zh-cn/application-dev/reference/apis/js-apis-media.md
浏览文件 @
80294db4
...
...
@@ -362,12 +362,12 @@ Audio/Video播放demo可参考:[音频播放开发指导](../../media/using-av
| fdSrc
<sup>
9+
</sup>
|
[
AVFileDescriptor
](
#avfiledescriptor9
)
| 是 | 是 | 媒体文件描述,只允许在
**idle**
状态下设置,静态属性。
<br/>
使用场景:应用中的媒体资源被连续存储在同一个文件中。
<br/>
支持的视频格式(mp4、mpeg-ts、webm、mkv)。
<br>
支持的音频格式(m4a、aac、mp3、ogg、wav)。
<br/>
**使用示例**
:
<br/>
假设一个连续存储的媒体文件:
<br/>
视频1(地址偏移:0,字节长度:100);
<br/>
视频2(地址偏移:101,字节长度:50);
<br/>
视频3(地址偏移:151,字节长度:150);
<br/>
1. 播放视频1:AVFileDescriptor { fd = 资源句柄; offset = 0; length = 100; }。
<br/>
2. 播放视频2:AVFileDescriptor { fd = 资源句柄; offset = 101; length = 50; }。
<br/>
3. 播放视频3:AVFileDescriptor { fd = 资源句柄; offset = 151; length = 150; }。
<br/>
假设是一个独立的媒体文件: 请使用src=fd://xx。 |
| dataSrc
<sup>
10+
</sup>
|
[
AVDataSrcDescriptor
](
#avdatasrcdescriptor10
)
| 是 | 是 | 流式媒体资源描述,只允许在
**idle**
状态下设置,静态属性。
<br/>
使用场景:应用播放从远端下载到本地的文件,在应用未下载完整音视频资源时,提前播放已获取的资源文件。
<br/>
支持的视频格式(mp4、mpeg-ts、webm、mkv)。
<br>
支持的音频格式(m4a、aac、mp3、ogg、wav)。
<br/>
**使用示例**
:
<br/>
假设用户正在从远端服务器获取音视频媒体文件,希望下载到本地的同时播放已经下载好的部分:
<br/>
1.用户需要获取媒体文件的总大小size(单位为字节),获取不到时设置为-1。
<br/>
2.用户需要实现回调函数func用于填写数据,如果size = -1,则func形式为:func(buffer: ArrayBuffer, length: number),此时播放器只会按照顺序获取数据;否则func形式为:func(buffer: ArrayBuffer, length: number, pos: number),播放器会按需跳转并获取数据。
<br/>
3.用户设置AVDataSrcDescriptor {fileSize = size, callback = func}。
<br/>
**注意事项**
:
<br/>
如果播放的是mp4/m4a格式用户需要保证moov字段(媒体信息字段)在mdat字段(媒体数据字段)之前,或者moov之前的字段小于10M,否则会导致解析失败无法播放。 |
| surfaceId
<sup>
9+
</sup>
| string | 是 | 是 | 视频窗口ID,默认无窗口,只允许在
**initialized**
状态下设置,静态属性。
<br/>
使用场景:视频播放的窗口渲染,纯音频播放不用设置。
<br/>
**使用示例**
:
<br/>
[
通过Xcomponent创建surfaceId
](
../arkui-ts/ts-basic-components-xcomponent.md#getxcomponentsurfaceid
)
。 |
| loop
<sup>
9+
</sup>
| boolean | 是 | 是 | 视频循环播放属性,默认'false',设置为'true'表示循环播放,动态属性。
<br/>
只允许在
**prepared**
/
**playing**
/
**paused**
/
**completed**
状态下设置。 |
| loop
<sup>
9+
</sup>
| boolean | 是 | 是 | 视频循环播放属性,默认'false',设置为'true'表示循环播放,动态属性。
<br/>
只允许在
**prepared**
/
**playing**
/
**paused**
/
**completed**
状态下设置。
<br/>
直播场景不支持loop设置。
|
| videoScaleType
<sup>
9+
</sup>
|
[
VideoScaleType
](
#videoscaletype9
)
| 是 | 是 | 视频缩放模式,默认VIDEO_SCALE_TYPE_FIT_CROP,动态属性。
<br/>
只允许在
**prepared**
/
**playing**
/
**paused**
/
**completed**
状态下设置。 |
| audioInterruptMode
<sup>
9+
</sup>
|
[
audio.InterruptMode
](
js-apis-audio.md#interruptmode9
)
| 是 | 是 | 音频焦点模型,默认SHARE_MODE,动态属性。
<br/>
只允许在
**prepared**
/
**playing**
/
**paused**
/
**completed**
状态下设置。 |
| audioRendererInfo
<sup>
10+
</sup>
|
[
audio.AudioRendererInfo
](
js-apis-audio.md#audiorendererinfo8
)
| 是 | 是 | 设置音频渲染信息,默认值contentType为CONTENT_TYPE_MUSIC,streamUsage为STREAM_USAGE_MEDIA。
<br/>
只允许在
**initialized**
状态下设置 |
| state
<sup>
9+
</sup>
|
[
AVPlayerState
](
#avplayerstate9
)
| 是 | 否 | 音视频播放的状态,全状态有效,可查询参数。 |
| currentTime
<sup>
9+
</sup>
| number | 是 | 否 | 视频的当前播放位置,单位为毫秒(ms),可查询参数。
<br/>
返回为(-1)表示无效值,
**prepared**
/
**playing**
/
**paused**
/
**completed**
状态下有效。 |
| currentTime
<sup>
9+
</sup>
| number | 是 | 否 | 视频的当前播放位置,单位为毫秒(ms),可查询参数。
<br/>
返回为(-1)表示无效值,
**prepared**
/
**playing**
/
**paused**
/
**completed**
状态下有效。
<br/>
直播场景默认返回(-1)。
|
| duration
<sup>
9+
</sup><a
name=
avplayer_duration
></a>
| number | 是 | 否 | 视频时长,单位为毫秒(ms),可查询参数。
<br/>
返回为(-1)表示无效值,
**prepared**
/
**playing**
/
**paused**
/
**completed**
状态下有效。
<br/>
直播场景默认返回(-1)。 |
| width
<sup>
9+
</sup>
| number | 是 | 否 | 视频宽,单位为像素(px),可查询参数。
<br/>
返回为(0)表示无效值,
**prepared**
/
**playing**
/
**paused**
/
**completed**
状态下有效。 |
| height
<sup>
9+
</sup>
| number | 是 | 否 | 视频高,单位为像素(px),可查询参数。
<br/>
返回为(0)表示无效值,
**prepared**
/
**playing**
/
**paused**
/
**completed**
状态下有效。 |
...
...
@@ -1003,6 +1003,7 @@ for (let i = 0; i < arrayDescription.length; i++) {
seek(timeMs: number, mode?:SeekMode): void
跳转到指定播放位置,只能在prepared/playing/paused/complete状态调用,可以通过
[
seekDone事件
](
#seekDone_on
)
确认是否生效。
注:直播场景不支持seek。
**系统能力:**
SystemCapability.Multimedia.Media.AVPlayer
...
...
@@ -1068,6 +1069,7 @@ avPlayer.off('seekDone')
setSpeed(speed: PlaybackSpeed): void
设置倍速模式,只能在prepared/playing/paused/complete状态调用,可以通过
[
speedDone事件
](
#speedDone_on
)
确认是否生效。
注:直播场景不支持setSpeed。
**系统能力:**
SystemCapability.Multimedia.Media.AVPlayer
...
...
@@ -1345,6 +1347,7 @@ avPlayer.off('endOfStream')
on(type: 'timeUpdate', callback: Callback
\<
number>): void
监听资源播放当前时间,单位为毫秒(ms),用于刷新进度条当前位置,默认间隔1s时间上报,因用户操作(seek)产生的时间变化会立刻上报。
注:直播场景不支持timeUpdate上报。
**系统能力:**
SystemCapability.Multimedia.Media.AVPlayer
...
...
@@ -1388,6 +1391,7 @@ avPlayer.off('timeUpdate')
on(type: 'durationUpdate', callback: Callback
\<
number>): void
监听资源播放资源的时长,单位为毫秒(ms),用于刷新进度条长度,默认只在prepared上报一次,同时允许一些特殊码流刷新多次时长。
注:直播场景不支持durationUpdate上报。
**系统能力:**
SystemCapability.Multimedia.Media.AVPlayer
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录