1. Trang chủ
  2. » Thể loại khác

KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNGĐỒ ÁN LẬP TRÌNH MẠNGĐề tài:Tìm hiểu Media SeverKurento Media Sever (KMS)

21 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 21
Dung lượng 2,76 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Hai yếu tố này liên kết với nhauhơn nữa tại vì sự phát triển các tính năng và dịch vụ web cung cấp có tác độngđến các thành phần khác của hệ sinh thái Internet, ví dụ các hệ thống khác,

Trang 3

Đà Nẵng, tháng 12 năm 2019

MỞ ĐẦU

Word Wide Web (WWW hay Web) là hệ thống được biết đến rộng rãinhất được truy cập qua Internet Hơn nữa, đối với đa số người dung sử dụngInternet, từ “Internet” là tương đương với Web Đối với họ, Internet là những gìbạn truy cập được thông qua trình duyệt Web Hai yếu tố này liên kết với nhauhơn nữa tại vì sự phát triển các tính năng và dịch vụ web cung cấp có tác độngđến các thành phần khác của hệ sinh thái Internet, ví dụ các hệ thống khác, cácnhà cung cấp dịch vụ, doanh nghiệp và người sử dụng Vì lý do đó, sự phát triểncủa web là một thành phần quan trọng trong sự phát triển của bản thân Internet

Ban đầu các trang web, cũng như các trình duyệt web – giao diện để truycập web – chỉ có dạng văn bản đơn giản Sau đó, một trong những cột mốc quantrọng đầu tiên trong sự phát triển của web là sự ra đời của trình duyệt webMosaic, trong đó có một giao diện người dung hiển thị cả đồ hoạ và văn bản, nótrở thành phổ biến trong các tài liệu trên web Sau đó, sự phát triển trong các trìnhduyệt web hiện đại và các công nghệ hỗ trợ đã mang các nội dung đa phương tiệnlên web Video và audio, hình ảnh tĩnh và hình ảnh động cùng được sử dụngtrong các trang web tương tác, đã trở thành một chuẩn mực

Tuy nhiên, nội dung đa pương tiện chủ yếu là chỉ là nội dung tĩnh đượcsản xuất trước đó và phát hành, sau đó được gửi lên web dể đến với mục tiêungười nhận Web, mặt khác, ngày càng trở nên một nền tảng cho truyền thông,thúc đẩy bởi sự gia tang của các mạng xã hội, một địa điểm nơi con người có thểhiện bản than và chia sẻ với bạn bè, gia đình các mảnh khác nhau trong cuộc sốngcủa họ Bất cứ khi nào thông tin liên lạc thời gian thực là cần thiết, nếu khôngnhờ đến sự trợ giúp của phần mềm bổ sung khác, các trang web chỉ có thể cungcấp tin nhắn tức thời dựa trên văn bản

Giao tiếp web thời gian thực (Web Real-Time Communications –WebRTC), là một nỗ lực để loại bỏ hạn chế này của web được đoeèi hành bởimột số nhà cung cấp trình duyệt chính (Google, Mozilla , Microsoft, Opera) vàcác công ty nổi tiếng khác (Cisco, Ericsson, vv) Web RTC là một framework mởcác khả năng giao tiếp audio và video thời gian thực, nó biến các trình duyệt webthành một nền tảng truy cập chung để giao tiếp giữa người với người Trong hộithoại và video thời gian thực không phải là mới với Internet, cho đến nay nó chỉ

Trang 4

LỜI CẢM ƠN

………

………

……… ………

……… ………

……… ………

……… ………

……… ………

……… ………

……… ………

Trang 5

NHẬN XÉT

(Của cơ quan thực tập, nếu có)

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Trang 6

M C L C ỤC LỤC ỤC LỤC

CHƯƠNG 1 CƠ SỞ LÝ THUYẾT 8

1.1 GIỚI THIỆU VỀ WEB RTC 8

1.2 GIỚI THIỆU VỀ KURENTO 9

CHƯƠNG 2 THIẾT KẾ VÀ XÂY DỰNG CHƯƠNG TRÌNH 21

2.1 PHÂN TÍCH YÊU CẦU 21

2.2 PHÂN TÍCH CÁC CHỨC NĂNG 21

CHƯƠNG 3 TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ 24

3.1 MÔI TRƯỜNG TRIỂN KHAI 24

3.2 KẾT QUẢ CÁC CHỨC NĂNG CỦA CHƯƠNG TRÌNH 24

3.3 Đánh giá và nhận xét 24

Trang 7

DANH MỤC CỤM TỪ VIẾT TẮT

Trang 8

TỔNG QUAN VỀ ĐỀ TÀI

Đề tài: Tìm hiểu Media sever Kurento Media Sever (KMS)

1 Lý do thực hiện đề tài

 Việc giao lưu và kết nối với nhau là điều vô cùng quan trọng dù ở bất

kì nơi nào Ngày nay, với sự phát triển công nghệ, nhiều thiết bị và nềntảng giúp bạn kết nối với mọi người dễ dàng hơn ra đời Một trongnhững cái tên không thể không nhắc đến đó là WebRTC Chắc hẳnnhiều người vẫn còn khá xa lạ với thuật ngữ này

2 Phương pháp triển khai đề tài

 Tìm kiếm tài liệu liên quan

 Tìm hiểu về kurento media sever (KMS)

 Định hướng chương trình cần làm

 Xây dựng chương trình live stream sample

 Kết luận

3 Kết cấu của báo cáo

 Chương 1 : Trình bày cơ sở lý thuyết về Kurento Media Sever (KMS)

 Chương 2 : Xây dựng chương trình live stream sample

 Chương 3 : Chạy Demo và kết luận về chương trình, đánh giá kết quả

Trang 9

Chương 1. CƠ SỞ LÝ THUYẾT 1.1. Giới thiệu về WebRTC.

1: Sơ lược lịch sử của WebRTC

Ý tưởng phát triển WebRTC được nhóm kỹ sư chịu trách nhiệm cho Google Hangouts đưa ra từ tận năm 2009 Vào thời gian đó, để truyền tải video, hình ảnh trên web thì người ta thường phải xài đến Flash Nhóm kỹ sơ Hangouts lại không muốn sử dụng công nghệ này, và họ bắt đầu tự làm một chuẩn riêng cho mình Đến năm 2010, Google thâu tóm hai công ty On2 và Global IP Solutions (GIPS) để lấy công nghệ truyền dữ liệu thời gian thực làm nền tảng cho WebRTC về sau

Vào tháng 5/2011, Google ra mắt một dự án nguồn mở dành cho việc giao tiếp thời gian thực giữa trình duyệt với nhau, và từ lúc này dự án mang tên WebRTC Song song đó, Hiệp hội World Wide Web (W3C) và Hiệp hội Kĩ sư quốc tế (IETF) cũng đang phát triển một số giao thức để dùng cho việc việc kết nối thời gian thực, thế nên họ bắt tay nhau tiếp tục hoàn thiện để rồi quyết định kết hợp chung vào WebRTC

Đến 27/10/2011, W3C ra mắt bản nháp đầu tiên của WebRTC Tháng 11/2011, Chrome 23 ra mắt, trở thành trình duyệt đầu tiên có tích hợp WebRTC ngay từ bên trong Và tính đến thời mà mình viết bài này thì WebRTC vẫn còn đang tiếp tục được phát triển chứ chưa hoàn thiện mộtcách chính thức

Trang 10

2: WebRTC là gì?

WebRTC là viết tắt của cụm từ Web Real-Time Communication Là một web API được phát triển bởi World Wide Web Consortium (W3C), khả năng hỗ trợ trình duyệt (browser) giao tiếp với nhau thông qua

VideoCall, VoiceCall hay transfer data Peer-to-Peer (P2P) mà không cần browser phải cài thêm plugins hay phần mềm hỗ trợ nào từ bên ngoài

3: Các phần chính của WebRTC và chức năng của WebRTC API.

Các phần chính của WebRTC bao gồm:

 getUserMedia, cho phép trình duyệt web truy cập vào camera và/hoặc microphone để lấy dữ liệu hình ảnh âm thanh cho việc truyền tải

 RTCPeerConnection dùng để cài đặt videocall/voicecall dùng cho việc truyền tải

 RTCDataChannel cho phép trình duyệt chia sẻ dữ liệu peer-to-peer

WebRTC API bao gồm chức năng:

 getStats cho phép ứng dụng web lấy tập hợp các số liệu thống kê

về các session WebRTC

4: WebRTC dùng để làm gì ?

WebRTC có thể được sử dụng cho truyền tải video, âm thanh cho đến gửi dữ liệu theo thời gian thực giữa hai hoặc nhiều thiết bị với nhau mà không nhất thiết phải đi qua server trung gian

Trang 11

1.2.Giới thiệu về Kurento.

1: Kurento là gì?

Kurento là một máy chủ truyền thông WebRTC và một bộ API khách hàng giúp đơn giản hóa việc phát triển các ứng dụng video nâng cao cho các nền tảng web và điện thoại thông minh Các tính năng của nó bao gồm liên lạc nhóm, chuyển mã, ghi âm, trộn, phát sóng và định tuyến của dòng nghe nhìn Kurento cung cấp một khung đa phương tiệngiúp giảm bớt nhiệm vụ xây dựng các ứng dụng đa phương tiện với những tính năng, đặc điểm sau đây:

pipelines tùy chỉnh được kết nối với các peers WebRTC như trình duyệt web và ứng dụng di động Các media pipelines này dựa trên các yếu tố có thể kết hợp như người chơi, máy ghi âm, máy trộn, v.v … có thể được trộn và kết hợp, kích hoạt hoặc hủy kích hoạt tại bất kỳ thời điểm nào

Kurento tuân theo kiến trúc client/server Kurento Media Server (KMS) là máy chủ và cung cấp giao diện WebSocket thực hiện giao thức Kurento, cho phép ứng dụng client để xác định cấu trúc liên kết pipelines

điển hình của việc triển khai KMS bao gồm một trình duyệt kiến trúc, nơi trình duyệt người dùng tương tác với máy chủ KMS bằng Máy khách trung gian ứng dụng Có một số thư viện Kurento chính

Trang 12

này cho phép tích hợp phương tiện truyền thông xử lý các thuật toán cho bất kỳ ứng dụng WebRTC nào, như tích hợp Thị giác máy tính, Công nghệ thực tế ảo, Video, và phân tích giọng nói Tất cả cần thiết là tạo ra một yếu tố Kurento mới và sử dụng nó trong bất

kỳ media pipelines hiện có

2: WebRTC media servers là gì?

WebRTC là một tập hợp các giao thức, cơ chế và API cung cấp trình duyệt và ứng dụng di động với Real-Time Communications (RTC) thông

qua kết nối peer-to-peer Nó đã được hình thành như một công nghệ

cho phép trình duyệt để giao tiếp trực tiếp mà không cần qua trung gian của bất kỳ loại cơ sở hạ tầng nào Tuy nhiên, mô hình này chỉ đủ

để tạo các ứng dụng web cơ bản; các tính năng như liên lạc nhóm, ghi dòng phương tiện, phương tiện truyền thông phát sóng, hoặc chuyển

mã phương tiện rất khó thực hiện Vì lý do này, nhiều ứng dụng yêu cầumột máy chủ phương tiện trung gian

Về mặt khái niệm, WebRTC media servers chỉ là một phần mềm trung gian đa phương tiện, nơi lưu lượng phương tiện truyền thông đi qua khi

Trang 13

Media servers có khả năng xử lý các luồng phương tiện đến và cung cấpcác kết quả khác nhau, chẳng hạn như:

 Group Communications: Phân phối giữa một số người nhận luồng phương tiện mà một người ngang hàng tạo ra, tức là hoạt động nhưmột đơn vị nhiều hội nghị (NGÀY MCU)

 Mixing: Chuyển đổi một số luồng đến thành một luồng tổng hợp duy nhất

 Transcoding: Thích ứng nhanh chóng các codec và định dạng giữa các máy khách không tương thích

 Recording: Lưu trữ một cách liên tục các phương tiện truyền thông trao đổi giữa các đồng nghiệp

3: Kurento media server là gì?

Thành phần chính của Kurento là Kurento media server (KMS), chịu trách nhiệm truyền, xử lý phương tiện, ghi âm và phát lại KMS được xây dựng trên thư viện đa phương tiện GStreamer tuyệt vời và cung cấpcác tính năng, đặc điểm sau :

 Các giao thức truyền phát được nối mạng, bao gồm HTTP, RTP và WebRTC

 Truyền thông nhóm (chức năng MCU và SFU) hỗ trợ cả trộn phươngtiện và định tuyến / gửi phương tiện

 Hỗ trợ chung cho các bộ lọc thực hiện thuật toán Thị giác máy tính

Trang 14

 Bộ nhớ phương tiện hỗ trợ các thao tác ghi cho WebM và MP4 và phát ở tất cả các định dạng được hỗ trợ bởi GStreamer.

 Tự động transcoding phương tiện giữa bất kỳ codec nào được GStreamer hỗ trợ, bao gồm VP8, H.264, H.263, AMR, OPUS, Speex,G.711, v.v

Trang 15

Chương 2. THIẾT KẾ VÀ XÂY DỰNG

CHƯƠNG TRÌNH

2.1 Phân tích yêu cầu

Yêu cầu đề tài tìm hiểu về Kurento Media Sever và WebRTC

2.2 Phân tích các chức năng

Xây dựng chương trình ví dụ về kurento với ứng dụng web live stream sample

1 Chuẩn bị máy cài đặt Ubuntu

Sau khi máy tính đã được cài đặt hệ điều hành Ubuntu thì chúng ta đầu tiên phảicài đặt Kurento Media Sever (KMS)

1 Chắc chắn rằng GnuPG đã được cài đặt

Dùng lệnh

Trang 16

3 Cài đặt KMS

Dùng lệnh

Trang 17

4 Sử dụng command để start KMSDùng lệnh

Trang 18

6 Khởi chạy

Dùng lệnh

Trang 19

Chương 3. TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT

QUẢ

3.1 Môi trường triển khai

Chương trình được chạy trên Firefox và chạy demo trên hệ điều hành Ubuntu

3.2 Kết quả các chức năng của chương trình

Hình 9:Kết quả demo chương trình

3.3 Đánh giá và nhận xét

- Chương trình làm còn đơn giản,chưa đáp ứng được nhu cầu thiết thực

- Em sẽ cố gắng hoàn thiện và phát triển chương trình ngày càng hoàn thiện hơn

Trang 20

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Bên cạnh HTML5, WebRTC là thứ có thể giúp thay đổi thế giới Nó sẽ giúp việc liên lạc giữa người dùng với nhau trở nên dễ dàng hơn, và tất cả mọi thứ đều chỉ cần trình duyệt mà thôi chứ không cần đến bất kì app hay plugin gì cả Đây là điều hoàn toàn phù hợp trong bối cảnh mọi thứ đang dần dần dịch chuyển lên sử dụng công nghệ web Hãy tưởng tượng đến một tương lai mà bạn có thể làm mọi thứ, từ chơi game, gọi video cho đến ghi chú, gọi điện tất cả đều chỉ cần trình duyệt mà thôi Hiện Firefox OS cũng đã làm được một phần những thứ đó rồi Hi vọng trong tương lai chúng ta sẽ càng khai thác web một cách hiệu quả hơn nữa để trải nghiệm sử dụng thiết bị di động được dễ dàng hơn.

Em xin chân thành cảm ơn thầy Nguyễn Anh Tuấn đã tận tình giúp đỡ em hoàn

thiện đề tài này trong suốt quá trình làm đồ án

Trang 21

TÀI LIỆU THAM KHẢO

1 TCP/IP Tuborial and Technical Overview , IBM

2 An IPv6 deployment scenairo , Irano Guardini and Paolo Fasano

Ngày đăng: 20/04/2021, 22:31

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w