如果你也对鸿蒙开发感兴趣,加入“Harmony自习室”吧!扫描下方名片,关注公众号,公众号更新更快,同时也有更多学习资料和技术讨论群。

1、概述
本期我们初步讨论音视频资源的播放与录制相关能力 —— AVPlayer & AVRecorder。
👉🏻 AVPlayer主要工作是将Audio/Video媒体资源(比如mp4/mp3/mkv/mpeg-ts等)转码为可供渲染的图像和可听见的音频模拟信号,并通过输出设备进行播放。
👉🏻 AVRecorder主要工作是捕获音频信号,接收视频信号,完成音视频编码并保存到文件中。
2、AVPlayer
AVPlayer主要工作是将Audio/Video媒体资源(比如mp4/mp3/mkv/mpeg-ts等)转码为可供渲染的图像和可听见的音频模拟信号,并通过输出设备进行播放。
AVPlayer提供功能完善一体化播放能力,应用只需要提供流媒体来源,不负责数据解析和解码就可达成播放效果。
2.1、音频播放
当使用AVPlayer开发音乐应用播放音频时,其交互关系如下图(图1)所示。

音乐类应用通过调用JS接口层提供的AVPlayer接口实现相应功能时,框架层会通过播放服务(Player Framework)将资源解析成音频数据流(PCM),音频数据流经过软件解码后输出至音频服务(Audio Framework),由音频服务输出至音频驱动渲染,实现音频播放功能。完整的音频播放需要应用、Player Framework、Audio Framework、音频HDI共同实现。
上图中,数字标注表示需要数据与外部模块的传递。
-
音乐应用将媒体资源传递给AVPlayer接口。
-
Player Framework将音频PCM数据流输出给Audio Framework,再由Audio Framework输出给音频HDI。
2.2、视频播放
当使用AVPlayer开发视频应用播放视频时,其

最低0.47元/天 解锁文章
3829

被折叠的 条评论
为什么被折叠?



