CN102522103A - 机顶盒mp3流媒体混音的方法 - Google Patents
机顶盒mp3流媒体混音的方法 Download PDFInfo
- Publication number
- CN102522103A CN102522103A CN2011103613009A CN201110361300A CN102522103A CN 102522103 A CN102522103 A CN 102522103A CN 2011103613009 A CN2011103613009 A CN 2011103613009A CN 201110361300 A CN201110361300 A CN 201110361300A CN 102522103 A CN102522103 A CN 102522103A
- Authority
- CN
- China
- Prior art keywords
- data
- data buffer
- pcm
- streaming media
- buffer
- 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.)
- Granted
Links
Images
Landscapes
- Reverberation, Karaoke And Other Acoustics (AREA)
Abstract
本发明涉及机顶盒领域,本发明公开了一种机顶盒mp3流媒体混音的方法,其包括以下步骤:步骤1数据下载进程;步骤2数据解码进程:获取可解码的mp3数据缓冲区,并获取可使用的pcm数据缓冲区,将mp3数据解码到pcm数据缓冲区中;将解码后的mp3数据缓冲区指派给数据下载进程,将pcm数据缓冲区指派给pcm注入进程,并申请下一个可解码的mp3数据缓冲区;步骤3pcm注入进程。本发明的方法通过多进程共享内存实现数据缓存,同时分段下载mp3数据,减少内存的占用,对共享内存的访问和保护采用指派方式,减少数据拷贝,提高效率。
Description
技术领域
本发明涉及机顶盒领域,尤其涉及一种机顶盒mp3流媒体混音的方法。
背景技术
IPTV即交互式网络电视,是一种利用宽带有线电视网,集互联网、多媒体、通讯等多种技术于一体;向家庭用户提供包括数字电视在内的多种交互式服务的崭新技术。用户在家中可以有两种方式享受IPTV服务:(1)计算机,(2)网络机顶盒+普通电视机。它能够很好地适应当今网络飞速发展的趋势,充分有效地利用网络资源。随着IPTV产业的壮大,用户对IPTV网络机顶盒的应用要求也越来越高,mp3播放、游戏等成为必需的功能,混音是网页浏览、游戏等功能实现中不可或缺的部分。混音使用的背景音乐文件较大,不能全部下载到机顶盒中解码。从网络下载数据比播放本地文件环境更复杂,既要保证播放流畅又要受机顶盒资源的限制,同时要兼容一般的mp3音乐播放,原来的机顶盒MP3播放方式显然不能满足要求。
发明内容
本发明的目的是针对上述现有技术中的机顶盒mp3播放方法存在混音难的技术问题,提供一种机顶盒mp3流媒体混音的方法。
本发明的目的通过下述技术方案来实现:
一种机顶盒mp3流媒体混音的方法,其包括以下步骤:
步骤1数据下载进程:建立网络连接,发送http请求并解析http服务器返回的响应,获取可使用的mp3数据缓冲区,mp3数据缓冲区接收数据并进行填充,mp3数据缓冲区填充满后,将mp3数据缓冲区的使用权指派给数据解码进程,并申请下一个可使用的mp3数据缓冲区;
步骤2数据解码进程:获取可解码的mp3数据缓冲区,并获取可使用的pcm数据缓冲区,将mp3数据解码到pcm数据缓冲区中;将解码后的mp3数据缓冲区指派给数据下载进程,将pcm数据缓冲区指派给pcm注入进程,并申请下一个可解码的mp3数据缓冲区;
步骤3 pcm注入进程:获取可使用的pcm数据缓冲区,将pcm数据送到音频播放设备,将pcm数据缓冲区指派给解码进程,并申请下一个可使用的pcm数据缓冲区。
优选地,在pcm注入进程中,将所有有使用权的数据缓冲区连成一块。
优选地,当最后一个数据缓冲区遗留有不到一帧数据时,将这部分数据拷贝到第一个数据缓冲区中,与后续有使用权的数据缓冲区连成一块。
优选地,所述步骤2数据解码进程中,对mp3数据进行解码基于libmad库。
本发明的有益效果:本发明通过网络传输把 mp3 数据以数据流的形式接收到机顶盒解码端,解码 mp3 数据流,得到pcm音频数据,多路pcm同时写入音频设备,播放音乐,实现混音。混音的各路mp3播放采用相同方式,相互独立的进程,实现多路mp3同时播放并提供单路mp3播放控制功能。本发明的方法通过多进程共享内存实现数据缓存,同时分段下载mp3数据,减少内存的占用,对共享内存的访问和保护采用指派方式,减少数据拷贝,提高效率。
附图说明
图1为mp3流媒体混音的过程。
图2为本发明的mp3流媒体混音的方法。
具体实施方式
下面结合具体实施例和附图对本发明作进一步的说明。
图1为mp3流媒体混音的过程。如图1所示,将两路以上pcm流由一路pcm输出,pcm的来源为http服务器提供的mp3流解码出的数据。
图2为本发明的机顶盒mp3流媒体混音的方法,其包括以下步骤:
步骤1数据下载进程:建立网络连接,发送http请求并解析http服务器返回的响应,获取可使用的mp3数据缓冲区,mp3数据缓冲区接收数据并进行填充,mp3数据缓冲区填充满后,将mp3数据缓冲区的使用权指派给数据解码进程,并申请下一个可使用的mp3数据缓冲区;
步骤2数据解码进程:获取可解码的mp3数据缓冲区,并获取可使用的pcm数据缓冲区,将mp3数据解码到pcm数据缓冲区中;将解码后的mp3数据缓冲区指派给数据下载进程,将pcm数据缓冲区指派给pcm注入进程,并申请下一个可解码的mp3数据缓冲区;
步骤3 pcm注入进程:获取可使用的pcm数据缓冲区,将pcm数据送到音频播放设备,将pcm数据缓冲区指派给解码进程,并申请下一个可使用的pcm数据缓冲区。
本发明通过网络传输把 mp3 数据以数据流的形式接收到机顶盒解码端,解码 mp3 数据流,得到pcm音频数据,多路pcm同时写入音频设备,播放音乐,实现混音。混音的各路mp3播放采用相同方式,相互独立的进程,实现多路mp3同时播放并提供单路mp3播放控制功能。本发明的方法通过多进程共享内存实现数据缓存,同时分段下载mp3数据,减少内存的占用,对共享内存的访问和保护采用指派方式,减少数据拷贝,提高效率。
优选地,在pcm注入进程中,将所有有使用权的数据缓冲区连成一块。所有缓冲区可看做分割的小块,也可看做是整块。生产者按分割的小块生产,而消费者则将可使用的小块连接成一片使用。在pcm数据注入时,底层数据的注入只关注起始地址,作为整块注入时效率明显提高,这种方式更显现出其优势。
优选地,当最后一个数据缓冲区遗留有不到一帧数据时,将这部分数据拷贝到第一个数据缓冲区中,与后续有使用权的数据缓冲区连成一块。
优选地,上述步骤2数据解码进程中,对mp3数据进行解码基于libmad库。libmad是一个开源的高精度 MPEG 音频解码库,支持 MPEG-1(Layer I, Layer II 和 LayerIII(也就是mp3)。libmad提供 24-bit 的 pcm 输出,完全是定点计算,非常适合没有浮点支持的平台上使用。使用 libmad 提供的一系列 API,就可以非常简单地实现 mp3 数据解码工作。
以上上述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种机顶盒mp3流媒体混音的方法,其包括以下步骤:
步骤1数据下载进程:建立网络连接,发送http请求并解析http服务器返回的响应,获取可使用的mp3数据缓冲区,mp3数据缓冲区接收数据并进行填充,mp3数据缓冲区填充满后,将mp3数据缓冲区的使用权指派给数据解码进程,并申请下一个可使用的mp3数据缓冲区;
步骤2数据解码进程:获取可解码的mp3数据缓冲区,并获取可使用的pcm数据缓冲区,将mp3数据解码到pcm数据缓冲区中;将解码后的mp3数据缓冲区指派给数据下载进程,将pcm数据缓冲区指派给pcm注入进程,并申请下一个可解码的mp3数据缓冲区;
步骤3 pcm注入进程:获取可使用的pcm数据缓冲区,将pcm数据送到音频播放设备,将pcm数据缓冲区指派给解码进程,并申请下一个可使用的pcm数据缓冲区。
2.如权利要求1所述的机顶盒mp3流媒体混音的方法,其特征在于在pcm注入进程中,将所有有使用权的数据缓冲区连成一块。
3.如权利要求2所述的机顶盒mp3流媒体混音的方法,其特征在于当最后一个数据缓冲区遗留有不到一帧数据时,将这部分数据拷贝到第一个数据缓冲区中,与后续有使用权的数据缓冲区连成一块。
4.如权利要求1至3其中之一所述的机顶盒mp3流媒体混音的方法,其特征在于所述步骤2数据解码进程中,对mp3数据进行解码基于libmad库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110361300.9A CN102522103B (zh) | 2011-11-15 | 2011-11-15 | 机顶盒mp3流媒体混音的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110361300.9A CN102522103B (zh) | 2011-11-15 | 2011-11-15 | 机顶盒mp3流媒体混音的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102522103A true CN102522103A (zh) | 2012-06-27 |
CN102522103B CN102522103B (zh) | 2014-10-08 |
Family
ID=46292997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110361300.9A Active CN102522103B (zh) | 2011-11-15 | 2011-11-15 | 机顶盒mp3流媒体混音的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102522103B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067774A (zh) * | 2012-12-28 | 2013-04-24 | 四川九洲电器集团有限责任公司 | 一种机顶盒显示外挂字幕的方法及系统 |
CN105280212A (zh) * | 2014-07-25 | 2016-01-27 | 中兴通讯股份有限公司 | 混音播放方法及装置 |
CN106469082A (zh) * | 2016-09-29 | 2017-03-01 | 努比亚技术有限公司 | 一种移动终端播放音频的方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1953048B (zh) * | 2005-10-18 | 2010-12-15 | 腾讯科技(深圳)有限公司 | 一种混音的处理方法 |
CN101923470A (zh) * | 2010-08-20 | 2010-12-22 | 华南理工大学 | 一种支持UPnP和IGRS双协议的DMA-SDK实现方法 |
CN102118645A (zh) * | 2009-12-31 | 2011-07-06 | 康佳集团股份有限公司 | 一种设置在机顶盒上的mp3播放系统及控制方法 |
-
2011
- 2011-11-15 CN CN201110361300.9A patent/CN102522103B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1953048B (zh) * | 2005-10-18 | 2010-12-15 | 腾讯科技(深圳)有限公司 | 一种混音的处理方法 |
CN102118645A (zh) * | 2009-12-31 | 2011-07-06 | 康佳集团股份有限公司 | 一种设置在机顶盒上的mp3播放系统及控制方法 |
CN101923470A (zh) * | 2010-08-20 | 2010-12-22 | 华南理工大学 | 一种支持UPnP和IGRS双协议的DMA-SDK实现方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067774A (zh) * | 2012-12-28 | 2013-04-24 | 四川九洲电器集团有限责任公司 | 一种机顶盒显示外挂字幕的方法及系统 |
CN105280212A (zh) * | 2014-07-25 | 2016-01-27 | 中兴通讯股份有限公司 | 混音播放方法及装置 |
EP3174060A4 (en) * | 2014-07-25 | 2017-06-14 | ZTE Corporation | Method and apparatus for audio mixing and playing |
CN106469082A (zh) * | 2016-09-29 | 2017-03-01 | 努比亚技术有限公司 | 一种移动终端播放音频的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102522103B (zh) | 2014-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10547850B2 (en) | Audio splitting with codec-enforced frame sizes | |
CN105814900B (zh) | 用于在自适应流播环境中管理相邻频道的系统和方法 | |
US20170195744A1 (en) | Live-stream video advertisement system | |
CN1277405C (zh) | 一种网络多媒体信息快速播放方法及相应的机顶盒设备 | |
US20100254462A1 (en) | Method for reducing memory usage with accelerated channel changes | |
CN103024603B (zh) | 一种用于解决播放网络视频时短时停顿的装置及方法 | |
US20140247887A1 (en) | Just-in-time (jit) encoding for streaming media content | |
US9172737B2 (en) | Streamloading content, such as video content for example, by both downloading enhancement layers of the content and streaming a base layer of the content | |
CN106165432A (zh) | 用于在自适应流播环境中实行快速频道改变的系统和方法 | |
KR20130044218A (ko) | 청크로 스트리밍된 컨텐츠를 복구하기 위한 방법 | |
CN104202684A (zh) | 一种分段网络视频无缝播放方法和装置 | |
CN102510543A (zh) | 音视频播放方法及系统 | |
CN108353198A (zh) | 用于提供功率节省媒体内容的方法和装置 | |
CN105992044A (zh) | 一种hls转码rtmp直播流的方法及系统 | |
CN102522103B (zh) | 机顶盒mp3流媒体混音的方法 | |
CN110858919A (zh) | 媒体文件播放过程中的数据处理方法、装置及存储介质 | |
CN104023260B (zh) | 硬件解码实现方法、装置及播放器 | |
KR102640835B1 (ko) | 송신 장치, 수신 장치, 및 데이터 처리 방법 | |
CN105992018B (zh) | 流媒体转码方法和装置 | |
CN106231344A (zh) | 一种视频断点续播方法及显示设备 | |
CN101540882A (zh) | 基于内存流传输的p2p点播方法 | |
CN112369041A (zh) | 处理媒体数据结构 | |
CN101242329A (zh) | 一种多媒体网络应用处理系统和方法 | |
JP5867549B2 (ja) | 送信装置及び方法、並びに受信装置及び方法 | |
KR102628917B1 (ko) | 송신 장치, 수신 장치, 및 데이터 처리 방법 |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210526 Address after: No. 6, Jiuhua Road, khuchuang Park, Mianyang, Sichuan Patentee after: Sichuan Jiuzhou Investment Holding Group Co.,Ltd. Address before: 621000 No. 16 Yuejin Road, Fucheng District, Sichuan, Mianyang Patentee before: SICHUAN JIUZHOU ELECTRIC GROUP Co.,Ltd. |