CN102385864B - 一种音频数据解码方法、装置及音频播放器 - Google Patents

一种音频数据解码方法、装置及音频播放器 Download PDF

Info

Publication number
CN102385864B
CN102385864B CN2010102681254A CN201010268125A CN102385864B CN 102385864 B CN102385864 B CN 102385864B CN 2010102681254 A CN2010102681254 A CN 2010102681254A CN 201010268125 A CN201010268125 A CN 201010268125A CN 102385864 B CN102385864 B CN 102385864B
Authority
CN
China
Prior art keywords
wav
data
audio
file
pcm
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.)
Active
Application number
CN2010102681254A
Other languages
English (en)
Other versions
CN102385864A (zh
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.)
TCL Corp
Original Assignee
TCL Corp
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 TCL Corp filed Critical TCL Corp
Priority to CN2010102681254A priority Critical patent/CN102385864B/zh
Publication of CN102385864A publication Critical patent/CN102385864A/zh
Application granted granted Critical
Publication of CN102385864B publication Critical patent/CN102385864B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明适用于音频技术领域,提供了一种音频数据解码方法、装置及音频播放器,所述方法包括下述步骤:对将要播放的无损压缩格式的音频数据进行解码,生成PCM数据;将所述PCM数据打包成PCM格式的WAV音频文件或者WAV音频数据流;通过解码芯片解码所述WAV音频文件或者所述WAV音频数据流。本发明,将无损压缩格式的音频数据打包成的WAV音频文件或者数据流传送给解码芯片进行解码后,传输给芯片厂商开发的SDK直接播放,不需要开发公司再开发、修改硬件解码芯片厂商提供的SDK,大大节省了开发成本。

Description

一种音频数据解码方法、装置及音频播放器
技术领域
本发明属于音频技术领域,尤其涉及一种音频数据解码方法、装置及音频播放器。
背景技术
目前,许多嵌入式高清解码芯片不支持硬件解码。因此,对于APE,在不支持硬件解码APE压缩格式的嵌入式播放平台上,只能采用软件解码APE音乐。
现有技术在使用软件解码时,大多使用开源的FFmpeg解码库,FFmpeg是一个开源免费跨平台的视频和音频流方案。通过FFmpeg解码库进行软件解码的常用流程是:通过FFmpeg解码库将APE音频的每帧数据解码成脉码调制(Pulse Code Modulation,PCM)音频数据,然后直接通过解码芯片的软件的数据传送接口,将PCM音频数据送给硬件芯片解码播放。
上述的操作流程,要求开发人员必须对解码芯片厂商的软件开发工具包(Software Development Kit,SDK)进行修改,并且需要非常深入了解解码芯片,才能处理好;同时,目前很多只开发中间件和应用层的第三方设计室公司,他们可能会只开发一套通用的中间件来配合许多不同厂家的硬件解码芯片,这样处理就会造成每更换一块硬件解码芯片,就必须修改硬件解码芯片提供的SDK以完成针对APE音乐的软件解码功能,开发成本很高。
发明内容
本发明的目的在于提供一种音频数据解码方法,旨在解决现有技术在解码无损压缩格式的音频数据时,需要修改硬件解码芯片提供的SDK来对无损压缩格式的音频数据进行解码,开发成本高的问题。
本发明是这样实现的,一种音频数据解码方法,所述方法包括下述步骤:
对将要播放的无损压缩格式的音频数据进行解码,生成PCM数据;
将所述PCM数据打包成PCM格式的WAV音频文件或者WAV音频数据流;
通过解码芯片解码所述WAV音频文件或者所述WAV音频数据流。
本发明的另一目的在于提供一种音频数据解码装置,所述装置包括:
PCM数据生成单元,用于对将要播放的无损压缩格式的音频数据进行解码,生成PCM数据;
WAV音频生成单元,用于将所述PCM数据打包成PCM格式的WAV音频文件或者WAV音频数据流;
音频解码单元,用于通过解码芯片解码所述WAV音频文件或者所述WAV音频数据流。
本发明的另一目的在于提供一种音频播放器,所述音频播放器包括如上所述的音频数据解码装置。
在本发明中,先将要播放的无损压缩格式的音频数据进行解码,生成PCM数据,再将生成的PCM数据打包成PCM格式的WAV音频文件或者WAV音频数据流,然后可以通过硬件解码芯片厂商提供的解码芯片解码所述WAV音频文件或者所述WAV音频数据流。由于目前市面上所有的硬件解码芯片,都能直接播放PCM的WAV音频文件或者WAV音频数据流。因此将打包成的WAV音频文件或者数据流传送给硬件芯片,可以直接使用芯片厂商开发的硬件解码芯片解码无损压缩格式的音频数据,不需要Design house公司再开发、修改硬件解码芯片厂商提供的SDK,大大节省了开发成本。
附图说明
图1是本发明实施例提供的音频数据解码方法的实现流程图;
图2是本发明实施例提供的APE音频数据解码方法的实现流程图;
图3是本发明实施例提供的音频数据解码装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
在本发明实施例中,先将要播放无损压缩格式的音频数据进行解码,生成PCM数据,再将生成的PCM数据打包成PCM格式的WAV音频文件或者WAV音频数据流,然后可以通过硬件解码芯片厂商提供的硬件解码芯片解码所述WAV音频文件或者所述WAV音频数据流。
图1是本发明实施例提供的音频数据解码方法的实现流程,详述如下:
在步骤S101中,对将要播放的无损压缩格式的音频数据进行解码,生成PCM数据。
在本实施例中,判断所要播放的音频数据的类型,若该音频数据是WAV音频数据,则使用芯片厂商提供的硬件芯片直接可以解码该音频数据;若该音频文件是无损压缩格式的音频数据,比如APE、OGG、FLAC等类型的音频数据,则通过解码库将APE、OGG、FLAC等类型的音频数据解码成PCM数据。其中解码时,首先将APE、OGG、FLAC等音频数据的文件头中的信息解码成PCM格式的WAV文件头,该音频数据的文件头中的信息包括声道数、采样率、比特率、采样大小,并将WAV文件头保存在WAV数据流中或者WAV文件中,该WAV文件头包括所解码的音频数据的声道数、采样频率、比特率、采样大小;再继续将APE、OGG、FLAC等类型的音频数据的数据体中的信息解码成PCM格式的WAV文件数据体。在本实施例中,用FFmpeg解码库将APE音频数据解码成PCM数据,使用libvorbis将OGG音频数据解码成PCM数据,使用libflac或者FFmpeg解码库将FLAC音频数据解码成PCM数据。
在步骤S102中,将所述PCM数据打包成PCM格式的WAV音频文件或者WAV音频数据流。
在本实施例中,由于目前市面上所有的硬件解码芯片,都能直接播放PCM格式的WAV音频文件。因此,将解码生成的WAV文件头和WAV文件数据体打包后按照WAV编码的格式保存在WAV数据流中或者WAV文件中后,传送给硬件芯片的SDK,使用芯片厂商开发的SDK直接播放。其中WAV文件数据体保存在WAV文件头的后面。
在步骤S103中,通过解码芯片解码所述WAV音频文件或者所述WAV音频数据流。
在本实施例中,由于目前市面上所有的硬件解码芯片,都能直接播放PCM格式的WAV音频文件,因此,可直接通过硬件解码芯片厂商提供的硬件解码芯片解码打包生成的WAV音频文件或者WAV音频数据流。
以下以无损压缩格式的音频数据为APE为例,对本发明实施例的实现进行具体说明。
图2是本发明实施例提供的APE音频数据解码方法的实现流程,详述如下:
在步骤S201中,判断将要播放的音频数据是否是APE数据。
在本实施例中,判断将要播放的音频数据是否是APE数据,当该音频数据是APE数据时,执行步骤S201,否则,一直检测将要播放的音频数据的类型。
在步骤S202中,当所述音频数据是APE数据时,将所述音频数据进行解码,生成PCM数据。
在本实施例中,当音频数据是APE数据时,采用FFmpeg解码库中的APEcodec对APE数据进行软件解码,生成PCM数据。
在步骤S203中,将所述PCM数据打包成PCM格式的WAV音频文件或者WAV音频数据流。
在步骤S204中,通过解码芯片解码所述WAV音频文件或者所述WAV音频数据流。
在本实施例中,由于目前市面上所有的硬件解码芯片,都能直接播放PCM格式的WAV音频文件,因此,可直接通过硬件解码芯片厂商提供的硬件解码芯片解码打包生成的WAV音频文件或者WAV音频数据流。
图3是本发明实施例提供的音频播放装置的结构框,为了便于说明,仅示出了本发明实施例相关的部分。
该装置可以是内置于音频播放器的软件单元、硬件单元或者软硬件结合的单元。
该装置包括PCM数据生成单元31、WAV音频生成单元32和音频解码单元33。
PCM数据生成单元31用于对将要播放的无损压缩格式的音频数据进行解码,生成PCM数据;
WAV音频生成单元32用于将所述PCM数据打包成PCM格式的WAV音频文件或者WAV音频数据流,该PCM格式的WAV音频文件或者WAV音频数据流包括WAV文件头和WAV数据体,其中WAV文件头包括声道数、采样率、比特率、采样大小;
音频解码单元33用于通过解码芯片解码所述WAV音频生成单元32生成的WAV音频文件或者WAV音频数据流。
另外,PCM数据生成单元31包括文件头生成模块311和数据体生成模块312。
其中,文件头生成模块311用于将所述音频数据的文件头中的信息解码成PCM格式的WAV文件头;
数据体生成模块312用于将所述音频数据的数据体中的信息解码成PCM格式的WAV文件数据体。
WAV音频生成单元32包括WAV音频生成模块321,该模块用于将文件头生成模块311生成的WAV文件头和数据体生成模块312生成的WAV文件数据体按照WAV编码的格式保存在WAV文件中或者WAV数据流中。
在本发明实施例中,将APE、OGG、FLAC等无损压缩格式的音频数据进行解码,生成PCM数据后,没有直接送给硬件解码芯片播放,而是将通过解码库解码所获取的APE等格式的音频数据文件头的声道数、采样频率、比特率、采样大小以及文件数据体,打包成PCM格式的WAV音频文件或者音频数据流。由于目前市面上所有的硬件解码芯片,都能直接播放PCM的WAV音频数据。因此将打包成的WAV音频文件或者数据流传送给硬件解码芯片,通过硬件解码芯片解码后传送给芯片厂商开发的SDK,使用芯片厂商开发的SDK直接播放,不需要Design house公司再开发、修改硬件解码芯片厂商提供的SDK,而是只在Design house所开发的中间件中,增加使用解码库解码APE等类型的音频数据成PCM数据,并打包成WAV音频文件或者音频数据流。这样可以做到Design house设计的中间件的APE等解码模块,可以通用所有的硬件平台。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种音频数据解码方法,其特征在于,所述方法包括下述步骤:
对将要播放的无损压缩格式的音频数据进行解码,生成PCM数据;
将所述PCM数据打包成PCM格式的WAV音频文件或者WAV音频数据流;
通过解码芯片解码所述WAV音频文件或者所述WAV音频数据流。
2.如权利要求1所述的方法,其特征在于,所述PCM格式的WAV音频文件或者WAV音频数据流包括WAV文件头和WAV数据体;
所述WAV文件头包括声道数、采样率、比特率、采样大小。
3.如权利要求1所述的方法,其特征在于,所述对将要播放的无损压缩格式的音频数据进行解码,生成PCM数据的步骤具体包括:
将所述音频数据的文件头中的信息解码成PCM格式的WAV文件头;
将所述音频数据的数据体中的信息解码成PCM格式的WAV文件数据体。
4.如权利要求3所述的方法,其特征在于,所述将所述PCM数据打包成PCM格式的WAV音频文件的步骤具体包括:
将所述WAV文件头和所述WAV文件数据体按照WAV编码的格式保存在WAV文件中或者WAV数据流中。
5.如权利要求1所述的方法,其特征在于,所述无损压缩格式的音频数据为APE数据。
6.一种音频数据解码装置,其特征在于,所述装置包括:
PCM数据生成单元,用于对将要播放的无损压缩格式的音频数据进行解码,生成PCM数据;
WAV音频生成单元,用于将所述PCM数据打包成PCM格式的WAV音频文件或者WAV音频数据流;
音频解码单元,用于通过解码芯片解码所述WAV音频文件或者所述WAV音频数据流。
7.如权利要求6所述的装置,其特征在于,所述PCM格式的WAV音频文件或者WAV音频数据流包括WAV文件头和WAV数据体;
所述WAV文件头包括声道数、采样率、比特率、采样大小。
8.如权利要求6所述的装置,其特征在于,所述PCM数据生成单元包括:
文件头生成模块,用于将所述音频数据的文件头中的信息解码成PCM格式的WAV文件头;
数据体生成模块,用于将所述音频数据的数据体中的信息解码成PCM格式的WAV文件数据体。
9.如权利要求8所述的装置,其特征在于,所述WAV音频生成单元包括:
WAV音频生成模块,用于将所述WAV文件头和所述WAV文件数据体按照WAV编码的格式保存在WAV文件中或者WAV数据流中。
10.一种音频播放器,其特征在于,所述音频播放器包括如权利要求6至9任一项所述的音频数据解码装置。
CN2010102681254A 2010-08-31 2010-08-31 一种音频数据解码方法、装置及音频播放器 Active CN102385864B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010102681254A CN102385864B (zh) 2010-08-31 2010-08-31 一种音频数据解码方法、装置及音频播放器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010102681254A CN102385864B (zh) 2010-08-31 2010-08-31 一种音频数据解码方法、装置及音频播放器

Publications (2)

Publication Number Publication Date
CN102385864A CN102385864A (zh) 2012-03-21
CN102385864B true CN102385864B (zh) 2013-07-10

Family

ID=45825230

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010102681254A Active CN102385864B (zh) 2010-08-31 2010-08-31 一种音频数据解码方法、装置及音频播放器

Country Status (1)

Country Link
CN (1) CN102385864B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106340301A (zh) * 2016-09-13 2017-01-18 广州酷狗计算机科技有限公司 一种音频播放方法和装置

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103780611A (zh) * 2014-01-17 2014-05-07 Tcl集团股份有限公司 一种音乐分享方法及系统
CN105491255A (zh) * 2014-09-18 2016-04-13 广东世纪网通信设备有限公司 一种降低语音传输负载的方法及系统
CN105261369A (zh) * 2015-10-30 2016-01-20 李道恒 一种音乐分享方法及系统
CN105933313A (zh) * 2016-04-20 2016-09-07 广东欧珀移动通信有限公司 一种多媒体数据的显示方法、系统及控制设备
CN109616145B (zh) * 2018-12-12 2020-12-11 广州酷狗计算机科技有限公司 生成铃声文件的方法、装置及计算机可读存储介质
CN109640162B (zh) * 2018-12-25 2021-05-14 北京数码视讯软件技术发展有限公司 码流转换方法及系统
CN112597332A (zh) * 2020-12-29 2021-04-02 深圳贝特莱电子科技股份有限公司 一种嵌入在mcu中的语音播放方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101075187A (zh) * 2006-05-18 2007-11-21 腾讯科技(深圳)有限公司 音频文件的读取方法和读取装置
CN101207728A (zh) * 2007-12-17 2008-06-25 深圳市同洲电子股份有限公司 数字电视接收机播放音乐的方法及数字电视接收机
CN101389020A (zh) * 2008-05-06 2009-03-18 李丹 一种扩展流媒体播放设备解码能力的方法
CN101471980A (zh) * 2007-12-25 2009-07-01 厦门雅迅网络股份有限公司 一种通过gprs网络实现车载话音通讯方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6351733B1 (en) * 2000-03-02 2002-02-26 Hearing Enhancement Company, Llc Method and apparatus for accommodating primary content audio and secondary content remaining audio capability in the digital audio production process

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101075187A (zh) * 2006-05-18 2007-11-21 腾讯科技(深圳)有限公司 音频文件的读取方法和读取装置
CN101207728A (zh) * 2007-12-17 2008-06-25 深圳市同洲电子股份有限公司 数字电视接收机播放音乐的方法及数字电视接收机
CN101471980A (zh) * 2007-12-25 2009-07-01 厦门雅迅网络股份有限公司 一种通过gprs网络实现车载话音通讯方法
CN101389020A (zh) * 2008-05-06 2009-03-18 李丹 一种扩展流媒体播放设备解码能力的方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106340301A (zh) * 2016-09-13 2017-01-18 广州酷狗计算机科技有限公司 一种音频播放方法和装置
CN106340301B (zh) * 2016-09-13 2020-01-24 广州酷狗计算机科技有限公司 一种音频播放方法和装置

Also Published As

Publication number Publication date
CN102385864A (zh) 2012-03-21

Similar Documents

Publication Publication Date Title
CN102385864B (zh) 一种音频数据解码方法、装置及音频播放器
KR101158717B1 (ko) 반향 음향 신호를 코딩하는 방법
KR101699138B1 (ko) 리던던트 프레임 코딩 및 디코딩을 위한 디바이스들
KR101548846B1 (ko) 워터마킹된 신호의 적응적 인코딩 및 디코딩을 위한 디바이스
CA2578190C (en) Device and method for generating a coded multi-channel signal and device and method for decoding a coded multi-channel signal
KR101590239B1 (ko) 워터마킹된 신호를 인코딩 및 디코딩하는 디바이스들
RU2009134472A (ru) Устройство и способ передачи последовательности пакетов данных и декодер и аппаратура для распознавания последовательности пакетов данных
CN106528040A (zh) 改进安卓设备音质的方法及装置
US20080288263A1 (en) Method and Apparatus for Encoding/Decoding
RU2005100863A (ru) Устройство и способ для воспроизведения и запоминания объемного стереозвука в терминалесвязи
CN102857833B (zh) 一种适配android stagefright 多媒体框架的音频解码系统及方法
CN101208872A (zh) 用于对音频-视频编解码器进行抽象化的系统
CN105869647B (zh) 一种智能手机原生dsd音频解码方法、系统及智能手机
CN105047200A (zh) 一种基于fpga的flac硬件解码器及解码方法
CN112689194B (zh) 功能机视频配乐方法、装置、终端设备及存储介质
CN107545899A (zh) 一种基于清音基音延迟抖动特性的amr隐写方法
CN100578616C (zh) 代码转换方法和设备
JP2012108254A (ja) 音声フォーマット変換装置および音声フォーマット変換方法
CN102262880A (zh) 一种音频提取装置和方法
US20080082188A1 (en) Audio Player and Related Method Capable of Saving Memory Space
KR20120069906A (ko) 묵음 구간 정보를 사용한 오디오 신호의 부호화/복호화 장치 및 방법
KR100834155B1 (ko) 음성 채널을 이용한 음원 데이터 전송 방법 및 장치
JP2000078274A (ja) 可変レ―ト符号化システムのためのメッセ―ジ記録装置および可変レ―ト符号化システムにおいてサイズ縮小メッセ―ジを記録する方法
TW200617763A (en) Architecture and method for computer system to record multimedia data

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant