CN107393566A - 一种智能故事机的音频解码方法及装置 - Google Patents

一种智能故事机的音频解码方法及装置 Download PDF

Info

Publication number
CN107393566A
CN107393566A CN201710577443.0A CN201710577443A CN107393566A CN 107393566 A CN107393566 A CN 107393566A CN 201710577443 A CN201710577443 A CN 201710577443A CN 107393566 A CN107393566 A CN 107393566A
Authority
CN
China
Prior art keywords
audio
play
decoding
voice data
voice
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710577443.0A
Other languages
English (en)
Inventor
丘文杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Cool Flag Internet Co Ltd
Original Assignee
Shenzhen Cool Flag Internet Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Cool Flag Internet Co Ltd filed Critical Shenzhen Cool Flag Internet Co Ltd
Priority to CN201710577443.0A priority Critical patent/CN107393566A/zh
Publication of CN107393566A publication Critical patent/CN107393566A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10009Improvement or modification of read or write signals

Abstract

本发明提供了一种智能故事机的音频解码方法及装置,其中,该音频解码方法包括:当接收到音频播放指令时,获取所述音频播放指令对应的音频播放信息;设置与所述音频播放信息对应的音频文件的音频类型;根据所述音频文件的音频类型选择对应的解码器;分别创建填充音频数据流线程和解码播放线程;所述解码播放线程在所述填充音频数据流线程形成音频数据流时,开始播放解码后的音频数据。本发明采用了FFmpeg和MAD相结合的音频解码方法,根据音频文件的音频类型选择对应的解码器,可针对产品设计适应各种不同的音频场景,既能够支持在线播放和本地播放,又能够针对部分音频场景实现快速解码播放,提高用户体验,使产品交互体验上了一个台阶。

Description

一种智能故事机的音频解码方法及装置
技术领域
本发明涉及智能故事机技术领域,尤其涉及一种智能故事机的音频解码方法及装置。
背景技术
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。
简而言之, FFmpeg可在linux平台上完成对在线音频文件和本地音频文件的解协议,以及对全音频格式的解码,如:MP3、FLAG、APE、OGG、AAC或者WAV等。
目前,现有的智能故事机仅采用FFmpeg实现对本地音频、在线音频以及各种格式的解码,由于FFmpeg是一个复杂的大而全的音视频解码模块,使用它确实可以实现智能故事机领域中的所有的音频播放功能,但是FFmpeg不具备针对性,由于智能故事机是一个无屏的设备,需要兼顾多种文件协议和多种音频格式解码又要兼顾播放器的运行效率的情况,它有些场景只要能支持播放就行,有些场景则需要快速的出声音,则对解码模块的执行效率要求则很高,比如:提示音的播放、合成音的播放(直接影响语音交互的反馈效率)和开机后随机播放音乐(直接影响了开机的速度),而FFmpeg都不能很好的解决这些场景。
如何针对智能故事机需要兼顾多种文件协议和多种音频格式解码又要兼顾播放器的运行效率的情况,提供一种既能够支持在线播放和本地播放,又能够针对部分音频场景实现快速解码播放的方法是目前亟待解决的技术问题。
发明内容
本发明的目的在于提供一种智能故事机的音频解码方法及装置,旨在解决现有的智能故事机由于需要兼顾多种文件协议和多种音频格式解码又要兼顾播放器的运行效率的情况,无法提供一种既能够支持在线播放和本地播放,又能够针对部分音频场景实现快速解码播放的技术问题。
本发明是这样实现的,一种智能故事机的音频解码方法,所述智能故事机采用linux操作系统,所述音频解码方法包括:
当接收到音频播放指令时,获取所述音频播放指令对应的音频播放信息;
设置与所述音频播放信息对应的音频文件的音频类型;
根据所述音频文件的音频类型选择对应的解码器;其中,所述解码器包括MAD/LIBMAD_ENGINE解码器和FFmpeg/FFMPEG_ENGINE解码器;
分别创建填充音频数据流线程和解码播放线程,其中,所述填充音频数据流线程用于创建和初始化非阻塞自增缓冲区,并读取音频文件的数据填充到缓冲区,形成音频数据流,所述解码播放线程用于同时进行音频数据的解码,从而达到音乐播放的目的;
所述解码播放线程在所述填充音频数据流线程形成音频数据流时,开始播放解码后的音频数据。
进一步地,所述当接收到音频播放指令时,获取所述音频播放指令对应的音频播放信息的步骤之前,还包括:
预先定义与所述音频播放信息对应的音频文件的音频类型;其中,所述音频类型包括提示音、开机随机播放、语音交互合成音、微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音。
进一步地,所述根据所述音频文件的音频类型选择对应的解码器的步骤进一步包括:
当所述音频文件的音频类型为提示音,开机随机播放或者语音交互合成音时,则选择MAD/LIBMAD_ENGINE解码器;
当所述音频文件的音频类型为微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音时,则选择FFmpeg/FFMPEG_ENGINE解码器。
相应地,本发明还提供了一种智能故事机的音频解码装置,所述智能故事机采用linux操作系统,所述音频解码装置包括:
获取单元,用于当接收到音频播放指令时,获取所述音频播放指令对应的音频播放信息;
设置单元,用于设置与所述音频播放信息对应的音频文件的音频类型;
选择单元,用于根据所述音频文件的音频类型选择对应的解码器,其中,所述解码器包括MAD/LIBMAD_ENGINE解码器和FFmpeg/FFMPEG_ENGINE解码器;
创建单元,用于分别创建填充音频数据流线程和解码播放线程,其中,所述填充音频数据流线程用于创建和初始化非阻塞自增缓冲区,并读取音频文件的数据填充到缓冲区,形成音频数据流,所述解码播放线程用于同时进行音频数据的解码,从而达到音乐播放的目的;
播放单元,用于所述解码播放线程在所述填充音频数据流线程形成音频数据流时,开始播放解码后的音频数据。
进一步地,还包括:
预定义单元,用于预先定义与所述音频播放信息对应的音频文件的音频类型;其中,所述音频类型包括提示音、开机随机播放、语音交互合成音、微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音。
进一步地,所述选择单元包括:
第一选择子单元,用于当所述音频文件的音频类型为提示音,开机随机播放或者语音交互合成音时,则选择MAD/LIBMAD_ENGINE解码器;
第二选择子单元,用于当所述音频文件的音频类型为微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音时,则选择FFmpeg/FFMPEG_ENGINE解码器。
本发明的有益效果为:本发明提供的智能故事机的音频解码方法,其采用了FFmpeg和MAD相结合的音频解码方法,根据音频文件的音频类型选择对应的解码器,当音频文件的音频类型为提示音,开机随机播放或者语音交互合成音时,则选择MAD/LIBMAD_ENGINE解码器,这样,在提示音播放上采用MAD解码提高了产品交互的响应速度,在合成音播放上采用MAD解码提高了语音交互的效应速度,使语音识别、语义解析、对话及合成音返回到出声音1秒内就能完成,在开机随机播放上采用MAD解码,提高了开机的体验,使开机后3秒左右就能听到音乐播放;当音频文件的音频类型为微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音时,则选择FFmpeg/FFMPEG_ENGINE解码器,这样,使用FFmpeg解决了所有音频协议支持和全音频格式支持的问题。
综上,本发明通过FFmpeg和MAD相结合的音频解码方法,可以针对产品设计适应各种不同的音频场景,提高用户体验,使产品交互体验上了一个台阶,在行业中处于非常有竞争力的水平,有效解决了现有的智能故事机由于需要兼顾多种文件协议和多种音频格式解码又要兼顾播放器的运行效率的情况,无法提供一种既能够支持在线播放和本地播放,又能够针对部分音频场景实现快速解码播放的技术问题。
附图说明
图1是本发明一实施例提供的智能故事机的音频解码方法的流程图。
图2是本发明一实施例提供的智能故事机的音频解码装置的结构图。
图3是图2提供的智能故事机的音频解码装置其选择单元的结构图。
具体实施方式
为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例公开了一种智能故事机的音频解码方法及装置,该智能故事机的音频解码方法采用了FFmpeg和MAD相结合的音频解码方法,根据音频文件的音频类型选择对应的解码器,当音频文件的音频类型为提示音,开机随机播放或者语音交互合成音时,则选择MAD/LIBMAD_ENGINE解码器,这样,在提示音播放上采用MAD解码提高了产品交互的响应速度,在合成音播放上采用MAD解码提高了语音交互的效应速度,使语音识别、语义解析、对话及合成音返回到出声音1秒内就能完成,在开机随机播放上采用MAD解码,提高了开机的体验,使开机后3秒左右就能听到音乐播放;当音频文件的音频类型为微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音时,则选择FFmpeg/FFMPEG_ENGINE解码器,这样,使用FFmpeg解决了所有音频协议支持和全音频格式支持的问题。本发明解决智能故事机需要兼顾多种文件协议和多种音频格式解码又要兼顾播放器的运行效率的情况,提供了一种既能够支持在线播放和本地播放,又能够针对部分音频场景实现快速解码播放的方案。可以针对产品设计适应各种不同的音频场景,提高用户体验。以下进行详细说明。
实施例一
如图1所示,一种智能故事机的音频解码方法,所述智能故事机采用linux操作系统,所述音频解码方法包括:
S100,当接收到音频播放指令时,获取所述音频播放指令对应的音频播放信息;
作为一种可选的实施方式,所述当接收到音频播放指令时,获取所述音频播放指令对应的音频播放信息的步骤之前,还包括:
预先定义与所述音频播放信息对应的音频文件的音频类型;其中,所述音频类型包括提示音、开机随机播放、语音交互合成音、微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音。
需要说明的是,本实施例对音频文件的音频类型进行定义,具体如下:
enum voice_type {
PLAY_TONE = 0,(提示音)
PLAY_WECHAT,(微信消息)
PLAY_DRIFT,(童言童语声音)
PLAY_AICHAT,(合成音)
PLAY_AIVOD,(语音点播单曲)
PLAY_AIMUSIC,(语音点播歌曲列表)
PLAY_LOCAL,(播放本地音乐)
PLAY_COLLECT,(播放收藏音乐)
PLAY_NETVOD,(播放网络推送单曲)
PLAY_NETLIST,(播放网络歌曲列表)
PLAY_FAST,(开机快速播放)
PLAY_VOICE,(播放自然界的声音)
PLAY_INVAILD
};
S101,设置与所述音频播放信息对应的音频文件的音频类型;
需要说明的是,本实施例中,通过实现set_play_type函数完成设置与所述音频播放信息对应的音频文件的音频类型,实现set_play_type函数具体如下:
int set_play_type(music_player *mp,enum voice_type v,enum list_type l)
S102,根据所述音频文件的音频类型选择对应的解码器,其中,所述解码器包括MAD/LIBMAD_ENGINE解码器和FFmpeg/FFMPEG_ENGINE解码器;
需要说明的是,本实施例中,根据所述音频文件的音频类型选择对应的解码器的过程具体如下:
enum play_engine play_engine_opt(audio_player *p)
{
if(p->v_type == PLAY_TONE
|| p->v_type == PLAY_AICHAT
|| p->v_type == PLAY_FAST)
p->p_engine = LIBMAD_ENGINE;
else
p->p_engine = FFMPEG_ENGINE;
return p->p_engine;
}
作为一种可选的实施方式,所述根据所述音频文件的音频类型选择对应的解码器的步骤进一步包括:
当所述音频文件的音频类型为提示音,开机随机播放或者语音交互合成音时,则选择MAD/LIBMAD_ENGINE解码器;
当所述音频文件的音频类型为微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音时,则选择FFmpeg/FFMPEG_ENGINE解码器。
需要说明的是,本实施例中MAD/Libmad:(libmad)是一个开源的高精度 MPEG 音频解码库,支持 MPEG-1(Layer I, Layer II 和 LayerIII(也就是 MP3)。LIBMAD 提供24-bit 的 PCM 输出,完全是定点计算,非常适合没有浮点支持的平台上使用。使用libmad 提供的一系列 API,就可以非常简单地实现 MP3 数据解码工作。在 libmad 的源代码文件目录下的 mad.h 文件中,可以看到绝大部分该库的数据结构和 API 等。
MAD(libmad)是一个开源的高精度MPEG音频解码库,支持MPEG-1标准。libmad提供24-bit的PCM输出,完全定点计算,非常适合在没有浮点支持的嵌入式硬件平台上使用。使用libmad提供的一系列API可以实现MP3文件的解码。MAD本身是一个轻量级的mp3解码器,在linux平台上使用MAD实现MP3的播放器,其代码量和代码的复杂度很低,则代码的执行效率和音频播放的效率会很高,同时MAD很好的支持了音频流的输入,因此在针对云端语音合成以实时流的形式返回的情况,它可以最高效率的播放出来。
需要说明的是,本实施例中FFmpeg在Linux平台下开发,由以下几部分组成:
1). FFMpeg 视频文件转换命令行工具,也支持经过实时电视卡抓取和编码成视频文件。
2). FFServer 基于HTTP(RTSP正在开发中)用于实时广播的多媒体服务器,也支持时间平移。
3). FFplay 用SDL和FFmpeg库开发的一个简单的媒体播放器。
4). libavcodec 一个包含了所有FFmpeg音视频编解码器的库.为了保证最优性能和高可复用性,大多数编解码器从头开发的。
5). libavformat 一个包含了所有的普通音视格式的解析器和产生器的库。
6). Alsa : ALSA是Advanced Linux Sound Architecture,高级Linux声音架构的简称,它在Linux操作系统上提供了音频和MIDI(Musical Instrument DigitalInterface,音乐设备数字化接口)的支持。在2.6系列内核中,ALSA已经成为默认的声音子系统,用来替换2.4系列内核中的OSS(Open Sound System,开放声音系统)。
简而言之,FFmpeg可在linux平台上完成对在线音频文件和本地音频文件的解协议,以及对全音频格式的解码,如:MP3,FLAG,APE,OGG,AAC,WAV等。
S103,分别创建填充音频数据流线程和解码播放线程,其中,所述填充音频数据流线程用于创建和初始化非阻塞自增缓冲区,并读取音频文件的数据填充到缓冲区,形成音频数据流,所述解码播放线程用于同时进行音频数据的解码,从而达到音乐播放的目的;
需要说明的是,本实施例中,填充数据流线程的过程具体如下:
1. 创建和初始化非阻塞自增缓冲区;
2. 打开音频文件;
3. 读取音频文件的数据写到缓冲区;
4. 如果读取的过程中收到暂停播放指令,则暂停读取,恢复播放后重新读取;
5. 结束播放或者文件已经读取完则释放缓冲区。
解码播放线程的过程具体如下:
1. 初始化alsa音频接口;
2. 从缓冲区读取数据并进行解码;
3. 把解码后的数据写到ALSA播放接口。
S104,所述解码播放线程在所述填充音频数据流线程形成音频数据流时,开始播放解码后的音频数据。
本发明提供的智能故事机的音频解码方法,其采用了FFmpeg和MAD相结合的音频解码方法,根据音频文件的音频类型选择对应的解码器,当音频文件的音频类型为提示音,开机随机播放或者语音交互合成音时,则选择MAD/LIBMAD_ENGINE解码器,这样,在提示音播放上采用MAD解码提高了产品交互的响应速度,在合成音播放上采用MAD解码提高了语音交互的效应速度,使语音识别、语义解析、对话及合成音返回到出声音1秒内就能完成,在开机随机播放上采用MAD解码,提高了开机的体验,使开机后3秒左右就能听到音乐播放;当音频文件的音频类型为微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音时,则选择FFmpeg/FFMPEG_ENGINE解码器,这样,使用FFmpeg解决了所有音频协议支持和全音频格式支持的问题。
综上,本发明通过FFmpeg和MAD相结合的音频解码方法,可以针对产品设计适应各种不同的音频场景,提高用户体验,使产品交互体验上了一个台阶,在行业中处于非常有竞争力的水平,有效解决了现有的智能故事机由于需要兼顾多种文件协议和多种音频格式解码又要兼顾播放器的运行效率的情况,无法提供一种既能够支持在线播放和本地播放,又能够针对部分音频场景实现快速解码播放的技术问题。
实施例二
如图2所示,一种智能故事机的音频解码装置,所述智能故事机采用linux操作系统,所述音频解码装置包括:
预定义单元1,用于预先定义与音频播放信息对应的音频文件的音频类型;其中,所述音频类型包括提示音、开机随机播放、语音交互合成音、微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音。
获取单元2,用于当接收到音频播放指令时,获取所述音频播放指令对应的音频播放信息;
设置单元3,用于设置与所述音频播放信息对应的音频文件的音频类型;
选择单元4,用于根据所述音频文件的音频类型选择对应的解码器,其中,解码器包括MAD/LIBMAD_ENGINE解码器和FFmpeg/FFMPEG_ENGINE解码器;
创建单元5,用于分别创建填充音频数据流线程和解码播放线程,其中,所述填充音频数据流线程用于创建和初始化非阻塞自增缓冲区,并读取音频文件的数据填充到缓冲区,形成音频数据流,所述解码播放线程用于同时进行音频数据的解码,从而达到音乐播放的目的;
播放单元6,用于所述解码播放线程在所述填充音频数据流线程形成音频数据流时,开始播放解码后的音频数据。
进一步地,如图3所示,所述选择单元4包括:
第一选择子单元41,用于当所述音频文件的音频类型为提示音,开机随机播放或者语音交互合成音时,则选择MAD/LIBMAD_ENGINE解码器;
第二选择子单元42,用于当所述音频文件的音频类型为微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音时,则选择FFmpeg/FFMPEG_ENGINE解码器。
本发明提供的智能故事机的音频解码装置,其选择单元4根据音频文件的音频类型选择对应的解码器,当音频文件的音频类型为提示音,开机随机播放或者语音交互合成音时,则选择MAD/LIBMAD_ENGINE解码器,这样,在提示音播放上采用MAD解码提高了产品交互的响应速度,在合成音播放上采用MAD解码提高了语音交互的效应速度,使语音识别、语义解析、对话及合成音返回到出声音1秒内就能完成,在开机随机播放上采用MAD解码,提高了开机的体验,使开机后3秒左右就能听到音乐播放;当音频文件的音频类型为微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音时,则选择FFmpeg/FFMPEG_ENGINE解码器,这样,使用FFmpeg解决了所有音频协议支持和全音频格式支持的问题。
综上,本发明通过FFmpeg和MAD相结合的音频解码方法,可以针对产品设计适应各种不同的音频场景,提高用户体验,使产品交互体验上了一个台阶,在行业中处于非常有竞争力的水平,有效解决了现有的智能故事机由于需要兼顾多种文件协议和多种音频格式解码又要兼顾播放器的运行效率的情况,无法提供一种既能够支持在线播放和本地播放,又能够针对部分音频场景实现快速解码播放的技术问题。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种智能故事机的音频解码方法,所述智能故事机采用linux操作系统,其特征在于,所述音频解码方法包括:
当接收到音频播放指令时,获取所述音频播放指令对应的音频播放信息;
设置与所述音频播放信息对应的音频文件的音频类型;
根据所述音频文件的音频类型选择对应的解码器;其中,所述解码器包括MAD/LIBMAD_ENGINE解码器和FFmpeg/FFMPEG_ENGINE解码器;
分别创建填充音频数据流线程和解码播放线程,其中,所述填充音频数据流线程用于创建和初始化非阻塞自增缓冲区,并读取音频文件的数据填充到缓冲区,形成音频数据流,所述解码播放线程用于同时进行音频数据的解码,从而达到音乐播放的目的;
所述解码播放线程在所述填充音频数据流线程形成音频数据流时,开始播放解码后的音频数据。
2.根据权利要求1所述的一种智能故事机的音频解码方法,其特征在于,所述当接收到音频播放指令时,获取所述音频播放指令对应的音频播放信息的步骤之前,还包括:
预先定义与所述音频播放信息对应的音频文件的音频类型;其中,所述音频类型包括提示音、开机随机播放、语音交互合成音、微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音。
3.根据权利要求2所述的一种智能故事机的音频解码方法,其特征在于,所述根据所述音频文件的音频类型选择对应的解码器的步骤进一步包括:
当所述音频文件的音频类型为提示音,开机随机播放或者语音交互合成音时,则选择MAD/LIBMAD_ENGINE解码器;
当所述音频文件的音频类型为微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音时,则选择FFmpeg/FFMPEG_ENGINE解码器。
4.一种智能故事机的音频解码装置,所述智能故事机采用linux操作系统,其特征在于,所述音频解码装置包括:
获取单元,用于当接收到音频播放指令时,获取所述音频播放指令对应的音频播放信息;
设置单元,用于设置与所述音频播放信息对应的音频文件的音频类型;
选择单元,用于根据所述音频文件的音频类型选择对应的解码器,其中,所述解码器包括MAD/LIBMAD_ENGINE解码器和FFmpeg/FFMPEG_ENGINE解码器;
创建单元,用于分别创建填充音频数据流线程和解码播放线程,其中,所述填充音频数据流线程用于创建和初始化非阻塞自增缓冲区,并读取音频文件的数据填充到缓冲区,形成音频数据流,所述解码播放线程用于同时进行音频数据的解码,从而达到音乐播放的目的;
播放单元,用于所述解码播放线程在所述填充音频数据流线程形成音频数据流时,开始播放解码后的音频数据。
5.根据权利要求4所述的一种智能故事机的音频解码装置,其特征在于,还包括:
预定义单元,用于预先定义与所述音频播放信息对应的音频文件的音频类型;其中,所述音频类型包括提示音、开机随机播放、语音交互合成音、微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音。
6.根据权利要求5所述的一种智能故事机的音频解码装置,其特征在于,所述选择单元包括:
第一选择子单元,用于当所述音频文件的音频类型为提示音,开机随机播放或者语音交互合成音时,则选择MAD/LIBMAD_ENGINE解码器;
第二选择子单元,用于当所述音频文件的音频类型为微信消息、童言童语声音、语音点播单曲、语音点播歌曲列表、播放本地音乐、播放收藏音乐、播放网络推送单曲、播放网络歌曲列表、开机快速播放或者播放自然界的声音时,则选择FFmpeg/FFMPEG_ENGINE解码器。
CN201710577443.0A 2017-07-15 2017-07-15 一种智能故事机的音频解码方法及装置 Pending CN107393566A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710577443.0A CN107393566A (zh) 2017-07-15 2017-07-15 一种智能故事机的音频解码方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710577443.0A CN107393566A (zh) 2017-07-15 2017-07-15 一种智能故事机的音频解码方法及装置

Publications (1)

Publication Number Publication Date
CN107393566A true CN107393566A (zh) 2017-11-24

Family

ID=60340743

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710577443.0A Pending CN107393566A (zh) 2017-07-15 2017-07-15 一种智能故事机的音频解码方法及装置

Country Status (1)

Country Link
CN (1) CN107393566A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109065018A (zh) * 2018-08-22 2018-12-21 北京光年无限科技有限公司 一种面向智能机器人的故事数据处理方法及系统
CN114095778A (zh) * 2020-08-25 2022-02-25 海信视像科技股份有限公司 一种应用级播放器的音频硬解码方法及显示设备

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109065018A (zh) * 2018-08-22 2018-12-21 北京光年无限科技有限公司 一种面向智能机器人的故事数据处理方法及系统
CN109065018B (zh) * 2018-08-22 2021-09-10 北京光年无限科技有限公司 一种面向智能机器人的故事数据处理方法及系统
CN114095778A (zh) * 2020-08-25 2022-02-25 海信视像科技股份有限公司 一种应用级播放器的音频硬解码方法及显示设备

Similar Documents

Publication Publication Date Title
US6442517B1 (en) Methods and system for encoding an audio sequence with synchronized data and outputting the same
US9552807B2 (en) Method, apparatus and system for regenerating voice intonation in automatically dubbed videos
TWI573131B (zh) 用以編碼或解碼音訊聲軌之方法、音訊編碼處理器及音訊解碼處理器
CN101770772B (zh) 嵌入式网络卡拉ok娱乐装置及其声像控制方法
CN108780643A (zh) 自动配音方法和装置
CN110675886B (zh) 音频信号处理方法、装置、电子设备及存储介质
WO2021083071A1 (zh) 语音转换、文件生成、播音、语音处理方法、设备及介质
WO2014161282A1 (zh) 视频文件播放进度的调整方法及装置
KR20070070217A (ko) 미디어 콘텐트 아이템의 카테고리에 대하여 사용자에게통지하는 데이터 프로세싱 장치 및 방법
JP4174940B2 (ja) カラオケ装置
JP2019015951A (ja) 電子機器のウェイクアップ方法、装置、デバイス及びコンピュータ可読記憶媒体
WO2023207472A1 (zh) 一种音频合成方法、电子设备及可读存储介质
EP2117212A1 (en) Prompting message forming method and device for mobile terminal
CN107393566A (zh) 一种智能故事机的音频解码方法及装置
US8670577B2 (en) Electronically-simulated live music
CN111445914B (zh) 可拆解和再编辑音频信号的处理方法及装置
WO2011087460A1 (en) A method and a device for generating at least one audio file, and a method and a device for playing at least one audio file
CN113851140A (zh) 语音转换相关方法、系统及装置
CN113808576A (zh) 语音转换方法、装置及计算机系统
KR20080099006A (ko) 오디오 데이터에 다중 혼합 및 음향효과를 부가하는 기능을제공하는 디지털 오디오 재생 장치 및 방법
CN1787101A (zh) 一种多媒体编辑方法
US20220138797A1 (en) Creation and dynamic revision for audio-based advertising
CN102483944A (zh) 用于处理音频数据的方法和设备
CN108461086A (zh) 一种音频的实时切换方法和装置
KR20050088567A (ko) 웨이브 테이블 기반의 미디 합성 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20171124

WD01 Invention patent application deemed withdrawn after publication