(校园迷惑行为:学生集中在教室,老师在办公室远程上课或者放网课视频......)
原本计划是能在学校的内网直接使用的,老师办公室连接内网开启课堂,学生即使在宿舍也可以通过校园内网加入课堂。然而实际情况是,学校内网分了很多网段,同一个宿舍里内网都不在一个网段里......虽然 UDP 组播理论上可以跨网段,但是实际测试的时并不行......这就很难受了,最后只能在一个路由器上挂两台笔记本来演示了......
加上音视频传输没有编解码,就直接传的音频数据包和一张张的连续截图,不仅音画同步比较捉急,还占 CPU 和带宽......只能说基本毫无用处了。


中文 

P.S. 这就是个软工本科毕业设计,基本没有任何实用价值 =_= ......给大家看着玩玩吧,说不定以后还有人能用得上 XD......
仓库地址:https://gitee.com/zty199/NetworkClassroom_LAN
https://github.com/zty199/NetworkClassroom_LAN
局域网网络课堂软件
一个简单的基于 UDP 组播的网络课堂软件 Demo,包含基本的多媒体传输。仅适用于局域网。
已实现的功能
基于 UDP 组播实现了基本的多媒体传输功能,包括摄像头、桌面共享,语音、立体声混音设备等数据传输
支持 1080p@30Hz 或 720p@60Hz 视频传输(对于 CPU 和 网络带宽 要求较高)
支持摄像头、声音输入输出设备动态切换;支持刷新可用设备列表
支持摄像头分辨率调节
支持音频输入输出流音量调节(仅调节 应用程序 音量,音频设备全局音量由系统控制)
支持多线程收发数据,避免单线程造成 GUI 卡顿
支持文件传输,基于 TCP 协议
目前存在的问题
使用无线网卡时,UDP 组播极为不稳定 ,收发数据包均存在严重丢包问题。推荐使用有线网卡
目前摄像头和桌面画面由 CPU(?)直接编码为 JPEG 格式并缩放进行传输,原始画面分辨率高于 1080p 会造成卡顿
Linux 下获取的音频/视频设备名称不明确(由设备驱动决定),声音设备列表中大多数设备不可用。(多数是声卡硬件原始预留的端口,未连接任何物理设备)
可用设备列表不能实时刷新,使用设备过程中移除设备可能造成程序崩溃,新插入设备不会自动识别,需要关闭对应功能后才能刷新设备列表
部分运行效果图