2013-06-04 16 views
7

Tôi đang làm việc trên ứng dụng HTML5 cho phép nhiều người dùng làm việc trên một tài liệu. Tôi cần thêm khả năng cho người dùng (chỉnh sửa cùng một tài liệu) để nói chuyện với nhau. Và tôi không biết bắt đầu như thế nào. Dưới đây là các câu hỏi của tôiThêm cuộc gọi âm thanh/video trong ứng dụng HTML5

  1. Có một lib HTML5 cho phép chuyển âm thanh từ micrô giữa các máy khách không?
  2. Điều gì về phát video từ máy ảnh?
  3. Giải pháp phía máy chủ dễ nhất cho điều đó là gì?

Bất kỳ suy nghĩ nào được đánh giá cao! Vì vậy, đừng ngại! :)

UPD: xin lưu ý rằng tôi cần khả năng có thêm hai người dùng để nói chuyện.

Trả lời

6

Đối với điều này, bạn có thể sử dụng WebRTC.

Tuy nhiên, đây là một công nghệ rất trẻ và chưa hoàn thành như đã nêu hiện chỉ có trong Chrome ổn định và Firefox beta. Điều này có nghĩa là có thể sẽ có những thay đổi đối với thông số hiện tại, một điều cần lưu ý trong trường hợp triển khai sớm. Nhưng nó cho phép bạn sử dụng truyền thông video và âm thanh trực tiếp trong trình duyệt.

Quick-bắt đầu ở đây:
http://www.html5rocks.com/en/tutorials/webrtc/basics/

tùy chọn khác là plugin flash game dựa như flash-videoio. Đây là một plugin nguồn mở nhưng tự nhiên sẽ yêu cầu cài đặt Adobe Flash. Điều này có thể hoặc không có thể là một vấn đề tùy thuộc vào chính sách bảo mật của công ty.

Để biết chi tiết kỹ thuật về triển khai, vui lòng xem ví dụ về các liên kết được cung cấp.

Đối với nhiều-nhiều bạn có thể sử dụng một trong hai:

  1. "Lưới" - tất cả mọi người kết nối với tất cả mọi người. Tuy nhiên điều này là tốn kém trên CPU và điện thoại di động thường bị bỏ quên.
  2. "Sao" - mọi người đều trải qua thiết bị có khả năng nhất. Tuy nhiên, với nhiều kết nối, điều này sẽ sớm chạy chậm cho thiết bị xử lý tất cả các kết nối.
  3. MCU. Máy chủ chuyên dụng để xử lý tất cả các kết nối. Nếu trộn âm thanh và video và xử lý thả ra cũng như mà không ảnh hưởng đến những người gọi khác.

Ví dụ về MCU:
http://sourceforge.net/projects/mcumediaserver/ (mã nguồn mở)
http://www.medooze.com/products/mcu.aspx (thương mại)

+0

vì vậy bạn đang cố gắng để nói không có cách nào để giải quyết một vấn đề trên iOS? – Eugeny89

+0

Bạn yêu cầu về âm thanh/video và HTML5 - cho iO và giải quyết vấn đề nói chung tôi không thể trả lời (tôi chắc chắn nó có thể mặc dù :)). – K3N

+0

và hội nghị đa người dùng là gì? thế nào để WebRTC làm cho họ có thể? – Eugeny89

1

bạn đang tìm kiếm navigator.getUserMedia()

cho phép những người sử dụng khác nhau để chia sẻ âm thanh và dữ liệu video.

hỗ trợ rất thấp ... chỉ chrome và bản mới nhất của opera và firefox hỗ trợ nó.

và hoàn toàn không hỗ trợ trên các thiết bị di động ... có lẽ trong chrome android tiếp theo ... dunno

là có nhiều điều để nói về và tôi không có đầu mối về cách u muốn thiết lập tất cả mọi thứ tôi đề nghị u đọc hơn một chút về điều đó trên các url ...

http://caniuse.com/stream

http://www.html5rocks.com/en/tutorials/getusermedia/intro/

http://dev.w3.org/2011/webrtc/editor/getusermedia.html

https://developer.mozilla.org/en-US/docs/WebRTC/navigator.getUserMedia

http://my.opera.com/core/blog/2011/03/23/webcam-orientation-preview

http://simpl.info/getusermedia/

và serverside giải pháp Nahh ... thats không phải là một giải pháp tốt

clientside là con đường để đi.

1

Không chắc chắn liệu bạn có được yêu cầu tự làm điều đó từ đầu hoặc có thể sử dụng thư viện/công cụ của bên thứ ba hay không.

Trong trường hợp đó, tôi khuyên bạn nên sử dụng Tokbox có hỗ trợ cho WebRTC và SDK cho iOS.

API của họ đơn giản và dễ sử dụng.