如何在音频播放时插播音频

描述

本文导读

ZDP14x0系列芯片是内置开源GUI引擎的图像显示专用驱动芯片,内部集成16MB/64MB显示内存、2D图形加速器、音视频解码器等丰富多媒体功能。不仅支持音视频播放,还支持在音视频播放时插播音频,本文将介绍如何在音频播放时插播音频。

音频接口简介

驱动芯片

图1 音频接口函数

音频播放演示UI

为了更好的了解音频接口如何使用,接下来绘制一个简单的UI,用于演示音频函数接口的使用。如图2,演示UI非常简单,其中1个标签显示UI标题,2个按钮分别用于插入音频和插入音频关闭。按钮分别添加事件,点击后执行回调函数。

驱动芯片

图2 UI界面设计

UI设计完成,将需要播放的音频文件使用音视频转换工具convert_tool.exe处理,然后拷贝到UI工程素材路径data文件夹,如图3,在上位机编译打包时会一并打包生成固件,然后升级更新到板子Flash。

驱动芯片

图3 UI音频素材

音频插播逻辑程序

UI布局完成打包生成资源文件,接下来添加逻辑功能,编写音频播放控制程序。

音频插播需要在音频播放时才有效,因此先添加背景音乐播放程序。如图4,在主页面初始化时,先设置音频播放的声音大小,然后播放音频列表的第一个音频文件,接着注册音频播放完成回调函数。当音频文件播放完成时,会执行播放完成回调函数,在回调函数中继续播放新的音频,示例程序打开的是同一个音频即为单曲循环。

驱动芯片

图4 音频播放程序

背景音乐播放程序编辑完成,接下来编写音频插播程序。

如图5,当点击插入音频按钮时,执行插入音频按钮回调函数,在回调函数中调用音频插播接口打开需要插播的音频,注册音频插播完成回调函数,以及切换下次插播的音频序号。

当点击插入关闭按钮时,执行插入关闭按钮回调函数,在回调函数中调用插入音频关闭函数,关闭当前插播的音频。

插播的音频播放完成或者主动关闭插播的音频,都会执行音频插播完成回调函数,示例中音频插播完成函数只做了播放完成提示,实际开发可添加标志位处理。

驱动芯片

图5 音频插播程序

至此,音频播放及音频插播示例程序编辑完成,编译打包生成UI固件升级到板子测试验证。

注意:在音频播放时,调用音频播放接口不会生效,需要先关闭当前音频或当前音频播放完成,才能调用该接口播放新的音频;在插播的音频播放时,调用音频插播接口不会生效,需要先关闭当前插播音频或当前插播音频播放完成,才能插播新的音频。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分