音视频播放方法和多媒体播放器的制造方法_2

文档序号:9814821阅读:来源:国知局
一提供的一种音视频播放方法的步骤流程图。
[0030]本发明实施例的音视频播放方法包括以下步骤:
[0031]步骤S102:屏幕检测模块按照设定规则确定设备屏幕的当前状态。
[0032]本发明实施例的多媒体播放器中设置有屏幕检测模块以及多路分解器。在进行音视频播放时,屏幕检测模块会按照设定规则确定设备屏幕的当前状态。
[0033]需要说明是,在具体实现过程中设定规则可以由本领域技术人员根据实际需求进行设置,只要保证屏幕检测模块能够确定设备屏幕的当前状态即可。例如:屏幕检测模块主动向操作系统发送请求以请求操作系统返回的回调信息,然后从回调信息中确定设备屏幕的当前状态;再例如:操作系统按照设定时间频率主动向屏幕检测模块发送回调信息,屏幕检测模块通过接收到的回调信息即可确定设备屏幕的当前状态并保存屏幕的当前状态。
[0034]步骤S104:接收多路分解器发送的屏幕当前状态获取请求,响应该请求将屏幕的当前状态发送至多路分解器。
[0035]多路分解器按照设定频率向屏幕检测模块发送屏幕当前状态获取请求,以获取屏幕的当前状态。屏幕检测模块在接收到请求后,将屏幕的当前状态返回至多路分解器。
[0036]步骤S106:当屏幕的当前状态为关闭时,多路分解器向操作系统申请后台工作权限,以在后台进行音频码流解码。
[0037]多路分解器在接收到屏幕检测模块返回的屏幕当前状态后,判断屏幕当前为关闭(包括黑屏)还是开启(屏幕开启时处于亮屏状态)。在确定屏幕的当前状态为关闭时,为了保证还能继续对音视频中的音频码流进行解码播放声音,因此,需要向操作系统申请后台工作权限,在后台进行音频码流的解码。在确定屏幕的当前状态为开启时,则通过操作系统默认的处理流程对音视频进行解码,播放声音的同时播放视频。
[0038]步骤S108:多路分解器仅将分解的音频码流发送至音频解码器进行解码,以仅进行音频播放。
[0039]本发明实施例中,由于多路分解器可以判定出当前仅需要播放声音而无需播放视频,因此,多路分解器在对音视频数据分解成音频码流和视频码流后,仅将音频码流发送至音频解码器进行解码。
[0040]通过本发明实施例提供的音视频播放方法,通过屏幕检测模块检测设备屏幕的当前状态,并将屏幕的当前状态发送至多路分解器由多路分解器来判断屏幕的当前状态为黑屏或者亮屏。当屏幕的当前状态为黑屏即屏幕关闭时,多路分解器向操作系统申请后台工作权限,此时在后台即可通过音频解码器对音频码流进行解码,以实现在屏幕关闭状态下仅播放声音的目的。可见,本发明实施例提供的音视频播放方法,能够满足用户的个性化需求,在设备屏幕关闭的情况下,只播放声音而不播放视频。
[0041 ] 实施例二
[0042]参照图2,示出了本发明实施例二提供的一种音视频播放方法的步骤流程图。
[0043]本发明实施例中的多媒体播放器包括屏幕检测模块以及多路分解器,采用本发明实施例的多媒体播放器进行音视频播放时具体包括以下步骤:
[0044]步骤S202:屏幕检测模块按照设定时间间隔监听操作系统返回的回调信息。
[0045]其中,回调信息中携带用于指示设备屏幕的当前状态的信息。
[0046]时间间隔的设定可以由本领域技术人员根据实际需求进行设定,本发明实施例中对此不作具体限制。例如:将时间间隔设置成I秒、2秒或者0.5秒等。
[0047]步骤S204:屏幕检测模块依据回调信息确定设备屏幕的当前状态。
[0048]由于在回调信息中会携带指示设备屏幕的当前状态的信息,因此,通过回调信息即可确定设备屏幕的当前状态。
[0049]对于具体采用什么信息指示设备屏幕的当前状态为亮屏,采用什么信息指示设备屏幕的当前状态为黑屏则可由本领域技术人员根据实际需求进行设置。例如:用“I”指示屏幕的当前状态为亮屏,用“O”指示屏幕的当前状态为黑屏。屏幕检测模块在确定设备屏幕的当前状态信息后,将该信息进行存储。
[0050]步骤S206:屏幕检测模块接收多路分解器发送的屏幕当前状态获取请求,响应该请求将屏幕的当前状态发送至多路分解器。
[0051]多路分解器按照设定时间间隔向屏幕检测模块发出请求,以获取屏幕的当前状态。屏幕检测模块在接收到获取请求后,则会将存储的屏幕的当前状态发送至多路分解器。
[0052]步骤S208:当屏幕的当前状态为关闭状态时,多路分解器向操作系统的电源管理模块申请唤醒时钟,以向操作系统申请在后台调用音频解码器进行音频码流解码。
[0053]多路分解器在接收到屏幕的当前状态后,可根据接收到的信息确定屏幕为关闭还是开启。当屏幕的当前状态为黑屏即关闭时,则执行步骤S208,而当屏幕的当前状态为亮屏即开启时,则执行多媒体播放器默认的播放流程,同时播放音频和视频。
[0054]若不申请唤醒时钟,操作系统则默认关闭音频解码器以及视频解码器,这样,将无法通过音频解码器继续进行音频解码。因此,本步骤中需申请唤醒时钟,唤醒后即可在操作系统后台调用音频解码器进行音频码流解码。
[0055]步骤S210:多路分解器仅将分解的音频码流发送至音频解码器进行解码,以仅进行音频播放。
[0056]多路分解器从网络上获取音视频码流,并将其分解成音频码流和视屏码流,由于本发明实施例中屏幕的当前状态为黑屏故无需播放视频,因此,仅将分解的音频码流发送至音频解码器进行解码即可。音频解码器将音频码流解码后得到音频数据,然后,将得到的音频数据进行渲染后进行声音播放。
[0057]步骤S212:当屏幕的当前状态转为开启时,多路分解器则唤醒由声卡控制的时钟,向操作系统申请前台工作权限,以在前台进行视频码流以及音频码流的解码。
[0058]多路分解器在播放音视频的过程中,依然会按照设定的时间间隔向屏幕检测模块发出请求以获取屏幕的最新状态,当多路分解器判断出屏幕的当前状态发生变化时,则需要申请操作系统前台、后台工作权限的切换。当屏幕由黑屏转为亮屏时,则需要申请操作系统由后台工作权限切换至前台工作权限;当屏幕由亮屏转为黑屏时,则需要申请操作系统由前台工作权限切换至后台工作权限。
[0059]本发明实施例中以屏幕由黑屏转为亮屏为例进行的说明。当屏幕的当前状态为亮屏即屏幕状态为开启时,则需要在操作系统前台进行音频码流以及视频码流的解码操作,此时,则需将操作系统后台工作权限切换至前台工作权限。在进行权限切换时,多路分解器则唤醒由声卡控制的时钟,向操作系统申请前台工作权限。
[0060]步骤S214:多路分解器分别将视频码流发送至视频解码器进行解码,将音频码流发送至音频解码器进行解码。
[0061]操作系统申请前台工作权限成功后,多路分解器即可将从网络上获取音视频码流分解成音频码流和视频码流,将音频码流发送至音频解码器进行解码,然后将解码后的数据进行渲染,进行声音播放。同时,将视频码流发送至视频解码器进行解码,然后将解码后的数据进行渲染,进行视频播放,以实现声音、视频的同源播放。
[0062]需要说明的是,若屏幕的当前状态未
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1