Skip to content
This repository has been archived by the owner on Oct 13, 2023. It is now read-only.

A simple network classroom Demo based on UDP Multicast, including basic multimedia transmission. Only works in LAN.

License

Notifications You must be signed in to change notification settings

zty199/NetworkClassroom_LAN

Repository files navigation

NetworkClassroom_LAN

Chinese | English

A simple network classroom Demo based on UDP Multicast, including basic multimedia transmission. Only works in LAN.

Realized Features

  • Support basic multimedia transmission based on UDP Multicast , including cam, screen share, mic, stereo mixer, etc.

  • Support 1080p@30Hz or 720p@60Hz video transmission. (Because of HIGH CPU and Network consumption)

  • Support dynamic switch between different devices (cam / audio IO).

  • Support cam resolution adjustment.

  • Support volume adjustment. (Only current audio stream affected, global device volume is controlled by system)

  • Support available devices rescan.

  • Support white board and screen mark when sharing screen.

  • Support multithread data processing to avoid lags in GUI.

  • Support file transmission based on TCP connection.

  • Support text message transfer.

  • Support student sign-in sheet export.

Existing Issues

  • When using wireless cards, UDP Multicast is extremely Unreliable, both sending and receiving ends meet serious packet loss. Ethernet cards recommended.

  • Video frames captured from cam and screen are directly encoded into JPEG and scaled by CPU(?), source resolution higher than 1080p may cause serious lags on GUI.

  • Cam / Audio IO devices' names are Inaccurate on Linux (based on device drivers), most of audio IO devices shown in combobox don't work (not physically connected to any devices, just ports reserved).

  • Available devices list can't refresh in real time. Choosing one that is removed may cause crash, and new devices connected won't show up unless corresponding function button is clicked.

Future Plan

  • Try to use ffmpeg to deal with audio and video.

Reference

Credit

Clarification

This project is my graduation design for undergraduates. Only for study and communication.

About

A simple network classroom Demo based on UDP Multicast, including basic multimedia transmission. Only works in LAN.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published