## Tổng quan nghiên cứu

Trong bối cảnh công nghệ truyền phát video qua Internet ngày càng phát triển, WebRTC (Web Real-Time Communication) nổi lên như một giải pháp mã nguồn mở cho phép giao tiếp video trực tiếp, thời gian thực trên nền tảng web và ứng dụng di động. Từ năm 2019, tất cả các trình duyệt phổ biến đều hỗ trợ WebRTC, tạo điều kiện thuận lợi cho việc triển khai các dịch vụ truyền phát video. Tuy nhiên, chất lượng truyền phát video qua WebRTC còn chịu ảnh hưởng bởi nhiều yếu tố kỹ thuật và mạng, dẫn đến nhu cầu nghiên cứu và đánh giá các yếu tố này để nâng cao trải nghiệm người dùng (Quality of Experience - QoE).

Luận văn tập trung nghiên cứu và đánh giá một số yếu tố ảnh hưởng đến chất lượng truyền phát video sử dụng công nghệ WebRTC, với phạm vi nghiên cứu bao gồm các kịch bản mô phỏng và thí nghiệm thực tế trên môi trường mạng giả lập. Mục tiêu chính là xác định các tham số kỹ thuật và mạng ảnh hưởng đến QoE, từ đó đề xuất các giải pháp cải thiện chất lượng dịch vụ. Thời gian nghiên cứu tập trung vào năm 2022 tại Đại học Công nghệ Thông tin và Truyền thông, Đại học Thái Nguyên.

Nghiên cứu có ý nghĩa quan trọng trong việc cung cấp cơ sở khoa học cho việc tối ưu hóa các dịch vụ truyền phát video thời gian thực, góp phần nâng cao hiệu quả truyền thông đa phương tiện trên nền tảng WebRTC, đồng thời hỗ trợ các nhà phát triển và doanh nghiệp trong việc cải thiện chất lượng dịch vụ và trải nghiệm người dùng.

## Cơ sở lý thuyết và phương pháp nghiên cứu

### Khung lý thuyết áp dụng

Luận văn dựa trên các lý thuyết và mô hình sau:

- **Mô hình QoE (Quality of Experience):** Được định nghĩa theo tiêu chuẩn ITU P.10/G100, QoE phản ánh mức độ hài lòng của người dùng với dịch vụ truyền phát video, bao gồm các yếu tố chất lượng không gian (độ phân giải, codec, tốc độ bit) và chất lượng tạm thời (độ trễ, mất gói, đồng bộ âm thanh-video).

- **Mô hình E-Model của ITU-T Rec:** Áp dụng để đánh giá đồng bộ hóa âm thanh, sử dụng hệ số R (R-factor) để ước lượng mức độ hài lòng của người dùng dựa trên độ trễ và tỷ lệ mất gói.

- **Mô hình KPI (Key Performance Indicator) cho WebRTC:** Bao gồm các chỉ số như KPIaudiosync (đồng bộ âm thanh), KPIvideosync (đồng bộ video), KPIavsync (đồng bộ âm thanh-video), KPIresolution (ổn định độ phân giải), KPIfps (ổn định tốc độ khung hình), KPIQaudio (chất lượng âm thanh), KPIQvideo (chất lượng video).

- **Mô hình ICE (Interactive Connectivity Establishment):** Giúp thiết lập kết nối ngang hàng (P2P) hoặc qua máy chủ chuyển tiếp (RELAY) trong môi trường NAT và tường lửa.

Các khái niệm chính bao gồm: đồng bộ hóa (synchronization), tính ổn định (stability), chất lượng (quality), codec Opus và VP8, băng thông, jitter buffer, và các giao thức truyền tải UDP, TCP.

### Phương pháp nghiên cứu

Nghiên cứu sử dụng phương pháp thực nghiệm với cỡ mẫu gồm các phiên WebRTC có 2 và 3 người dùng, được thực hiện ít nhất 10 lần mỗi kịch bản để đảm bảo tính lặp lại và độ tin cậy. Dữ liệu thu thập từ các phiên được ghi lại bằng công cụ webrtc-internals tích hợp trong trình duyệt Chrome, lưu trữ dưới dạng file JSON để phân tích.

Phân tích dữ liệu sử dụng các chỉ số KPI đã xây dựng để đánh giá đồng bộ hóa, tính ổn định và chất lượng dịch vụ. Mạng được giả lập bằng phần mềm Network Emulator (NetEm) trên hệ điều hành Linux để tạo các điều kiện băng thông khác nhau (250 kbit/s và 50 Mbit/s), từ đó đánh giá ảnh hưởng của băng thông đến chất lượng truyền phát.

Quá trình đo được tự động hóa bằng chương trình Python kết hợp với bộ kiểm thử Selenium, cho phép khởi tạo phiên WebRTC, phát video mẫu định dạng .y4m (1280x720, 60fps) và ghi nhận các thông số kỹ thuật trong suốt phiên.

## Kết quả nghiên cứu và thảo luận

### Những phát hiện chính

1. **Ảnh hưởng của băng thông đến chất lượng video:** Ở băng thông thấp (250 kbit/s), độ phân giải video gửi và nhận duy trì ở mức 320x180 px, tốc độ khung hình dao động từ 30 đến 60 fps nhưng có hiện tượng chập chờn và giảm xuống 0 fps tại một số thời điểm. Ở băng thông cao (50 Mbit/s), độ phân giải duy trì ổn định ở 960x540 px với tốc độ khung hình gần như không đổi ở 60 fps.

2. **Sự khác biệt giữa kết nối P2P và RELAY:** Giai đoạn RELAY cung cấp kết nối ổn định hơn ở băng thông thấp, tuy nhiên chất lượng video bị giảm do mã hóa lại tại máy chủ TURN. Giai đoạn P2P cho phép truyền video chất lượng cao hơn ở băng thông cao nhưng có tính ổn định thấp hơn ở băng thông thấp.

3. **Chất lượng âm thanh không tăng theo băng thông:** Tốc độ bit âm thanh duy trì ổn định khoảng 16-24 kbit/s, không tăng khi băng thông tăng, do âm thanh trong thí nghiệm là tín hiệu bíp thay thế, không phải âm thanh thực tế.

4. **Phiên có 3 người dùng chỉ sử dụng giao tiếp RELAY:** Không xuất hiện giai đoạn P2P, dẫn đến việc mỗi khách hàng chỉ gửi dữ liệu một lần, giảm tải băng thông gửi nhưng chất lượng video nhận được thấp hơn do mã hóa lại tại máy chủ.

### Thảo luận kết quả

Các kết quả cho thấy băng thông là yếu tố quyết định lớn nhất ảnh hưởng đến chất lượng video trong WebRTC. Ở băng thông thấp, việc sử dụng máy chủ RELAY giúp duy trì kết nối ổn định nhưng giảm chất lượng do mã hóa lại, trong khi P2P có thể cung cấp chất lượng cao hơn nhưng không ổn định. Điều này phù hợp với các nghiên cứu trước đây về ảnh hưởng của băng thông và kiến trúc mạng đến QoE.

Chất lượng âm thanh không thay đổi theo băng thông do đặc thù thí nghiệm, cho thấy cần nghiên cứu thêm với âm thanh thực tế để đánh giá chính xác hơn. Việc phiên 3 người dùng chỉ sử dụng RELAY phản ánh hạn chế của triển khai WebRTC hiện tại, ảnh hưởng đến khả năng mở rộng và chất lượng dịch vụ.

Dữ liệu có thể được trình bày qua các biểu đồ thời gian thể hiện độ phân giải, tốc độ khung hình, tốc độ bit và jitter buffer, giúp trực quan hóa sự biến động và ảnh hưởng của các yếu tố mạng đến chất lượng truyền phát.

## Đề xuất và khuyến nghị

1. **Tối ưu hóa chuyển đổi giữa RELAY và P2P:** Phát triển thuật toán tự động chuyển đổi linh hoạt giữa hai chế độ để cân bằng giữa độ ổn định và chất lượng video, đặc biệt trong điều kiện băng thông thay đổi.

2. **Cải tiến mã hóa video tại máy chủ RELAY:** Áp dụng các kỹ thuật mã hóa hiệu quả hơn để giảm thiểu mất mát chất lượng khi truyền qua máy chủ TURN, nâng cao QoE cho các phiên nhiều người dùng.

3. **Phát triển cơ chế điều chỉnh bitrate và độ phân giải động:** Tự động điều chỉnh các tham số video dựa trên điều kiện mạng thực tế nhằm giảm thiểu hiện tượng giật lag và dừng hình.

4. **Nâng cao đồng bộ hóa âm thanh và video:** Áp dụng bộ đệm jitter tối ưu và thuật toán đồng bộ hóa để giảm thiểu độ trễ và lỗi đồng bộ, cải thiện trải nghiệm người dùng.

Các giải pháp nên được triển khai trong vòng 6-12 tháng, do các nhà phát triển phần mềm WebRTC và các nhà cung cấp dịch vụ truyền thông đa phương tiện thực hiện.

## Đối tượng nên tham khảo luận văn

1. **Nhà phát triển phần mềm WebRTC:** Hướng dẫn tối ưu hóa chất lượng truyền phát video và âm thanh, cải thiện thuật toán điều chỉnh bitrate và đồng bộ hóa.

2. **Doanh nghiệp cung cấp dịch vụ hội nghị trực tuyến:** Áp dụng các kết quả nghiên cứu để nâng cao chất lượng dịch vụ, giảm thiểu sự cố gián đoạn và cải thiện trải nghiệm người dùng cuối.

3. **Nhà nghiên cứu trong lĩnh vực truyền thông đa phương tiện:** Cung cấp cơ sở dữ liệu thực nghiệm và mô hình đánh giá QoE, làm nền tảng cho các nghiên cứu tiếp theo về truyền phát video thời gian thực.

4. **Chuyên gia mạng và viễn thông:** Hiểu rõ ảnh hưởng của các yếu tố mạng như băng thông, jitter, tường lửa đến chất lượng dịch vụ WebRTC, từ đó đề xuất các giải pháp hạ tầng phù hợp.

## Câu hỏi thường gặp

1. **WebRTC là gì và tại sao nó quan trọng trong truyền phát video?**  
WebRTC là công nghệ mã nguồn mở cho phép giao tiếp video, âm thanh thời gian thực trên trình duyệt mà không cần phần mềm bên ngoài, giúp giảm độ trễ và tăng tính tương tác.

2. **Yếu tố nào ảnh hưởng lớn nhất đến chất lượng video trong WebRTC?**  
Băng thông mạng và kiến trúc kết nối (P2P hoặc RELAY) là hai yếu tố chính ảnh hưởng đến độ phân giải, tốc độ khung hình và độ ổn định của video.

3. **Tại sao phiên có 3 người dùng chỉ sử dụng RELAY?**  
Do hạn chế của triển khai WebRTC hiện tại, khi có nhiều người dùng, việc sử dụng RELAY giúp giảm tải băng thông gửi nhưng có thể làm giảm chất lượng do mã hóa lại tại máy chủ.

4. **Làm thế nào để cải thiện đồng bộ hóa âm thanh và video?**  
Sử dụng bộ đệm jitter tối ưu và thuật toán đồng bộ hóa dựa trên độ trễ thực tế giúp giảm lỗi đồng bộ và nâng cao trải nghiệm người dùng.

5. **Có thể áp dụng kết quả nghiên cứu này vào thực tế như thế nào?**  
Các nhà phát triển và doanh nghiệp có thể tối ưu thuật toán điều chỉnh chất lượng video, cải tiến kiến trúc mạng và nâng cao cơ chế đồng bộ để cải thiện QoE trong các ứng dụng WebRTC.

## Kết luận

- Nghiên cứu đã xác định các yếu tố chính ảnh hưởng đến chất lượng truyền phát video WebRTC gồm băng thông, kiến trúc kết nối, đồng bộ hóa và codec.  
- Phương pháp thực nghiệm với các kịch bản giả lập mạng và phân tích KPI cung cấp dữ liệu chi tiết về ảnh hưởng của từng yếu tố.  
- Kết quả cho thấy sự khác biệt rõ rệt giữa các chế độ kết nối P2P và RELAY, cũng như ảnh hưởng của băng thông đến chất lượng video và âm thanh.  
- Đề xuất các giải pháp tối ưu hóa chuyển đổi kết nối, cải tiến mã hóa và đồng bộ hóa nhằm nâng cao QoE.  
- Các bước tiếp theo bao gồm triển khai thử nghiệm các giải pháp đề xuất và mở rộng nghiên cứu với các kịch bản thực tế đa dạng hơn.

Khuyến khích các nhà phát triển và doanh nghiệp ứng dụng kết quả nghiên cứu để nâng cao chất lượng dịch vụ truyền phát video thời gian thực trên nền tảng WebRTC.