一种网络电台插播语音文件的实现方法及系统的制作方法

文档序号:7600073阅读:167来源:国知局
专利名称:一种网络电台插播语音文件的实现方法及系统的制作方法
技术领域
本发明涉及流媒体技术,尤其涉及一种网络电台插播语音文件的实现方法及系统。
背景技术
随着互联网(Internet)的迅速发展,包括微软Windows媒体(Media)技术在内的流媒体技术日渐成熟,使得用户可利用流媒体技术通过网络传输音频、视频或多媒体文件,实现远程教育、视频点播以及网络电台等。目前,数千家无线电台使用Windows Media技术将他们的广播信号发送到Internet上,使得听众能够通过网络随时收听世界范围内的广播,不再因发送器信号的穿透与传输能力而导致无法收听远距离的电台节目。
传统的广播电台通过发射塔将广播信号流传送给收音机,再由收音机将广播节目播放给听众;而网络电台则是将广播电台的广播信号流转换成为数字信号流,通过计算机网络将数字信号流播放给听众。通常,将网络电台向听众播放的音频文件或者电台的广播内容称为是源,利用不同频段向听众广播的电台节目是不同的源。如图1所示,网络电台主要由信号接收器、编码器、流媒体服务器和播放器四个部分组成。其中,信号接收器包括收音头和计算机声卡,收音头的功能与收音机接收天线的功能相似,负责按照网络电台管理维护人员设定的频段接收来自于发射塔的模拟广播信号流,即每个收音头接收一个频段的广播;而计算机声卡则将收音头传来的广播信号流转换成为数字信号流,再传送给与该声卡位于同一计算机的编码器。编码器是计算机中的软件模块,如Windows媒体编码器(Windows Media Encoder),其作用在于将来自于声卡的数字信号流按照网络协议进行编码,转换成流媒体服务器能够识别的信号格式;流媒体服务器再将经过重新编码的数字信号流传送给网络电台的播放器。听众可通过安装并使用网络电台播放器来达到在Internet上收听电台节目的目的。具体而言,网络电台播放器是安装于计算机中的一种客户端软件,听众可通过点击播放器界面上的功能按钮实现开启网络电台、选择频段以及关闭网络电台等目的。
在现有的网络电台只能将信号接收器的广播信号流转发给各个网络电台播放器,将无线电台的节目全部提供给听众,即编码器只能够以信号接收器的数字信号流为源进行编码,并经过流媒体服务器转发给网络电台播放器,而无法插播其它语音文件。这样所带来的缺点是1、网络电台只能转发无线电台的节目,而无法将其它节目与无线电台的节目交替播放,网络电台的节目完全依赖于无线电台;2、由于网络电台完全转发无线电台的节目,因而无法按照网络电台的需要在播放无线电台节目的过程中插入语音、音乐以及网络电台自己的广告,降低了网络电台播放节目的灵活性与可控性,同时也减少了网络电台的广告收入。

发明内容
有鉴于此,本发明的目的在于提供一种网络电台插播语音文件的实现方法,使得网络电台在播放无线电台节目的过程中,能够插播语音文件。
为实现上述目的,本发明提供了一种网络电台编码器重连流媒体服务器的实现方法,预设插播时间及其对应的插播文件,该方法包括以下步骤A.触发时间到达时,判断当前时间是否在插播时间内,如果是,则编码器以当前时间所在插播时间对应的插播文件为源进行编码,并将编码结果发送给流媒体服务器,否则,执行步骤B;B.编码器以信号接收器的数字信号流为源进行编码,并将编码结果发送给流媒体服务器。
设置配置文件,该配置文件至少包括含有插播时间和该插播时间对应的插播文件的网络电台播放列表,并在执行所述步骤A之前获取该网络电台播放列表。
所述网络电台播放列表进一步包括播放时间,所述判断当前时间是否在插播时间内之前进一步包括判断当前时间是否在播放时间内,如果是,则继续;否则,编码器停止编码,直至结束。
编码器中的定时器以一个预先设置的时间间隔发出触发信号,所述的触发时间为接收到定时器触发信号的时间。
进一步设置含有定时器时间间隔的配置文件,并在执行所述步骤A之前获取该时间间隔,通知给定时器。
所述判断当前时间是否在播放时间内之前进一步包括判断编码器是否与流媒体服务器连接,如果是,则继续;否则,调用应用程序接口函数,连接流媒体服务器。
所述的应用程序接口函数为Windows媒体编码器应用程序接口函数。
本发明还提供了一种网络电台插播语音文件的系统,包括信号接收器、编码器、流媒体服务器和播放器,其中,信号接收器用于将发射塔的广播信号流转换成为数字信号流,再传送给编码器;编码器用于按照网络协议对上述的数字信号流进行编码,转换成流媒体服务器能够识别的信号格式;流媒体服务器用于将经过重新编码的数字信号流传送给网络电台的播放器;所述的编码器至少包括定时器、控制逻辑单元和编码单元,定时器用于按照一定的时间间隔向控制逻辑单元发出触发信号;控制逻辑单元用于接收到触发信号后,根据当前时间与插播时间的关系决定编码单元的源;
编码单元在控制逻辑单元的控制下,对当前时间对应的源进行编码,并将编码结果发送给流媒体服务器。
所述的编码器进一步包括一个存储单元,存储包含网络电台节目播放时间、插播时间以及对应的插播文件的配置文件,用于控制逻辑单元从所述存储单元的配置文件中获取所述的播放时间、插播时间以及对应的插播文件,在编码器与流媒体服务器的保持连接时,决定编码单元切换编码的源或者停止编码。
所述的存储单元进一步存储记录有定时器发出触发信号的时间间隔的配置文件,用于所述的控制逻辑单元从存储单元的配置文件中获取所述时间间隔,并且通知给定时器。
所述的编码器进一步包括一个存储单元,存储记录有定时器发出触发信号的时间间隔的配置文件,用于所述的控制逻辑单元从含有时间间隔的存储单元的配置文件中获取所述时间间隔,并且通知给定时器。
应用本发明,网络电台在播放无线电台节目的过程中,能够插播语音文件。具体而言,本发明具有如下有益效果1.本发明在现有的网络电台编码器基础上增加了包括定时器、控制逻辑单元和配置文件的控制单元,使得网络电台能够在播放无线电台节目的过程中插播各种的语音文件,便于网络电台在无线电台节目资源的基础上,根据听众的需要提供节目,增加了网络电台播放节目的灵活性与可控性;同时使得网络电台能够以自身的广告覆盖无线电台,在不影响听众收听无线电台节目的同时,增加了网络电台的广告收入。
2.本发明将语音文件的播放列表写入配置文件中,当网络电台管理维护人员需要改变插播文件及其插播时间时,只需改变配置文件中播放列表的内容即可,便于对网络电台进行维护与管理。


图1为网络电台的结构图。
图2为本发明网络电台插播语音文件方法的流程图。
图3为本发明网络电台重连流媒体服务器和插播语音文件方法的流程图。
图4为依照本发明方法实现网络电台插播语音文件的系统中编码器的结构图。
具体实施例方式
为使本发明的目的、技术方案更加清楚明白,以下参照附图并举实施例,对本发明做进一步的详细说明。
本发明为一种网络电台插播语音文件的实现方法,其基本思想是在网络电台编码器中增加控制逻辑单元和配置文件,其中控制逻辑单元在定时器触发信号的作用下,根据当前时间与配置文件中的播放列表,决定编码器是否切换源,并决定编码器是否停止编码操作。
为了达到网络电台插播语音文件的目的,本发明可在现有的网络电台编码器中增加控制逻辑单元、配置文件和定时器。其中,定时器以一定的时间间隔发出触发信号,通知控制逻辑单元到达触发时间;控制逻辑单元接收到触发信号后,根据当前时间与配置文件中播放列表的内容,决定编码器是否停止编码或者是否切换源;配置文件的作用在于供网络电台管理维护人员预先写入播放列表和定时器发出触发信号的时间间隔。这样,本发明改进后的网络电台编码器既具有对来自于声卡的数字信号流进行编码的功能,又具有插播语音文件的功能。以下为本发明实现网络电台插播语音文件的优选实施例本实施例在配置文件中所写入的播放列表包括播放项目、播放时间、插播时间和插播文件。在除去插播时间之外的播放时间中,编码器对信号接收单元的数字信号流进行编码;在插播时间内,编码器切换到对应的插播文件,并以该插播文件为源进行编码;如果配置文件的播放项目中只写入了播放时间而没有插播时间和插播文件,则表示编码器在该段播放时间内只对信号接收器的数字信号流进行编码,而没有进行插播。如表1所示的播放列表,共存在三个播放项目,其中播放项目1和播放项目2中分别插播语音文件1和语音文件2,而在播放项目3中没有进行插播。

表1本实施例中,控制逻辑单元预先从配置文件中获取定时器发出触发信号的时间间隔,并将该时间间隔通知给定时器,然后定时器按照该时间间隔发送触发信号,触发控制逻辑单元继续执行图2所示的流程。
如图2所示,当控制逻辑单元接收到定时器发出的触发信号、确定到达触发时间后,本实施例网络电台实现插播语音文件的方法包括以下步骤步骤201~202.控制逻辑单元判断当前时间是否在播放时间内,如果是,则执行步骤203;否则,编码器停止编码,然后结束本实施例网络电台插播语音文件的流程。
控制逻辑部分根据当前时间和配置文件中播放列表的内容进行判断,确定编码器是否应该停止编码。如果当前时间不在配置文件设置的播放时间内,编码器无需对任何源进行编码转换,因此编码器停止编码操作。
步骤203~205.控制逻辑单元判断当前时间是否在插播时间内,如果是,则编码器以对应的插播文件为源进行编码,然后将编码结果发送给流媒体服务器,然后结束本实施例网络电台插播语音文件的流程;否则,编码器以信号接收器的数字信号流为源进行编码,然后将编码结果发送给流媒体服务器,并结束本实施例网络电台插播语音文件的流程。
在编码器以当前时间对应的插播文件为源进行编码、并向流媒体服务器发送编码结果的过程中,如果接收到了定时器发出的触发信号,则控制逻辑单元立即进行中断现场保护,即记录存储当前的各种工作参数,如源、编码位置和编码结果等。然后,编码器停止当前的工作,转而判断编码器与流媒体服务器的连接状况;如果未接收到定时器触发信号,则编码器继续以当前时间对应的插播文件为源进行编码,并将编码结果送给流媒体服务器。
同样,在编码器以信号接收器的数字信号流为源进行编码、并向流媒体服务器发送编码结果的过程中,如果接收到了定时器发出的触发信号,则控制逻辑单元进行终端现场保护后,编码器停止当前的工作,转而执行步骤201;如果未接收到定时器的触发信号,则编码器继续以信号接受部分的数字信号流为源进行编码,并将编码结果送给流媒体服务器。
例如网络电台管理维护人员在配置文件中设置的定时器发送触发信号的时间间隔为1秒,播放列表与表1中的内容相同,则在使用本发明的方法进行插播语音文件需进行如下操作首先,控制逻辑单元读取配置文件,获取到时间间隔和表1的内容,并把时间间隔通知给定时器,定时器按照上述时间间隔发送触发信号;然后,当控制逻辑单元接收到定时器发出的触发信号,则判断当前时间是否在12:30~14:00、15:30~17:30或者19:00~22:00内。假设当前时间为16:31,则在15:30~17:30时间段内,因此控制逻辑单元继续判断当前时间是否在插播时间13:10~13:20或者16:30~16:50内。由于当前时间在16:30~16:50时间段内,而该插播时间对应的插播文件为语音文件2,因此编码器对语音文件2进行编码,并将编码结果发送给流媒体服务器。
控制逻辑单元在定时器的触发信号再次出现时,重新执行本发明插播语音文件的流程。
当然,定时器发出触发信号的时间间隔与网络电台播放列表还可以分别写入两个不同的配置文件中。
进一步地,使用本实施例改进过的编码器,控制逻辑单元在定时器触发信号的作用下,对编码器与流媒体服务器的连接情况进行检测;当两者的连接中断时,编码器启动重新连接流媒体服务器的操作,则还能够实现网络电台自动流媒体服务器的功能。
由于在网络电台的实际应用中,编码器重连流媒体服务器和插播语音文件的需求均存在,因此可将本发明的编码器重连流媒体服务器的方法和插播语音文件的方法结合使用。下面将对网络电台编码器重连流媒体服务器和插播语音文件的方法进行详细的描述由于网络电台的管理维护人员预先将定时器发出触发信号的时间间隔和播放列表写入了配置文件中,因此在实现重连和插播时,编码器的控制逻辑单元从配置文件中获取上述信息,并将时间间隔写入到定时器中,以便定时器确定发出触发信号的频度以及编码器在不同时间的编码源。然后,定时器按照上述时间间隔发送触发信号,通知控制逻辑单元到达触发时间,并触发控制逻辑单元继续执行图3所示的流程。
如图3所示,当控制逻辑单元接收到定时器发出的触发信号、确定到达触发时间后,实现网络电台编码器重连流媒体服务器和插播语音文件的方法包括以下步骤步骤301~302.控制逻辑单元判断编码器是否连接到流媒体服务器上,如果是,则执行步骤303;否则,控制逻辑单元调用控制逻辑单元调用Windows Media Encoder应用程序接口函数,连接流媒体服务器,然后结束本实施例重连和插播流程。
在编码器与流媒体服务器的连接中断的情况下,控制逻辑单元自动启动连接流媒体服务器的操作,即通过调用Windows Media Encoder提供的应用程序接口函数,尝试与流媒体服务器建立连接。如调用IWMEncoder类中pEncoder指针所指向的Start函数与流媒体服务器建立连接。
步骤303~304.控制逻辑单元判断当前时间是否在播放时间内,如果是,则执行步骤305;否则,编码器停止编码,结束本实施例重连和插播流程。
控制逻辑部分根据当前时间和配置文件中播放列表的内容进行判断,确定编码器是否应该停止编码。如果当前时间不在配置文件设置的播放时间内,编码器无需对任何源进行编码转换,因此编码器停止编码操作,并结束本实施例重连和插播流程。
步骤305~307.控制逻辑单元判断当前时间是否在插播时间内,如果是,则编码器以对应的插播文件为源进行编码,然后将编码结果发送给流媒体服务器,并结束本实施例重连和插播流程。;否则,编码器以信号接收器的数字信号流为源进行编码,然后将编码结果发送给流媒体服务器,并结束本实施例重连和插播流程。。
在编码器以当前时间对应的插播文件为源进行编码、并向流媒体服务器发送编码结果的过程中,如果接收到了定时器发出的触发信号,则控制逻辑单元立即进行中断现场保护,即记录存储当前的各种工作参数,如源、编码位置和编码结果等。然后,编码器停止当前的工作,转而判断编码器与流媒体服务器的连接状况;如果未接收到定时器触发信号,则编码器继续以当前时间对应的插播文件为源进行编码,并将编码结果送给流媒体服务器。
同样,在编码器以信号接收器的数字信号流为源进行编码、并向流媒体服务器发送编码结果的过程中,如果接收到了定时器发出的触发信号,则控制逻辑单元进行终端现场保护后,编码器停止当前的工作,转而执行步骤301;如果未接收到定时器的触发信号,则编码器继续以信号接收部分的数字信号流为源进行编码,并将编码结果送给流媒体服务器。
上述为应用本发明的方法实现网络电台插播语音文件、以及实现网络电台插播语音文件和重连流媒体服务器的优选实施例,下面将对实现本发明所使用的系统进行详细的描述。
本发明使用图1所示的系统实现网络电台插播语音文件,该系统包括信号接收器、编码器、服务器和播放器四个部分。其中,信号接收单元用于将发射塔的广播信号流转换成为数字信号流,再传送给编码器;编码器用于按照网络协议对上述的数字信号流进行编码,转换成流媒体服务器能够识别的信号格式;流媒体服务器用于将经过重新编码的数字信号流传送给网络电台的播放器信号接收器将发射塔的广播信号流转换成为数字信号流,再传送给编码器。编码器按照网络协议对上述的数字信号流进行编码,转换成流媒体服务器能够识别的信号格式;流媒体服务器再将经过重新编码的数字信号流传送给网络电台的播放器。
如图4所示,本发明在图1所示的网络电台编码器中增加了控制逻辑单元、定时器和存储单元。定时器用于按照一定的时间间隔向控制逻辑单元发出触发信号;控制逻辑单元用于接收到触发信号后,根据当前时间与插播时间的关系决定编码单元的源;编码单元在控制逻辑单元的控制下,对当前时间对应的源进行编码,并将编码结果发送给流媒体服务器;存储单元用于存储网络电台管理维护人员预先设置的配置文件,该配置文件中包含定时器发出触发信号的时间间隔以及网络电台的播放列表,其中播放列表为表1中所示的播放时间、插播时间、对应的插播文件等内容;或者在定时器发出触发信号的时间间隔与网络电台播放列表分别写入两个配置文件中时,存储单元用于存储上述两个配置文件。
改进后的编码器在工作时,控制逻辑单元从存储单元的配置文件中获取定时器发出触发信号的时间间隔和播放列表,并将该时间间隔通知给定时器;定时器按照上述时间间隔向控制逻辑单元发送触发信号;控制逻辑单元接收到触发信号后,根据当前时间和播放列表的内容决定编码单元是否切换源或者停止编码。如果当前时间在播放列表中的播放时间内,则控制逻辑单元判断当前时间是否在插播时间内,如果是,则控制单元通知编码单元以播放列表中当前时间所对应的插播文件为源进行编码,并将编码结果发送给流媒体服务器,否则,控制单元通知编码单元以信号接收器的数字信号流为源进行编码,并将编码结果发送给流媒体服务器;如果当前之间不在播放列表的播放时间内,则控制逻辑单元通知编码单元停止编码。
使用上述系统还能够同时实现网络电台插播语音文件和编码器重连流媒体服务器。当控制逻辑单元接收到定时器发出的触发信号后,首先检测编码器与流媒体的连接情况,如果编码器与流媒体服务器保持了连接,则控制逻辑单元根据播放列表的内容向编码单元发出切换源或者停止编码的控制信号,上述过程与利用本系统实现网络电台插播语音文件的操作相同;如果编码器与流媒体服务器的连接中断,则控制逻辑单元自动启动连接流媒体服务器的操作以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种网络电台插播语音文件的实现方法,其特征在于,预设插播时间及其对应的插播文件,该方法包括以下步骤A.触发时间到达时,判断当前时间是否在插播时间内,如果是,则编码器以当前时间所在插播时间对应的插播文件为源进行编码,并将编码结果发送给流媒体服务器,否则,执行步骤B;B.编码器以信号接收器的数字信号流为源进行编码,并将编码结果发送给流媒体服务器。
2.如权利要求1所述的方法,其特征在于,设置配置文件,该配置文件至少包括含有插播时间和该插播时间对应的插播文件的网络电台播放列表,并在执行所述步骤A之前获取该网络电台播放列表。
3.如权利要求2所述的方法,其特征在于,所述网络电台播放列表进一步包括播放时间,所述判断当前时间是否在插播时间内之前进一步包括判断当前时间是否在播放时间内,如果是,则继续判断当前时间是否在插播时间内;否则,编码器停止编码,直至结束。
4.如权利要求1所述的方法,其特征在于,编码器中的定时器以一个预先设置的时间间隔发出触发信号,所述的触发时间为接收到定时器触发信号的时间。
5.如权利要求4所述的方法,其特征在于进一步包括,设置含有定时器时间间隔的配置文件,并在执行所述步骤A之前获取该时间间隔,通知给定时器。
6.如权利要求3所述的方法,其特征在于,所述判断当前时间是否在播放时间内之前进一步包括判断编码器是否与流媒体服务器连接,如果是,则继续判断当前时间是否在播放时间内;否则,调用应用程序接口函数,连接流媒体服务器。
7.如权利要求1所述的方法,其特征在于,所述的应用程序接口函数为Windows媒体编码器应用程序接口函数。
8.一种网络电台插播语音文件的系统,包括信号接收器、编码器、流媒体服务器和播放器,其中,信号接收器用于将广播信号流转换成为数字信号流,再传送给编码器;编码器用于按照网络协议对上述的数字信号流进行编码,转换成流媒体服务器能够识别的信号格式;流媒体服务器用于将经过重新编码的数字信号流传送给网络电台的播放器;其特征在于,所述的编码器至少包括定时器、控制逻辑单元和编码单元,定时器用于按照一定的时间间隔向控制逻辑单元发出触发信号;控制逻辑单元用于接收到触发信号后,根据当前时间与插播时间的关系决定编码单元的源;编码单元在控制逻辑单元的控制下,对当前时间对应的源进行编码,并将编码结果发送给流媒体服务器。
9.如权利要求8所述的系统,其特征在于,所述的编码器进一步包括一个存储单元,存储包含网络电台节目播放时间、插播时间以及对应的插播文件的配置文件,用于控制逻辑单元从所述存储单元的配置文件中获取所述的播放时间、插播时间以及对应的插播文件,在编码器与流媒体服务器保持连接时,决定编码单元切换编码的源或者停止编码。
10.如权利要求9所述的系统,其特征在于,所述的存储单元进一步存储记录有定时器发出触发信号的时间间隔的配置文件,所述的控制逻辑单元从存储单元的配置文件中获取所述时间间隔,并且通知定时器。
11.如权利要求9所述的系统,其特征在于,所述的编码器进一步包括一个存储单元,存储记录有定时器发出触发信号的时间间隔的配置文件,用于所述的控制逻辑单元从含有时间间隔的存储单元的配置文件中获取所述时间间隔,并且通知给定时器。
全文摘要
本发明公开了一种网络电台插播语音文件的实现方法,预设插播时间及其对应的插播文件,该方法包括以下步骤A.触发时间到达时,判断当前时间是否在插播时间内,如果是,则编码器以当前时间所在插播时间对应的插播文件为源进行编码,并将编码结果发送给流媒体服务器,否则,执行步骤B;B.编码器以信号接收器的数字信号流为源进行编码,并将编码结果发送给流媒体服务器,然后在再次到达触发时间时,返回执行步骤A。本发明还公开了一种网络电台插播语音文件的系统,该系统至少包括信号接收器、编码器、流媒体服务器和播放器,其中编码器至少包括定时器、控制逻辑单元和编码单元。本发明增强了网络电台的灵活性和可控性。
文档编号H04N7/24GK1780213SQ200410096289
公开日2006年5月31日 申请日期2004年11月26日 优先权日2004年11月26日
发明者吴佳伟 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1