Chinese | English
A simple network classroom Demo based on UDP Multicast, including basic multimedia transmission. Only works in LAN.
-
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.
-
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.
- Try to use ffmpeg to deal with audio and video.
This project is my graduation design for undergraduates. Only for study and communication.