android 联屏播放原理

下午工作比较清闲,闲得无事,准备研究一下联屏播放的功能,因为以前有想过这个的操作方法,以前看过和风 做的联屏播放 ,

想了一下,无非就是实时检测当前的进度和主屏幕的进度,做一个对比,然后把其他的屏幕进度和主屏幕进行统一就行了,写了一个小demo,效果还不错,分享给大家,后面如果有需求,我再来细化。

 

android 联屏播放原理

1:从画面看,想要同步,就必须有语言的交互,

     使用服务器http来同步?显然时间误差比较大

2:第一个想到的就是UDP通讯。说到这里,大家基本应该知道怎么实现了

3:设定一台为主屏幕,其他的屏幕全部是副屏

4:主屏和副屏在同意局域网下,UDP指令获取所有的设备IP地址

5:主屏在开始播放的时候,实时发消息给所有的IP,把当前进度发过去

6:副屏接受进度,根据自己当前的进度来计算,如果误差大于50 .就把自己的进度往前移动一定的进度

7:移动的进度怎么算呢 ?这个就需要看发消息的时间差

     主屏的发送时间和设备接受的时间,有一个时间差,这个时间肯定是要计算进去的。每一秒算一次,基本上3秒后,屏幕播放      是统一的,

这里给出思路,暂时不贴代码了 ,需要demo的,去这里下载把 ,demo比较简单,但是基本实现了功能,具体细节的东西,还是需要自己去深入研究下

  代码使用方法 :

   AppConfig 中的App_TYPE   用来区分主副屏幕,需要分开运行,

  主屏的按钮,点击一下,就可以获取副屏的IP了

 https://pan.baidu.com/s/1QgNt4dd1ZVyObhn4Sjm8vA

 提取码:e1o9