System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于gstreamer的播放器实现多屏同步播放的方法及系统技术方案_技高网

一种基于gstreamer的播放器实现多屏同步播放的方法及系统技术方案

技术编号:44644309 阅读:4 留言:0更新日期:2025-03-17 18:35
本发明专利技术公开了一种基于gstreamer的播放器实现多屏同步播放的方法及系统。本方法将播放设备分为主端和从端,从端设置timer定时器,定时连接主端,获取主端生成的网络时钟、基准时钟、当前播放位置和当前播放视频地址。从端设置与主端相同的网络时钟和基准时钟基于gstreamer的clock机制实现不管主端先起播还是从端先起播都达到同步播放视频列表的功能。和现有技术相比本方法使同步播放更稳定精确、操作简单、不受距离限制、可同步播放视频列表。

【技术实现步骤摘要】

本专利技术涉及流媒体播放,更具体地,本专利技术涉及一种基于gstreamer的播放器实现多屏同步播放的方法及系统


技术介绍

1、近年来,随着电子产业的迅猛发展,流媒体播放技术也不断发展完善,流媒体播放设备比如智能电视的消费需求逐年增长,卖场对商品展示的管理工作也变得更加复杂,越来越多的活动现场和宣传现场使用多屏同步播放达到震撼效果,多屏同步播放被广泛应用。

2、目前一般采用三种方式进行同步播放,一种是使用信号分配器通过hdmi线分发到设备,该方法受传输距离限制;二是通过保证播放设备同时起播达到同步,该方法存在操作繁琐,同步不精确的缺陷;三是通过把设备分为主端和从端,主端把当前播放位置发给从端,从端从主端的播放位置开始播放,该方法存在同步不稳定的缺陷,比如播放中任意一端发生缓冲、暂停等播控操作,播放将失去同步。方法2和方法3都只能保证主端和从端播放视频同一位置,无法判断两端是否播放同一视频,所以无法同步播放视频列表。


技术实现思路

1、本专利技术克服了现有技术在流媒体同步播放受距离限制、操作复杂、同步不稳定且无法同步播放列表的缺陷的问题,提供了一种基于gstreamer的播放器实现多屏同步播放的方法及系统,以期望可以解决现有技术中存在的问题。

2、为解决上述的技术问题,本专利技术的一方面提供了一种基于gstreamer的播放器实现多屏同步播放的方法。

3、一种基于gstreamer的播放器实现多屏同步播放的方法,包括以下步骤:

4、gstreamer的流媒体播放器之间的中间自适应层为终端分配主端、从端角色;

5、所述中间自适应层为主端分配本地ip地址master_ip、端口号,生成net_clock(网络时钟)和base_time(基准时钟);

6、从端设置主端ip地址master_ip、主端端口号,从端连接主端获取net_clock和base_time、current_position(当前播放位置)和current_url(当前播放地址);

7、将生成的net_clock和base_time通过gstreamer接口设置到gstreamer框架层,并检测当前主端和从端是否达到同步状态(synced);

8、如果达到同步状态则开始播放;

9、如果没有达到同步状态则设置同步回调,收到同步回调后开始播放。

10、所述达到同步状态是指,从端使用和主端一样的网络时钟和基准时钟且当前播放位置(current_position)和当前播放url(current_url)。

11、通过将播放设备分为主端和从端,主端生成网络时钟和基准时钟,获取当前播放位置和当前播放url共享给从端。从端使用和主端一样的网络时钟和基准时钟基于gstreamer的clock机制达到播放位置同步。

12、进一步的技术方案为,所述中间自适应层生成net_clock和base_time具体步骤为:

13、通过gstreamer接口获取到当前默认系统时钟(system clock),创建新的时钟提供器(provider_clock)并获取对应的base_time;

14、通过时钟提供器获取主端的时钟同步端口,并通过获取到主端的master_ip以及时钟同步端口生成新的net_clock。

15、更进一步的技术方案为,在执行主端分配本地ip地址master_ip后,执行以下步骤:

16、中间自适应层创建socket服务线程,并监听是否捕获到新的从端连接;

17、如果捕获到新的从端连接,获取当前播放位置、当前播放url,并和生成的net_clock和base_time一起发送给新捕获到的从端。

18、通过以上步骤,可以不断新增从端加入同步。

19、更进一步的技术方案为,所述从端连接主端获取net_clock和base_time具体包括以下步骤;

20、通过获取到的master_ip,主端端口号连接主端;

21、如果连接失败,创建定时器线程,每隔一定时间间隔连接一次,直到连接成功且成功获取到net_clock、base_time、current_position和current_url;

22、连接成功后,结束线程释放资源。

23、更进一步的技术方案为,在播放需要暂停时,需要将状态切换到pause;

24、当需要重新开始播放时,先设置net_clock和base_time;

25、检测主端和从端当前是否达到同步状态,如果没有则设置同步回调;

26、直至检测达到同步状态,则开始播放。

27、为了避免一个终端暂停后丢失同步的情况发生,在暂停时,可以一个终端暂停,也可以所有终端全部暂停。

28、但在需要重新开始播放时,必须检测到主端和从端当前已经达到同步状态,只有达到同步状态后才能开始播放,此时播放的视频也是同步的。

29、更进一步的技术方案为,主端检测达到同步状态,开始播放之前,执行以下步骤:

30、从端检测当前播放url和master的url是否一致,

31、一致则开始播放;

32、不一致则抛送从属于media_info事件通知上层应用重新播放主端的url;

33、从端获得主端的url,从端设置主端ip地址master_ip并继续执行后续步骤。

34、从端在当前播放url和主端url不一致时,抛送media_info事件通知上层产品应用播放主端url,实现视频列表同步。

35、更进一步的技术方案为,在结束播放时,将net_clock和base_time恢复为默认值,结束socket服务线程释放资源。

36、本专利技术的另一方面一方面提供了一种基于gstreamer的播放器实现多屏同步播放的系统。

37、一种基于gstreamer的播放器实现多屏同步播放的系统,包括,gstreamer的流媒体播放器之间的中间自适应层、gstreamer框架层,、主端、从端;

38、所述gstreamer的流媒体播放器之间的中间自适应层用于为终端分配主端、从端角色;

39、为主端分配本地ip地址master_ip、端口号,生成net_clock和base_time;

40、所述gstreamer框架层用于接受生成的net_clock和base_time,并检测当前主端和从端是否达到同步状态;

41、所述主端用于接受生成的本地ip地址master_ip、端口号,生成net_clock和base_time;

42、所述从端用于连接主端获取net_clock和base_time。

43、与现有技术相比,本专利技术至少具有以下有益效果:本方法将播放设备分为主端和从端,从端设置timer定时器,定时连接主本文档来自技高网...

【技术保护点】

1.一种基于gstreamer的播放器实现多屏同步播放的方法,其特征在于,包括以下步骤:

2.如权利要求1所述的一种基于gstreamer的播放器实现多屏同步播放的方法,其特征在于,所述中间自适应层生成net_clock和base_time具体步骤为:

3.如权利要求1所述的一种基于gstreamer的播放器实现多屏同步播放的方法,其特征在于,在执行主端分配本地IP地址master_ip后,执行以下步骤:

4.如权利要求1所述的一种基于gstreamer的播放器实现多屏同步播放的方法,其特征在于,所述从端连接主端获取net_clock和base_time具体包括以下步骤;

5.如权利要求1所述的一种基于gstreamer的播放器实现多屏同步播放的方法,其特征在于,在播放需要暂停时,需要将状态切换到pause;

6.如权利要求5所述的一种基于gstreamer的播放器实现多屏同步播放的方法,其特征在于,主端检测达到同步状态,开始播放之前,执行以下步骤:

7.如权利要求1所述的一种基于gstreamer的播放器实现多屏同步播放的方法,其特征在于,在结束播放时,将net_clock和base_time恢复为默认值,结束socket服务线程释放资源。

8.一种基于gstreamer的播放器实现多屏同步播放的系统,其特征在于,包括,gstreamer的流媒体播放器之间的中间自适应层、gstreamer框架层、主端、从端;

...

【技术特征摘要】

1.一种基于gstreamer的播放器实现多屏同步播放的方法,其特征在于,包括以下步骤:

2.如权利要求1所述的一种基于gstreamer的播放器实现多屏同步播放的方法,其特征在于,所述中间自适应层生成net_clock和base_time具体步骤为:

3.如权利要求1所述的一种基于gstreamer的播放器实现多屏同步播放的方法,其特征在于,在执行主端分配本地ip地址master_ip后,执行以下步骤:

4.如权利要求1所述的一种基于gstreamer的播放器实现多屏同步播放的方法,其特征在于,所述从端连接主端获取net_clock和base_time具体包括以下步骤;

5.如权利要求1所述的一种基于...

【专利技术属性】
技术研发人员:王翠丽康路周沙金梁敏
申请(专利权)人:四川长虹电器股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1