Lớp WebcamServer 34

Một phần của tài liệu xây dựng ứng dụng video streamming dựa trên mạng ngang hàng chord (Trang 34 - 36)

M ở đầ u 5 

3.5.1. Lớp WebcamServer 34

Hình 16: Thuộc tính và các phương thức của lớp WebcamServer

Lớp WebcamServer (Hình 16) là lớp duy nhất của ứng dụng truyền video multicast dựa trên nền Chord tại máy chủ. WebcamServer chịu trách nhiệm tạo luồng dữ liệu video thời gian thực. Cụ thể WebcamServer sẽ định kỳ bắt hình ảnh thu được từ webcam, sau

đó tiến hành gửi broadcast trên toàn mạng Chord.

Một số phương thức chính

//Hàm khởi tạo //Tham số:

// localNode: một thể hiện của lớp Node

public WebcamServer(Node localNode)

// Bắt lấy hình ảnh từ webcam

// Hàm trả về hình ảnh dưới dạng chuỗi byte

// Phân mảnh hình ảnh thu được ở hàm captureImage() thành những phần nhỏ

// Giá trị trả về là danh sách các phần mảnh của hình ảnh

public List<byte[]> fragmentImage(byte[] image)

// Đóng gói gói tin tầng ứng dụng với các trường khác nhau // Tham số:

// limitID: giới hạn chuyển tiếp dành cho node nhận // imageID: số thứ tự của bức ảnh

// numberOfPart: số phần bị phân ra từ bức ảnh gốc // partID: số thứ tự của phân mảnh

// fragment: dữ liệu của một phần bức ảnh

// Hàm trả về gói tin tầng ứng dụng dưới dạng chuỗi byte

public byte[] PacketToByte(long limitID, short imageID, short

numberOfPart, short partID, byte[] fragment) // Hàm khởi tạo broadcast

// Tham số:

// image: chuỗi byte dữ liệu của hình ảnh

// Hàm sử dụng thuật toán truyền broadcast để gửi hình ảnh cho các máy khách

public void SendBroadcastImage(byte[] image)

// Gửi một gói tin tầng ứng dụng cho một node // Tham số:

// desIP: IP của node nhận

// limitID: giới hạn chuyển tiếp dành cho node nhận // iID: số thứ tự của bức ảnh

// part: dữ liệu của một phần bức ảnh // partID: số thứ tự của phân mảnh

// numberOfPart: số phần bị phân ra từ bức ảnh gốc

public void send(string desIP, long limitID,short iID, byte[] part,

Một phần của tài liệu xây dựng ứng dụng video streamming dựa trên mạng ngang hàng chord (Trang 34 - 36)

Tải bản đầy đủ (PDF)

(42 trang)