CN106657178B - 一种基于http服务器的三维音效在线处理方法 - Google Patents
一种基于http服务器的三维音效在线处理方法 Download PDFInfo
- Publication number
- CN106657178B CN106657178B CN201510717067.1A CN201510717067A CN106657178B CN 106657178 B CN106657178 B CN 106657178B CN 201510717067 A CN201510717067 A CN 201510717067A CN 106657178 B CN106657178 B CN 106657178B
- Authority
- CN
- China
- Prior art keywords
- audio
- data
- http server
- player
- processing
- 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.)
- Expired - Fee Related
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 238000000034 method Methods 0.000 claims abstract description 26
- 230000000694 effects Effects 0.000 claims abstract description 18
- 238000006243 chemical reaction Methods 0.000 claims abstract description 4
- 230000009466 transformation Effects 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提供了一种基于HTTP服务器的三维音效在线处理方法,所述方法包括:步骤1)页面播放器接收到音效处理的指令后,将采集的数据拼装新的URL,并向HTTP服务器进行请求;步骤2)在HTTP服务器端,三维音效处理以模块方式加载到HTTP服务器请求处理链中,拦截带三维音效参数的URL数据请求,对音频数据进行音效变换处理,并将处理后的音频数据返回给所述页面播放器;步骤3)所述页面播放器对音频进行播放处理。本发明的方法利用了通用HTTP服务器的并发处理能力,实现音频数据的实时在线三维音效处理;避免了终端条件的差异,为用户提供了统一的服务体验。
Description
技术领域
本发明涉及音频媒体服务技术,具体涉及一种基于HTTP服务器的三维音效在线处理方法。
背景技术
随着互联网和终端技术的发展,越来越多的在线音频服务开始出现。目前在线音频服务的三维音效处理通常在终端播放器本地实现,由于终端技术和硬件条件的多样性及对三维音效处理的支持程度不一样,导致在每个终端不能达到一个统一的实现效果。没有一个统一的实现方式。
发明内容
本发明的目的在于克服目前在线音频服务的三维音效处理尚存在的上述缺陷,利用在线音频服务的现有系统,提出了一种基于HTTP服务器的三维音效在线处理方法,在该方法中,在在线音频服务的媒体服务HTTP服务器处理链中插入三维音效处理模块,过滤和拦截带三维音效参数的请求,对音频数据进行音效变换,实现了在线音频播放的三维音效的实时处理,满足了各类终端的统一的音效体验。
为了实现上述目的,本发明提供了一种基于HTTP服务器的三维音效在线处理方法,所述方法包括:
步骤1)页面播放器接收到音效处理的指令后,将采集的数据拼装新的URL,并向HTTP服务器进行请求;
步骤2)在HTTP服务器端,三维音效处理以模块方式加载到HTTP服务器请求处理链中,拦截带三维音效参数的URL数据请求,对音频数据进行音效变换处理,并将处理后的音频数据返回给所述页面播放器;
步骤3)所述页面播放器对音频进行播放处理。
上述技术方案中,所述步骤1)具体包括:
步骤101)页面播放器接收到音效处理的指令后,判断能否对本地播放器的Buffer数据进行操作,如果可以,则依据当前播放位置,清除本地播放器中缓存的音频数据,并设置支持清除缓存标识为TRUE;否则,设置支持清除缓存标识为FALSE;
步骤102)将当前播放位置、三维音效参数坐标和支持清除缓存标识拼装新的URL,向HTTP服务器发出请求。
上述技术方案中,所述步骤2)具体包括:
步骤201)三维音效处理以模块方式加载到HTTP服务器请求处理链中,拦截带三维音效参数的URL数据请求;
步骤202)依据拦截的URL数据请求,获取对应的音频文件的文件名、当前播放位置、三维音效参数坐标和支持清除缓存标识,如果支持清除缓存标识为TRUE,则转入步骤203);否则转入步骤204);
步骤203)根据音频文件的文件名,读取音频文件,获取音频文件的元数据,依据当前播放位置,定位到具体的音频数据帧,按帧进行三维音效变换,进入步骤205);
步骤204)根据音频文件的文件名,读取音频文件,获取音频文件的元数据,依据当前播放位置,定位到具体的音频数据帧,针对当前音频帧之前的数据,直接输出到客户端播放器的响应流中,针对当前音频帧之后的数据,进行三维音效变换,执行步骤205);
步骤205)从定位的音频数据帧开始依次进行音效变换,并把变换后的数据帧保存到设定的输出Buffer中;
步骤206)只对音频帧数据进行变换,对音频文件中的元数据信息直接输出;
步骤207)将处理后的音频数据返回给所述页面播放器。
上述技术方案中,所述步骤206)中的音效变换中,当设定的输出Buffer大小达到预定值时,把Buffer中的数据输出到客户端播放器的响应流中,并清空Buffer。
上述技术方案中,所述步骤3)具体包括:
步骤301)判断所述支持清除缓存标识是否为TRUE,如果判断结果是肯定的,所述页面播放器获取音频数据,直接从当前位置继续播放,获取三维音效效果;否则,进入步骤302);
步骤302)重新初始化所述页面播放器,在页面播放器进入SEEKABLE状态后,寻找到当前的播放位置进行播放,获取三维音效效果。
本发明的有益效果在于:
1.本发明的方法利用了通用HTTP服务器的并发处理能力,实现音频数据的实时在线三维音效处理;
2.本发明的方法通过基于服务端进行三维音效处理,避免了终端条件的差异,提供了统一的服务体验。
附图说明
图1是本发明的基于HTTP服务器的三维音效在线处理方法的流程图;
图2是本发明的HTTP服务器的三维音效处理处理流程图。
具体实施方式
下面结合附图和具体实施例对本发明做进一步详细的说明。
如图1所示,一种基于HTTP服务器的三维音效在线处理方法,所述方法包括:
步骤1)页面播放器接收到音效处理的指令后,将采集的数据拼装新的URL,并向HTTP服务器进行请求;具体包括:
步骤101)页面播放器接收到音效处理的指令后,判断能否对本地播放器的Buffer数据进行操作,如果可以,则依据当前播放位置,清除本地播放器中缓存的音频数据,并设置支持清除缓存标识为TRUE;否则,设置支持清除缓存标识为FALSE;
所述页面播放器加载在终端上并在终端上运行;
步骤102)将当前播放位置、三维音效参数<x,y,z>坐标和支持清除缓存标识拼装新的URL,向HTTP服务器发出请求。
步骤2)在HTTP服务器端,三维音效处理以模块方式加载到HTTP服务器请求处理链中,拦截带三维音效参数的URL数据请求,对音频数据进行音效变换处理,并将处理后的音频数据返回给所述页面播放器;
如图2所示,所述步骤2)具体包括:
步骤201)三维音效处理以模块方式加载到HTTP服务器请求处理链中,拦截带三维音效参数的URL数据请求;
步骤202)依据拦截的URL数据请求,获取对应的音频文件的文件名、当前播放位置、三维音效参数坐标和支持清除缓存标识,如果支持清除缓存标识为TRUE,则转入步骤203);否则转入步骤204);
步骤202)依据拦截的URL,获取对应的音频文件的文件名、当前播放位置、三维音效参数<x,y,z>坐标和支持清除缓存标识,如果支持清除缓存标识为TRUE,则转入步骤203);否则转入步骤204);
步骤203)根据音频文件的文件名,读取音频文件,获取音频文件的元数据,依据当前播放位置,定位到具体的音频数据帧,按帧进行三维音效变换,进入步骤205);
步骤204)根据音频文件的文件名,读取音频文件,获取音频文件的元数据,依据当前播放位置,定位到具体的音频数据帧,针对当前音频帧之前(包括当前帧)的数据,直接输出到客户端播放器的响应流中,针对当前音频帧之后的数据,进行三维音效变换,执行步骤205);
步骤205)从定位的音频数据帧开始依次进行音效变换,并把变换后的数据帧保存到设定的输出Buffer中;
在进行音效变换时,为方便处理,保证进行变换的帧数据变换前后的音频帧数据的字节大小相同;在设定的输出Buffer大小达到预定值时,把Buffer中的数据输出到客户端播放器的响应流中,并清空Buffer;
步骤206)只对音频数据帧进行变换,对音频文件中的元数据信息直接输出;
步骤207)将处理后的音频数据返回给所述页面播放器。
步骤3)页面播放器根据支持清除缓存标识对音频进行相应播放处理,具体包括:
步骤301)如果支持清除缓存标识为TRUE,则页面播放器获取音频数据,直接从当前位置进行继续播放,获取三维音效效果;否则,进入步骤302);
步骤302)重新初始化所述页面播放器,在页面播放器进入SEEKABLE状态后,SEEK到当前的播放位置进行播放,获取三维音效效果。
实例1:
NGINX是一个高性能的HTTP服务器,其特点是占有内存少,并发能力强,同时把请求处理流程划分为多个阶段,各阶段按照处理时机定义了清晰的执行语义,很容易介入请求处理流程进行模块开发。
下面基于NGINX进行三维音效处理,具体流程如下:
(1)NGINX根目录下放置提供在线音频服务的MP3文件,如:content_1.mp3、content_2.mp3;
(2)在NGINX的“location/”的配置指令下面,添加videopanner指令,用于启动三维音效处理;
(3)启动NGINX服务器;访问包含页面播放器处理流程的在线音频服务页面,通常,页面播放器处理流程包含在一个js文件中;
(4)页面加载后,会进行页面播放器的初始化,并基于给定的音频文件URL向中的HTTP服务器请求对应的MP3文件;
(5)音频MP3文件开始播放后,播放器页面会呈现出一个包含音源和听者的三维坐标空间,用户使用鼠标拖动来移动音源或听者的位置,在拖动结束之后,获取音源的三维音效参数<x,y,z>坐标、本地播放器支持清除缓存标识和当前播放位置拼装在请求URL上向NGINX请求音频文件;
(6)NGINX调用videopanner指令,拦截请求URL,并解析出音频文件的文件名、当前播放位置、三维音效参数<x,y,z>坐标和支持清除缓存标识等参数;
(7)判断支持清除缓存标识,如果为TRUE,则执行步骤(8);否则执行步骤(9);
(8)根据音频文件的文件名,读取音频文件,获取音频文件的元数据,依据当前播放位置,定位到具体的音频数据帧,进行音效变换,执行步骤(10);
(9)根据音频文件的文件名,读取音频文件,获取音频文件的元数据,依据当前播放位置,定位到具体的音频数据帧,针对当前音频帧之前(包括当前帧)的数据,直接输出到客户端播放器的响应流中,针对当前音频帧之后的数据,进行音效变换,执行步骤(10);
(10)按照当前帧数据依次进行音效变换,并把变换后的数据帧保存到设定的输出Buffer中;在设定的输出Buffer大小达到90%时,把Buffer中的数据输出到客户端播放器的响应流中,并清空Buffer;
(11)只对音频帧数据进行变换,对音频MP3文件中的元数据信息直接进行输出不处理。
Claims (4)
1.一种基于HTTP服务器的三维音效在线处理方法,所述方法包括:
步骤1)页面播放器接收到音效处理的指令后,将采集的数据拼装新的URL,并向HTTP服务器进行请求;
步骤2)在HTTP服务器端,三维音效处理以模块方式加载到HTTP服务器请求处理链中,拦截带三维音效参数的URL数据请求,对音频数据进行音效变换处理,并将处理后的音频数据返回给所述页面播放器;
步骤3)所述页面播放器对音频进行播放处理;
所述步骤1)具体包括:
步骤101)页面播放器接收到音效处理的指令后,判断能否对本地播放器的Buffer数据进行操作,如果可以,则依据当前播放位置,清除本地播放器中缓存的音频数据,并设置支持清除缓存标识为TRUE;否则,设置支持清除缓存标识为FALSE;
步骤102)将当前播放位置、三维音效参数坐标和支持清除缓存标识拼装新的URL,向HTTP服务器发出请求。
2.根据权利要求1所述的基于HTTP服务器的三维音效在线处理方法,其特征在于,所述步骤2)具体包括:
步骤201)三维音效处理以模块方式加载到HTTP服务器请求处理链中,拦截带三维音效参数的URL数据请求;
步骤202)依据拦截的URL数据请求,获取对应的音频文件的文件名、当前播放位置、三维音效参数坐标和支持清除缓存标识,如果支持清除缓存标识为TRUE,则转入步骤203);否则转入步骤204);
步骤203)根据音频文件的文件名,读取音频文件,获取音频文件的元数据,依据当前播放位置,定位到具体的音频数据帧,按帧进行三维音效变换,进入步骤205);
步骤204)根据音频文件的文件名,读取音频文件,获取音频文件的元数据,依据当前播放位置,定位到具体的音频数据帧,针对当前音频数据帧帧之前的数据,直接输出到页面播放器的响应流中,针对当前音频数据帧之后的数据,进行三维音效变换,执行步骤205);
步骤205)从定位的音频数据帧开始依次进行音效变换,并把变换后的音频数据帧保存到设定的输出Buffer中;
步骤206)只对音频数据帧进行变换,对音频文件中的元数据信息直接输出;
步骤207)将处理后的音频数据返回给所述页面播放器。
3.根据权利要求2所述的基于HTTP服务器的三维音效在线处理方法,其特征在于,所述步骤205)中的音效变换中,当设定的输出Buffer大小达到预定值时,把Buffer中的数据输出到客户端播放器的响应流中,并清空Buffer。
4.根据权利要求2所述的基于HTTP服务器的三维音效在线处理方法,其特征在于,所述步骤3)具体包括:
步骤301)判断所述支持清除缓存标识是否为TRUE,如果判断结果是肯定的,所述页面播放器获取音频数据,直接从当前位置继续播放,获取三维音效效果;否则,进入步骤302);
步骤302)重新初始化所述页面播放器,在页面播放器进入SEEKABLE状态后,寻找到当前的播放位置进行播放,获取三维音效效果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510717067.1A CN106657178B (zh) | 2015-10-29 | 2015-10-29 | 一种基于http服务器的三维音效在线处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510717067.1A CN106657178B (zh) | 2015-10-29 | 2015-10-29 | 一种基于http服务器的三维音效在线处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106657178A CN106657178A (zh) | 2017-05-10 |
CN106657178B true CN106657178B (zh) | 2019-08-06 |
Family
ID=58831088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510717067.1A Expired - Fee Related CN106657178B (zh) | 2015-10-29 | 2015-10-29 | 一种基于http服务器的三维音效在线处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106657178B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026789A (zh) * | 2007-01-25 | 2007-08-29 | 苏州广达友讯技术有限公司 | 一种wap网络中ptt音频流的处理方法 |
CN102280132A (zh) * | 2010-06-11 | 2011-12-14 | 希姆通信息技术(上海)有限公司 | 基于http协议的在线流式音频播放方法 |
CN103858447A (zh) * | 2011-07-29 | 2014-06-11 | 三星电子株式会社 | 用于处理音频信号的方法和设备 |
CN104503727A (zh) * | 2014-12-24 | 2015-04-08 | 杭州华三通信技术有限公司 | 基于kvm系统的音频处理方法、装置以及服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2916078A1 (fr) * | 2007-05-10 | 2008-11-14 | France Telecom | Procede de codage et decodage audio, codeur audio, decodeur audio et programmes d'ordinateur associes |
-
2015
- 2015-10-29 CN CN201510717067.1A patent/CN106657178B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026789A (zh) * | 2007-01-25 | 2007-08-29 | 苏州广达友讯技术有限公司 | 一种wap网络中ptt音频流的处理方法 |
CN102280132A (zh) * | 2010-06-11 | 2011-12-14 | 希姆通信息技术(上海)有限公司 | 基于http协议的在线流式音频播放方法 |
CN103858447A (zh) * | 2011-07-29 | 2014-06-11 | 三星电子株式会社 | 用于处理音频信号的方法和设备 |
CN104503727A (zh) * | 2014-12-24 | 2015-04-08 | 杭州华三通信技术有限公司 | 基于kvm系统的音频处理方法、装置以及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN106657178A (zh) | 2017-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102769638B (zh) | 一种下载文件的方法、装置及系统 | |
CN103678408B (zh) | 一种查询数据的方法及装置 | |
CN101208691B (zh) | 分级内容的网络高速缓存 | |
CN110636340B (zh) | 视频文件的上传方法、存储设备、终端设备及存储介质 | |
CN107277081A (zh) | 流媒体数据的切片下载方法和装置、流媒体系统 | |
CN101673298A (zh) | 一种视频点播中的视频数据分布式缓存方法 | |
CN104091596B (zh) | 一种乐曲识别方法、系统和装置 | |
JP2001509280A (ja) | メディアファイルを通信網経由で転送する方法 | |
JP5913788B2 (ja) | コンテンツサーバ、コンテンツ提供システム及びコンテンツ提供方法 | |
CN105721954B (zh) | 一种视频轮播系统和方法 | |
CN107333163A (zh) | 一种视频处理方法及装置、一种终端及存储介质 | |
RU2014118602A (ru) | Оконечное устройство, серверное устройство, способ обработки информации, программа и система предоставления связанных приложений | |
CN106165439A (zh) | 用于多媒体内容传递系统的动态缓冲器管理 | |
CN108200444A (zh) | 一种视频直播的方法、装置和系统 | |
CN110351569A (zh) | 一种直播内容处理方法、装置、设备及介质 | |
CN103873956B (zh) | 媒体文件播放方法、系统、播放器、终端及媒体存储平台 | |
CN104080014A (zh) | 一种实时视频处理方法和装置 | |
WO2014075507A1 (zh) | 发送页游消息的方法及其浏览器和页游业务服务器 | |
CN104753811B (zh) | 一种流媒体业务优化方法、设备及系统 | |
CN106657178B (zh) | 一种基于http服务器的三维音效在线处理方法 | |
CN110290396B (zh) | 一种视频处理的方法、装置、系统、设备和存储介质 | |
CN118678991A (zh) | 基于人工智能的网络存储游戏分配 | |
CN101304433A (zh) | 向播放器提供数据的方法、装置及多媒体播放系统 | |
CN106375319A (zh) | 一种音视频转码调度的方法、装置、设备及系统 | |
CN106653067B (zh) | 一种信息处理方法及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190806 |
|
CF01 | Termination of patent right due to non-payment of annual fee |