欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2017105060479
申请人: 武汉斗鱼网络科技有限公司
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2025-04-21
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种切换录屏直播分辨率的方法,其特征在于,所述方法包括:在录屏直播的过程中,监听屏幕显示方向是否发生变化;

若所述屏幕显示方向发生变化,则判断录屏组件的分辨率与当前屏幕分辨率是否匹配;

若所述录屏组件的分辨率与所述当前屏幕分辨率不匹配,则解除当前Surface组件与所述录屏组件之间的绑定关系;

将所述录屏组件与新建Surface组件进行绑定,并将所述录屏组件的分辨率变更为所述当前屏幕分辨率,以及,将编码器的分辨率设置为所述当前屏幕分辨率,并根据所述编码器的分辨率更新直播推流库中的分辨率信息;

其中,在所述解除当前Surface组件与所述录屏组件之间的绑定关系之后,且在所述将所述录屏组件与新建Surface组件进行绑定和所述将编码器的分辨率设置为所述当前屏幕分辨率之前,所述方法还包括:重置所述编码器,并在所述编码器中创建所述新建Surface组件;

其中,所述将所述录屏组件与新建Surface组件进行绑定,包括:在所述编码器的线程中初始化用于判断所述新建Surface组件是否创建完毕的CountDownLatch对象;

监听所述CountDownLatch对象的状态;

当所述CountDownLatch对象的状态表明所述新建Surface组件已创建完毕,将所述录屏组件与所述Surface组件进行绑定。

2.如权利要求1所述的方法,其特征在于,所述判断录屏组件的分辨率与当前屏幕分辨率是否匹配,包括:判断所述录屏组件的预设宽度和预设高度之间的第一尺寸关系是否与当前屏幕宽度和当前屏幕高度之间的第二尺寸关系相匹配;

其中,若所述第一尺寸关系为所述预设宽度大于所述预设高度,且所述第二尺寸关系为所述当前屏幕宽度大于所述当前屏幕高度,则表明所述第一尺寸关系与所述第二尺寸关系匹配;

若所述第一尺寸关系为所述预设宽度小于所述预设高度,且所述第二尺寸关系为所述当前屏幕宽度小于所述当前屏幕高度,则表明所述第一尺寸关系与所述第二尺寸关系匹配;

若所述第一尺寸关系为所述预设宽度大于所述预设高度,且所述第二尺寸关系为所述当前屏幕宽度小于所述当前屏幕高度,则表明所述第一尺寸关系与所述第二尺寸关系不匹配;

若所述第一尺寸关系为所述预设宽度小于所述预设高度,且所述第二尺寸关系为所述当前屏幕宽度大于所述当前屏幕高度,则表明所述第一尺寸关系与所述第二尺寸关系不匹配。

3.如权利要求1所述的方法,其特征在于,所述监听屏幕显示方向是否发生变化,包括:利用DisplayManager.DisplayListener回调监听屏幕显示方向是否发生变化。

4.一种切换录屏直播分辨率的装置,其特征在于,所述装置包括:监听模块,用于在录屏直播的过程中,监听屏幕显示方向是否发生变化;

判断模块,用于若所述屏幕显示方向发生变化,则判断录屏组件的分辨率与当前屏幕分辨率是否匹配;

解除模块,用于若所述录屏组件的分辨率与所述当前屏幕分辨率不匹配,则解除当前Surface组件与所述录屏组件之间的绑定关系;

分辨率更新模块,用于将所述录屏组件与新建Surface组件进行绑定,并将所述录屏组件的分辨率变更为所述当前屏幕分辨率,以及,将编码器的分辨率设置为所述当前屏幕分辨率,并根据所述编码器的分辨率更新直播推流库中的分辨率信息;

重置模块,用于重置所述编码器,并在所述编码器中创建所述新建Surface组件;

其中,所述分辨率更新模块,包括:

创建单元,用于在所述编码器的线程中初始化用于判断所述新建Surface组件是否创建完毕的CountDownLatch对象;

监听单元,用于监听所述CountDownLatch对象的状态;

绑定单元,用于当所述CountDownLatch对象的状态表明所述新建Surface组件已创建完毕,将所述录屏组件与所述Surface组件进行绑定。

5.如权利要求4所述的装置,其特征在于,所述判断模块,具体用于:判断所述录屏组件的预设宽度和预设高度之间的第一尺寸关系是否与当前屏幕宽度和当前屏幕高度之间的第二尺寸关系相匹配;

其中,若所述第一尺寸关系为所述预设宽度大于所述预设高度,且所述第二尺寸关系为所述当前屏幕宽度大于所述当前屏幕高度,则表明所述第一尺寸关系与所述第二尺寸关系匹配;

若所述第一尺寸关系为所述预设宽度小于所述预设高度,且所述第二尺寸关系为所述当前屏幕宽度小于所述当前屏幕高度,则表明所述第一尺寸关系与所述第二尺寸关系匹配;

若所述第一尺寸关系为所述预设宽度大于所述预设高度,且所述第二尺寸关系为所述当前屏幕宽度小于所述当前屏幕高度,则表明所述第一尺寸关系与所述第二尺寸关系不匹配;

若所述第一尺寸关系为所述预设宽度小于所述预设高度,且所述第二尺寸关系为所述当前屏幕宽度大于所述当前屏幕高度,则表明所述第一尺寸关系与所述第二尺寸关系不匹配。

6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现以下步骤:在录屏直播的过程中,监听屏幕显示方向是否发生变化;

若所述屏幕显示方向发生变化,则判断录屏组件的分辨率与当前屏幕分辨率是否匹配;

若所述录屏组件的分辨率与所述当前屏幕分辨率不匹配,则解除当前Surface组件与所述录屏组件之间的绑定关系;

将所述录屏组件与新建Surface组件进行绑定,并将所述录屏组件的分辨率变更为所述当前屏幕分辨率,以及,将编码器的分辨率设置为所述当前屏幕分辨率,并根据所述编码器的分辨率更新直播推流库中的分辨率信息;

其中,在所述解除当前Surface组件与所述录屏组件之间的绑定关系之后,且在所述将所述录屏组件与新建Surface组件进行绑定和所述将编码器的分辨率设置为所述当前屏幕分辨率之前,还包括:重置所述编码器,并在所述编码器中创建所述新建Surface组件;

其中,所述将所述录屏组件与新建Surface组件进行绑定,包括:在所述编码器的线程中初始化用于判断所述新建Surface组件是否创建完毕的CountDownLatch对象;

监听所述CountDownLatch对象的状态;

当所述CountDownLatch对象的状态表明所述新建Surface组件已创建完毕,将所述录屏组件与所述Surface组件进行绑定。

7.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现以下步骤:在录屏直播的过程中,监听屏幕显示方向是否发生变化;

若所述屏幕显示方向发生变化,则判断录屏组件的分辨率与当前屏幕分辨率是否匹配;

若所述录屏组件的分辨率与所述当前屏幕分辨率不匹配,则解除当前Surface组件与所述录屏组件之间的绑定关系;

将所述录屏组件与新建Surface组件进行绑定,并将所述录屏组件的分辨率变更为所述当前屏幕分辨率,以及,将编码器的分辨率设置为所述当前屏幕分辨率,并根据所述编码器的分辨率更新直播推流库中的分辨率信息;

其中,在所述解除当前Surface组件与所述录屏组件之间的绑定关系之后,且在所述将所述录屏组件与新建Surface组件进行绑定和所述将编码器的分辨率设置为所述当前屏幕分辨率之前,还包括:重置所述编码器,并在所述编码器中创建所述新建Surface组件;

其中,所述将所述录屏组件与新建Surface组件进行绑定,包括:在所述编码器的线程中初始化用于判断所述新建Surface组件是否创建完毕的CountDownLatch对象;

监听所述CountDownLatch对象的状态;

当所述CountDownLatch对象的状态表明所述新建Surface组件已创建完毕,将所述录屏组件与所述Surface组件进行绑定。