RepositoryJavaScript
RobbieXie

RobbieXie/WebRTC-Classroom

基于WebRTC实现的直播教室, 新增NODE端RTMP推流 This is a webrtc demo for teachers and students, teaching by live camera & screen streams & IM communications on the internet.

110stars
19forks
0issues
0views

🎓 Lớp học trực tuyến WebRTC nhỏ gọn, có luôn RTMP push từ Node.js

Demo lớp học trực tuyến dựa trên WebRTC với stream camera, stream màn hình và IM, kèm theo tính năng RTMP push ở phía server.

WebRTC-Classroom là một dự án demo nhỏ cho lớp học trực tuyến, sử dụng WebRTC để truyền media stream P2P giữa giáo viên và học sinh, kết hợp Node.js + Socket.IO để xử lý tín hiệu và trò chuyện. Ngoài ra, dự án còn thêm tính năng đẩy stream về phía Node.js thông qua RTMP để phục vụ phát lại ngoài mạng.

✨ Điểm nổi bật

  • WebRTC P2P: Truyền media stream giữa trình duyệt mà không qua máy chủ trung gian.
  • Coturn hỗ trợ ICE/STUN/TURN: Đảm bảo kết nối P2P hoạt động ngay cả sau NAT hoặc firewall.
  • Node.js + Socket.IO: Xây dựng hệ thống tín hiệu và tính năng trò chuyện (IM) cơ bản.
  • Vue.js frontend: Giao diện người dùng sử dụng Vue.js để quản lý logic giáo viên và học sinh.
  • H5 Web API: Sử dụng navigator.mediaDevices.getUserMedia và getDisplayMedia để lấy stream camera và màn hình.
  • RTMP push từ Node.js: Hỗ trợ đẩy stream về server để phát lại qua RTMP.
  • Hỗ trợ Docker triển khai Coturn: Dễ dàng cấu hình môi trường WebRTC.
  • Cấu trúc rõ ràng: Tách biệt frontend (Vue.js) và backend (Node.js + Socket.IO).

💡 Vì sao đáng chú ý

Khác với các giải pháp thông thường chỉ dựa trên WebRTC, dự án này không chỉ tập trung vào truyền stream P2P mà còn mở rộng với tính năng RTMP push từ phía Node.js, giúp người dùng có thể phát lại nội dung lớp học ra ngoài mạng một cách dễ dàng. Thích hợp cho các demo, protype lớp học trực tuyến hoặc nội dung giáo dục nhỏ lẻ.


#WebRTC #SocketIO #Coturn #NodeJS #RTMP #TiniX

Similar Projects

Discover other similar projects and AI models.

RepositoryTypeScript
freeCodeCamp/freeCodeCamp

freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.

457.9k
Oct 25, 2026
RepositoryJavaScript
Chalarangelo/30-seconds-of-code

Coding articles to level up your development skills

129.3k
Oct 20, 2026
RepositoryC++
ossrs/srs

SRS is a simple, high-performance, AI-driven real-time media server supporting RTMP, WebRTC, HLS, HTTP-FLV, HTTP-TS, SRT, MPEG-DASH, and GB28181, with codec support for H.264, H.265, AV1, VP9, AAC, Opus, and G.711.

29.4k
Oct 18, 2026
RepositoryGo
AlexxIT/go2rtc

Ultimate camera streaming application

14.5k
Oct 25, 2026
RepositoryTypeScript
galaxy-s10/billd-desk

基于Vue3 + WebRTC + Nodejs + Flutter搭建的远程桌面控制、游戏串流

8.7k
Sep 22, 2026
RepositoryC++
anyrtcIO-Community/anyRTC-RTMP-OpenSource

RTMP 推流器,RTMP(HLS)秒开播放器,直播点播,跨平台(Win,IOS,Android)开源代码

4.9k
Apr 22, 2025
RepositoryJava
ant-media/Ant-Media-Server

Ant Media Server — Ultra-low latency streaming engine with WebRTC (~0.5s), SRT, RTMP, HLS, CMAF, adaptive bitrate, transcoding & scaling

4.7k
Oct 21, 2026
RepositoryC++
mpromonet/webrtc-streamer

WebRTC streamer for V4L2 capture devices, RTSP sources and Screen Capture

3.6k
Oct 18, 2026
RepositoryC++
OvenMediaLabs/OvenMediaEngine

OvenMediaEngine (OME) is a Sub-Second Latency Live Streaming Server with Large-Scale and High-Definition. #WebRTC #LLHLS

3.3k
Oct 20, 2026