智慧教室无纸化方案技术背景智慧教室无纸化方案是一种基于现代信息技术,旨在通过数字化手段实现教学过程的无纸化、智能化和高效化的解决方案。 横竖屏适配在Android设备上,横竖屏切换时需要考虑屏幕宽高的变化,确保推拉流两端可以自动适配。编码器需要重启以适应新的分辨率设置,拉流端也需要能够自动播放适应变化后的视频流。3. 智慧教室方案选型本文以大牛直播SDK的Android的SmartServicePublisherV2的同屏demo为例,Android采集计时器,编码打包分别启动RTMP推送和轻量级RTSP服务,Windows ); boolean is_rtsp_server_running(); void stop_rtsp_server(); /* * 发布RTSP流 */ boolean start_rtsp_stream(String stream_name); boolean is_rtsp_stream_running(); String get_rtsp_stream_url
技术背景我们在做无纸化同屏的时候,好多开发者采集到屏幕、麦克风|扬声器数据,除了需要推RTMP出去,或者启动个轻量级RTSP服务,对外提供个拉流的RTSP URL,别的终端过来拉流(小并发场景),还有个技术需求 技术实现实际上,Android同屏,需要录像的话,和采集摄像头数据录像一样,只是数据源不同而已,鉴于不管什么格式的video数据,我们都是投递到模块底层做转换编码,所以本质上没啥差别。 StopRecorder();stream_publisher_.try_release();test_and_disable_post_audio();}};post_or_execute(r);}总结Android平台无纸化同屏 ,如果需要本地录像的话,实现难度不大,只要复用之前开发的录像模块的就可以,对我们来说,同屏采集这块,只是数据源不同而已,如果是自采集的其他数据,我们一样可以编码录像。 以上是Android同屏录像设计,感兴趣的开发者,可以跟我单独沟通交流。
技术背景在写这篇文章之前,实际上几年之前,我们就有非常稳定的无纸化同屏的模块,本文借demo更新,算是做个新的总结,废话不多说,先看图,本文以Android平台屏幕实时采集推送,Windows播放为例 技术考量指标本文以大牛直播SDK前些年实现的Android同屏采集推送为例,大概介绍下一些技术考量指标。1. 轻量级RTSP服务还是RTMP? 我们在做无纸化同屏的时候,问的最多的是,能不能不要自建服务,直接主讲人或教师端,直接启动轻量级RTSP服务,其他终端拉流,如果是小并发,比如5人内的小范围的同屏,Windows平台走轻量级RTSP无可厚非 同屏过程中,重点画面可以快照吗?当然可以,我们同屏采集端,支持采集编码png或jpg格式输出。 总结其实一个好的无纸化同屏系统,需要考虑的有整体组网、分辨率、码率、实时延迟、音视频同步和连续性等各个指标,做容易,做好难,上述抛砖引玉,未能面面俱到,感兴趣的开发者,可以跟我单独交流。
教师和学生互动:学生端如需作为示范案例,屏幕数据共享给其他同学,只需请求同屏,数据反推到RTMP服务器,其他学生查看即可。 6. mMediaProjectionManager = (MediaProjectionManager) getSystemService(Context.MEDIA_PROJECTION_SERVICE); } 横竖屏自动适配 横竖屏状态下,采集的屏幕宽高不一样,如果横竖屏切换,这个时候,需要考虑到横竖屏适配问题,确保比如竖屏状态下,切换到横屏时,推拉流两端可以自动适配,横竖屏自动适配,编码器需要重启,拉流端,需要能自动适配宽高变化 width, int height, int clipedLeft, int clipedTop, int clipedWidth, int clipedHeight); 文字、图片水印 好多场景下,同屏者会把公司 rtsp_handle_ = 0; Log.e(TAG, "启动rtsp server失败!
一、背景 为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,我们研发了轻量级RTSP服务开发包。 单播不再赘述,这里重点介绍下我们的组播技术方案: 组播解决的主要痛点是服务器部署和带宽占用问题,一般来说,内网电子教室/无纸化/实时同屏场景用RTMP推送+RTMP服务器,然后其他端从服务器拉取RTMP 通过组播技术方案,只要网络设备支持组播组网,轻松实现多并发的同屏/摄像头直播场景。 经长时间测试,毫秒级延迟,完全满足内网同屏技术指标。 教师和学生互动:学生端如需作为示范案例,屏幕数据共享给其他同学,只需请求同屏,数据反推到RTMP服务器,其他学生查看即可。 6.
背景分析 互联网同屏直播越来越火热,我们知道很多游戏主播都采用同屏的方式给观众直播,同屏直播组件层出不穷,SkeyeLive就是OpenSKEYE视开视频云团队研发的一款简单、高效、稳定的集采集,编码 SkeyeLive同屏解决方案 从早期的简单拉rtsp、rtmp流再转推rtmp或者rtsp分发,到现在形成完善的音视频采集,到超低延迟,高并发的流媒体综合功能组件软件,SkeyeLive已经经过了5年的开发迭代历史 8432) 即可同步拉取skeyelive服务端的流,SkeyeLive提供了Skeyeliveplayer同屏客户端SDK组件和播放器源码,通过几个非常简单的API接口即可实现同屏客户端的同屏播放。 100ms以内,最高不超过300ms; 8、同屏播放端支持麦克风、扬声器单独和同时播放; 9、同屏直播单台并发不低于200台并发; 10、同屏播放端支持断线重连,5秒内恢复重连; 11、支持7*24小时运行 EasyScreenLive进行简单的配置即可进入现场直播,用户可以在多终端收看网络游戏直播; * 无纸化会议同屏: 随着科技的发展,无纸化会议服务有效的实现了单位与单位、单位与合作商之间的对接,同屏服务能更好的解决客户的实际需求
背景分析互联网同屏直播越来越火热,我们知道很多游戏主播都采用同屏的方式给观众直播,同屏直播组件层出不穷,SkeyeLive就是OpenSKEYE视开视频云团队研发的一款简单、高效、稳定的集采集,编码,推流和流媒体 SkeyeLive同屏解决方案从早期的简单拉rtsp、rtmp流再转推rtmp或者rtsp分发,到现在形成完善的音视频采集,到超低延迟,高并发的流媒体综合功能组件软件,SkeyeLive已经经过了5年的开发迭代历史 8432)即可同步拉取skeyelive服务端的流,SkeyeLive提供了Skeyeliveplayer同屏客户端SDK组件和播放器源码,通过几个非常简单的API接口即可实现同屏客户端的同屏播放。 100ms以内,最高不超过300ms;8、同屏播放端支持麦克风、扬声器单独和同时播放;9、同屏直播单台并发不低于200台并发;10、同屏播放端支持断线重连,5秒内恢复重连;11、支持7*24小时运行,长期运行无累计延迟 进行简单的配置即可进入现场直播,用户可以在多终端收看网络游戏直播;* 无纸化会议同屏: 随着科技的发展,无纸化会议服务有效的实现了单位与单位、单位与合作商之间的对接,同屏服务能更好的解决客户的实际需求。
互联网同屏直播越来越火热,我们知道很多游戏主播都采用同屏的方式给观众直播,同屏直播组件层出不穷,EasyScreenLive就是TSINGSEE青犀视频团队研发的一款简单、高效、稳定的集采集,编码,组播 ,推流和流媒体RTSP服务于一身的同屏功能组件,具有低延时, 高效能,低丢包等特点。 EasyScreenLive无法正常启动 用户测试EasyScreenLive同屏功能,启动时发现程序报错缺少mfc100d.dll文件,所以不能启动: ? 关于EasyScreenLive同屏组件 课堂同屏直播: 可以通过PC、手机、平板电脑等多种设备的摄像头为视频源,进行对外的课堂同屏直播服务输出; 网络游戏直播: 游戏直播人只要有一台接入网络的电脑,下载并使用 EasyScreenLive进行简单的配置即可进入现场直播,用户可以在多终端收看网络游戏直播; 无纸化会议同屏: 随着科技的发展,无纸化会议服务有效的实现了单位与单位、单位与合作商之间的对接,同屏服务能更好的解决客户的实际需求
EasyScreenLive是一款简单、高效、稳定的集采集,编码,组播,推流和流媒体RTSP服务于一身的同屏功能组件,在大屏显示投屏,无纸化会议同屏演示,课堂同屏等,可以配合全屏显示,在很多项目中都能够实现项目推流的需求 上一篇文中我们讲了EasyScreenLive推RTSP流到EasyDarwin(EasyScreenLive推流组件推RTSP流到EasyDarwin),本文以EasyDSS为主,带着大家演示一遍看下推
display this help and exit [root@56-201 ~]# 这里不准备演示 scriptreplay 的使用方法,其实也很简单 这里接合重定向实现文本终端的同屏 qlen 1000 link/ether 52:54:00:16:5e:11 brd ff:ff:ff:ff:ff:ff [root@56-201 ~]# ---- 目标 通过重定向实现文本终端同屏 通过跟踪日志实现文本终端同屏 ---- 创建日志 [root@56-201 jail]# ll total 0 drwxr-xr-x. 2 root root 30 7月 30 19:04 bin bin lib64 [root@56-201 jail]# 之后从客户端 terminal 中看到的就是服务端中的内容,这个方法客户端登录后要主动使用 tail 命令,服务端不用做什么别的操作 两种同屏效果
技术背景好多开发者,希望我们能系统的介绍下无纸化同屏的原理和集成步骤,以Android平台为例,无纸化同屏将Android设备上的屏幕内容实时投射到另一个显示设备(如Windows终端、国产化操作系统或另一台 技术考量指标本文以大牛直播SDK Android同屏采集推送为例,介绍下我们前些年做Android同屏采集推送的时候,一些注意点:声明所需权限:在Android应用的AndroidManifest.xml 如H.264、H.265等,以及设置合适的分辨率、帧率、码率,以适应不同的网络环境和接收设备的性能;流媒体协议:为了将编码后的视频流实时传输到接收端,Android无纸化同屏技术通常采用RTMP推流模式或轻量级 技术实现本文以大牛直播SDK的Android的SmartServicePublisherV2的同屏demo为例,Android采集计时器,编码打包分别启动RTMP推送和轻量级RTSP服务,Windows 总结以上是Android平台屏幕采集、音频播放声音采集、麦克风采集编码打包推送到RTMP和轻量级RTSP服务的相关技术实现,做成高稳定低延迟的同屏系统,还需要有配套好的RTMP、RTSP直播播放器,整体部署
技术背景我们在做Android端同屏的时候,开发者希望可以高版本的Android系统上,在设备支持的前提下,可以采集到扬声器输出的audio,并支持和麦克风采集的audio相互切换,实现无纸化|智慧教室同屏不同 = null) {old.close();Log.i(TAG, "stop_audio_playback_capture capture.close.");}}启动RTMP推送或轻量级RTSP服务过程中 return this;}}.set(type);post_or_execute(r);return true;}播放效果如下(Android采集屏幕和麦克风|扬声器audio,然后推送到RTMP服务和轻量级RTSP 服务),扬声器audio采集,特别是视频播放模式下,比如无纸化同屏过程中,需要放个宣传片,或者一些视频材料,非常方便:总结Android平台扬声器播放声音的采集,在无纸化同屏等场景下,意义很大,早期低版本的
几年来,我们在做无纸化同屏或在线教育相关场景的时候,总是被一件事情困扰:如何实现Android平台的系统内录,并推送到其他播放端,常用的场景比如做无纸化会议或教育的时候,主讲人或老师需要放一个视频, 一般来说,做无纸化会议或教育同屏的公司,如果硬件是厂商定制的,可以跟厂商提出来,修改ROM,得到内录audio权限和数据。为此,我们专门设计了个接口,便于有这个权限的厂商使用。 我们考虑到,在做无纸化同屏或者教育投屏的时候,一般来说,主要还是采集麦克风音频为主,中间如果有视频播放或者类似需求的时候,我们把内录audio的打开即可(也可以做混音模式,或者推送过程中,实时静音麦克风或扬声器数据源 libPublisher.SmartPublisherSetInputAudioVolume(publisherHandle, index, 0.0f);}无图无真相,Android平台RTMP推送端或者轻量级RTSP 服务测,采集到屏幕画面和扬声器声音,打包传输,RTMP或RTSP播放端录制下来的同屏画面视频如下:视频内容总结低版本的Android系统,方案1应该是相对可行但局限很大的选择,方案2大多时候,非定制设备
投屏技术已经被大量用在身边的产品,比如电视投屏,投影仪,视频会议产品中。 在iOS平台外的其他平台中都已经有非常成熟的标准和实现。 这样可以方便实现跨平台的多屏共享。 这中投屏方案使用了iOS原生的投屏能力,并且是完全的软件方案,非常方便进行集成和使用。 Airplay Mirroring客户端的同屏交互过程,分为三个主要步骤: 设备广播与发现 信息交互与能力协商 音视频数据接收与解扰 设备广播与发现 Airplay设备间的广播与发现通过Bonjour协议进行 该部分协议协议格式类似rtsp协议格式。主要分为两个阶段,设备匹配与和能力协商。 当发送端链接服务端后,设备匹配过程即开始。
投屏技术已经被大量用在身边的产品, 比如电视投屏, 投影仪, 视频会议产品中. 在iOS平台外的其他平台中都已经有非常成熟的标准和实现. 这样可以将小屏映射到大屏,可以无线音乐,可以图片分享等等. 但是Airplay属于苹果私有协议方案,设备间的协商与传输过程都进行了加密处理,并不能用于其他平台中。 这样可以方便实现跨平台的多屏共享。 Airplay Mirroring客户端的同屏交互过程,分为三个主要步骤: 1, 设备广播与发现 2, 信息交互与能力协商 3, 音视频数据接收与解扰 设备广播与发现: Airplay设备间的广播与发现通过 该部分协议协议格式类似rtsp协议格式。主要分为两个阶段,设备匹配与和能力协商。 当发送端链接服务端后,设备匹配过程即开始。
很多开发者在做Android平台RTMP推流或轻量级RTSP服务(摄像头或同屏)时,总感觉接口不够用,以大牛直播SDK为例 (Github) 我们来总结下,我们常规需要支持的编码前音视频数据有哪些类型: CAMERA_FACING_BACK with 0, CAMERA_FACING_FRONT with 1 * * @param curOrg: * PORTRAIT = 1; //竖屏 * LANDSCAPE = 2; //横屏 home键在右边的情况 * LANDSCAPE_LEFT_HOME_KEY = 3; //横屏 home键在左边的情况 支持RGBA数据接入(支持裁剪后数据接入,主要用于同屏场景): /** * Set live video data(no encoded data). 支持RGB565数据接入(主要用于同屏场景): /** * Set live video data(no encoded data).
使用无线投屏技术原理:无线投屏技术允许设备通过Wi-Fi网络或其他无线连接方式,将屏幕内容实时投射到另一台设备上。 在需要投影的设备上打开“设置”或“投影”选项,选择“无线投屏”或“屏幕镜像”等类似功能。在手机上搜索并连接另一台设备,即可实现屏幕内容的实时共享。 注意:该方法对于电脑系统的要求较高,且不能进行跨系统投屏。5. 使用成熟的屏幕采集软件使用大牛直播SDK的RTMP直播推送模块,或者轻量级RTSP服务模块,本文以RTMP直播推送为了。 无论是无线投屏、第三方应用、HDMI线连接还是即时通讯软件的屏幕共享功能,都能轻松实现屏幕内容的实时共享。
EasyDSS能支持多屏播放,可兼容Windows、Android、iOS、Mac等操作系统,还能支持CDN转推,具备较强的可拓展性与灵活性。 今天和大家分享一个技术干货,如何使用OBS推流到EasyDSS平台实现同屏播放。 操作步骤如下:1)首先,打开OBS:2)打开设置,选择推流:3)按照rtmp://{ip}:{port}/{application}/id这个规则,配置相关参数后,即可推送流成功,实现视频直播同屏的效果 ,如图:我们在此前的文章也分享过如何使用OBS进行推流录屏与直播,感兴趣的用户可以翻阅我们往期的文章进行了解。
适用于在线教育、智慧教室|无纸化推屏|会议、运营商视频云平台、远程医疗、金融双录、智能可视门禁对讲、智慧安防、智能家居、物联网、智能车载、传统硬件领域、媒体移动直播、应急指挥调度(针对保险、城管、交警、 RTSP服务SDK 为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,大牛直播SDK在推送端支持轻量级RTSP服务SDK,推送端SDK支持的功能,内置轻量级RTSP服务SDK后, 录制到MP4文件的录像SDK; RTMP/RTSP多路流媒体转RTMP推送SDK 支持实时拉取的rtmp/rtsp流转发到指定rtmp url; 轻量级RTSP服务SDK 为满足内网无纸化 : 智慧教室|无纸化会议等屏幕采集(推屏) 、RTMP直播推送demo; SmartRelayDemoV2: RTMP|RTSP直播播放SDK、RTMP|RTSP转RTMP推送SDK、RTMP| : 基于ReplayKit采集的智慧教室|无纸化会议等屏幕采集(推屏) 、RTMP直播推送demo,本地下载; SmartiOSRelayDemoV2: RTMP|RTSP直播播放SDK、RTMP
RK3588 芯片内置了 VOP 控制器,支持四路视频同显或异显,可有效提高行业定制的拓展性。 1.1 Android 多屏同显iTOP-RK3588 开发板支持以下屏幕迅为 MIPI 7 寸屏幕标准 HDMI 屏幕(通过 HDMI 线连接)迅为 LVDS 7 寸屏幕迅为 LVDS 10.1 寸 默认打开对应的宏定义为多屏同显。RK3588 VP 和各显示接口的连接关系如下图所示。 ,原因是副屏的画面是主屏映射过去的,所以副屏上显示的是 主屏的分辨率。 如果同样的屏幕情况下,应用支持异显,那么副屏会显示实际正常的分辨率。所以如果要支持双屏或者多屏同显并要求显示正常,双屏或者多屏的屏幕的分辨率比要一致。