2009-08-18 21 views
8

Tôi đã quản lý để thiết lập cuộc gọi SIP bằng cách sử dụng API JAIN-SIP cho Java.Cách bắt đầu luồng RTP bên trong cuộc gọi SIP/SDP

Bây giờ tôi muốn phát một số video khi hộp thoại đã được thiết lập. Tôi đã đọc rằng điều này là có thể với SDP và RTP, và tôi đã tìm thấy nhiều ví dụ về cách xác định một cơ thể SDP/RTP trong một gói tin SIP.

Nhưng khi bạn đã đàm phán khả năng, v.v. trên các nút, làm cách nào để bạn thực sự bắt đầu luồng RTP? Bạn có bắt đầu một máy chủ phát trực tuyến RTP bên ngoài hoặc bên trong ứng dụng Java của bạn không? Nếu vậy, làm thế nào? Liên kết là gì?

Trong những gì tôi có thể tìm thấy trực tuyến, các nút chỉ "bắt đầu trao đổi các gói RTP".

Cảm ơn bạn.

Trả lời

4

Bạn cần ngăn xếp RTP. Khi bạn bắt đầu, nó sẽ là tốt nhất để giữ tất cả mọi thứ với nhau trong cùng một ứng dụng. JMF (Java Media Framework), (JMF-RTP Architecture) là một nơi tốt để bắt đầu, mặc dù có những nơi khác như JRTP. Bạn có thể tìm thấy chi tiết video JMF here

0

Cố gắng tìm kiếm trên từ khóa "re-INVITE" và các ví dụ thích hợp. Ngay khi bạn thấy mình cần một luồng âm thanh/video khác vào cuộc gọi SIP hiện có với phương tiện đã được thiết lập, bạn cần phải bắt đầu chuỗi INVITE/OK/ACK mới. Luồng mới có thể thay thế luồng truyền thông hiện tại của bạn hoặc có thể được thêm vào. Đó là sự lựa chọn của bạn và điều này phụ thuộc vào tín hiệu. Tất nhiên bạn cần RTP stack với khả năng/codec được hỗ trợ để đáp ứng nhu cầu thực tế của bạn.

Mọi người thường thực hiện điều này để xử lý chuyển đổi fax T.38 bên trong các cuộc gọi SIP. Bạn có thể nhận được các bản ghi tham chiếu yêu cầu khi kết thúc cuộc gọi từ thiết bị hỗ trợ T.38 (hoặc thực sự có bất kỳ modem nào qua hỗ trợ IP). Hãy nhớ luồng giọng nói của bạn phải là các codec LBR (tốc độ bit thấp) chẳng hạn như G.729 hoặc G.723.1. Điều này có thể mang lại cho bạn nhiều câu trả lời ít nhất là 'khi nào' để bắt đầu RTP và cách báo hiệu điều này. Ít nhất là bắt đầu INVITE với luồng RTP mới được đề xuất, bạn sẽ sẵn sàng nhận luồng này ngay từ đầu. Bạn có thể bắt đầu gửi RTP sau khi OK với các cổng được đề xuất 'ở đâu' để gửi RTP.

Các vấn đề liên quan