54
การสร้างระบบ Web Conferencing ด ้วย TOSAKUN Components 9 เมษายน 2554 Produced by Team TOSAKUN http://www.n3amedia.biz

Slide 9 april_2011_pdf

Embed Size (px)

DESCRIPTION

เอกสารประกอบการบรรยายเรื่องการสร้าง web conference เมื่อ 9 เม.ย. 2554

Citation preview

Page 1: Slide 9 april_2011_pdf

การสรางระบบ Web Conferencing ดวย TOSAKUN

Components

9 เมษายน 2554

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 2: Slide 9 april_2011_pdf

Part 1

Web Conference Introduction

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 3: Slide 9 april_2011_pdf

ความหมายจาก Wiki

Web conferencing is used to conduct live meetings,

training, or presentations via the Internet. In a web conference, each participant sits at his or her own computer and is connected to other participants via the internet. This can be either a downloaded application on each of the attendees' computers or a web-based application where the attendees access the meeting by clicking on a link distributed by e-mail (meeting invitation) to enter the conference.

Produced by Team TOSAKUN http://www.n3amedia.biz

ทมา http://en.wikipedia.org/wiki/Web_conference

Page 4: Slide 9 april_2011_pdf

แรงผลกดนทมผลตอ Web Conferencing

• ตองการ Time to market ทสนลง • การกระจายตวของผเชยวชาญ • การขาดแคลนบคลากร • ประหยดงบประมาณ • การทองเทยว • การสงบคคลากรออกไปท างาน • โรคระบาด การสารธารณสข • ความมนคงของประเทศ • ฯล

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 5: Slide 9 april_2011_pdf

บรการ Web Conferencing ทพบในปจจบน

• Video Call • Web Casting • Collaboration • Education & Training • Media Sharing • Customer Support

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 6: Slide 9 april_2011_pdf

แนวโนมการใชงาน Web Conferencing

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 7: Slide 9 april_2011_pdf

ตวแบบการตดต งระบบ Video Conference

ปจจบนมอยสองตวแบบ • Multiplepoint Control Unit (MCU) • Continuous Presence

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 8: Slide 9 april_2011_pdf

Hardware Base Multipoint Control Unit

Produced by Team TOSAKUN http://www.n3amedia.biz

MCU

Source: http://www.tandberg.com

Page 9: Slide 9 april_2011_pdf
Page 10: Slide 9 april_2011_pdf

Multipoint Control Unit

Produced by Team TOSAKUN http://www.n3amedia.biz

• ใช อปกรณ Switching ควบคมทศทางของสญญาณ • ผเขารวมประชมจะไดรบสญญาณเพยง 1 สญญาณ • มกใชงานรวมกบระบบ Gate Keeper หรอระบบแปลง IP

address • ตวแบบการใชงาน

• Chair control

• Follow speaker (นยมใช)

• User control

Page 11: Slide 9 april_2011_pdf

MCU : Chair control

Produced by Team TOSAKUN http://www.n3amedia.biz

Chair man เปนผ

ควบคม MCU เพอท า

การ Broadcast

สญญาณของผเขา

ประชมคนใดคนหนง

Page 12: Slide 9 april_2011_pdf

MCU : Follow speaker

Produced by Team TOSAKUN http://www.n3amedia.biz

Speaker สงความ

ตองการให MCU

เพอท าการ Broadcast

สญญาณของตวเอง

Page 13: Slide 9 april_2011_pdf

MCU : User control

Produced by Team TOSAKUN http://www.n3amedia.biz

Speaker เปนผก าหนด

วาตองการจะ

Broadcast สญญาณ

ไปใหผเขาประชมคน

ใด หรอตองการรบ

สญญาณจากใคร

Page 14: Slide 9 april_2011_pdf

Continuous Presence

Produced by Team TOSAKUN http://www.n3amedia.biz

• ผเขาประชมรบสญญาณจากผเขารวมประชมทกคน • ตองการ Bandwidth โดยรวมมากกวาแบบ MCU • มสภาพคลายการประชมจรงกวา MCU • เพมประสทธภาพไดดวยการใชการท า Multicasting(1,2)

• TOSAKUN MEETING ใชตวแบบน

(1) http://www.cc.mahidol.ac.th/newsletter/Old/Vol7/content_1.htm

(2) http://tv.ku.ac.th/tech.html

Page 15: Slide 9 april_2011_pdf

Continuous presence

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 16: Slide 9 april_2011_pdf

Protocol สอสารทใชกบ Video Conference

H.323(1)

• TCP และ UDP • รองรบ video, void, data • ซบซอน • Provider รบรอง

Session Initiation Protocol (SIP)(2)

• ออกแบบมาเพอรองรบ voice : VoIP • ไมรองรบ multipoint conference • Flexible มากกวา H.323 → ประยกตใชกบ data แบบอนได • IM, Presence → Buddy list

Produced by Team TOSAKUN http://www.n3amedia.biz

(1) http://en.wikipedia.org/wiki/H.323

(2) http://th.wikipedia.org/wiki/Session_Initiation_Protocol

Page 17: Slide 9 april_2011_pdf

Protocol สอสารทใชกบ Video Conference

T.120(3)

• Share data แบบ Real Time • ใชรวมกบ H.323 • ประโยชน

• Application sharing

• Whiteboarding

• File transfer

• Chat

• Microsoft : NetMeeting

Produced by Team TOSAKUN http://www.n3amedia.biz

(3) http://www.dtic.mil/ieb_cctwg/contrib-docs/T.120/T.120-WP.html

Page 18: Slide 9 april_2011_pdf

ความหมายของ Streaming

“constantly received by and presented to an end-user while being delivered by a streaming provider...”

ทมา http://en.wikipedia.org/wiki/Streaming_media

Produced by Team TOSAKUN http://www.n3amedia.biz

Keyword = constantly

Page 19: Slide 9 april_2011_pdf

Part 2

RED 5 Media Server

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 20: Slide 9 april_2011_pdf

RED5 Media Server

Produced by Team TOSAKUN http://www.n3amedia.biz

• Web Server + Streaming Server + Application Server (J2EE) • Platform independent (Java) • GNU License • ความสามารถ

• Live streaming publishing (h264,flv,mp3)

• Streaming video / audio (flv / mp3)

• Recording stream (flv)

• Shared Objects และ Remoting

• RTMP* RTMPT, RTMPE, RTMPS

Official web site :http://www.red5.org/

*ม performance ดทสดในกลม

Page 21: Slide 9 april_2011_pdf

RED5 Media Server

Produced by Team TOSAKUN http://www.n3amedia.biz

• การประยกต RED5

• Live Video Broadcasting

• Video On Demand

• Multiplayer Game

• Flex Base Data Driven (Hibernate, Spring JDBC)

• Web Conference

Page 22: Slide 9 april_2011_pdf

• พฒนาโดย Macromedia • เคยเปน Proprietary → ปจจบน Open • เพอ streaming video, audio บน Internet • ใช port เบอร 1935 (เปลยนได) • สรางการเชอมตอแบบถาวร (persistent connection) • แบงขอมลออกเปนทอนสนๆ (fragment) • ขนาดของ fragment จะไมแนนอน (audio:64 bytes, video:128bytes) • Media : Mp3 ,FLV video • Data : Remote RPC

(1) http://en.wikipedia.org/wiki/Real_Time_Messaging_Protocol

Real Time Messaging Protocol (RTMP)(1)

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 23: Slide 9 april_2011_pdf

HTTP RTMP

http://freetosakun.n3amedia.info rtmp://freetosakun.n3amedia.info

http://freetosakun.n3amedia.info:8080

rtmp://freetosakun.n3amedia.info:8080

http://freetosakun.n3amedia.info/conference

rtmp://freetosakun.n3amedia.info/conference

วธการเขยนเหมอนกบ HTTP

Real Time Messaging Protocol (RTMP)

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 24: Slide 9 april_2011_pdf

Scope ใน RTMP

Produced by Team TOSAKUN http://www.n3amedia.biz

Server

App. #1

Room #1 ... Room #N

App. #N

... Room #N Room #1

... Application

scope

Room

Scope

Page 25: Slide 9 april_2011_pdf

RTMP Scope กบ URI และ Tree Structure

Produced by Team TOSAKUN http://www.n3amedia.biz

Host / Server

App. #1

Room #1 ... Room #N

rtmp://host/app#1/room1

...

rtmp://host/app#1/roomN

Page 26: Slide 9 april_2011_pdf

ขนตอนการตดตง RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

Install JDK – Windows :

http://www.oracle.com/technetwork/java/javase/downloads/

– Ubuntu : sudo apt-get install openjdk-6-jdk

– Fedora / CentOS : su -c "yum install java-1.6.0-openjdk"

– SUSE : su -c "yum install java-1.6.0-openjdk"

Page 27: Slide 9 april_2011_pdf

ขนตอนการตดตง RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

Download binary – http://trac.red5.org/wiki/1_0_RC1

– อาน http://trac.red5.org/wiki/Releases/1.0TicketHitList (ถามเวลา)

– วางไฟลบน server

– ก าหนดคา RED5_HOME และ JAVA_HOME ใน startup script

Page 28: Slide 9 april_2011_pdf

ขนตอนการตดตง RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

ปรบคา RED5_HOME และ JAVA_HOME

Page 29: Slide 9 april_2011_pdf

ขนตอนการตดตง RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

ปรบคา HTTP port ใน red5.properties

Page 30: Slide 9 april_2011_pdf

ขนตอนการตดตง RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

ปรบคา RTMP port ใน red5.properties

Page 31: Slide 9 april_2011_pdf

ขนตอนการตดตง RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

ปรบคา RTMP port ใน red5.properties

Page 32: Slide 9 april_2011_pdf

ขนตอนการตดตง RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

Start RED5 server Cd to RED5 directory

ใชค าสง Linux : sh ./red5.sh, bash ./red5.sh

Windows : red5

Page 33: Slide 9 april_2011_pdf

ขนตอนการตดตง RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

RED5 ใหบรการท localhost ผาน HTTP port เบอร 5080

Page 34: Slide 9 april_2011_pdf

ขนตอนการตดตง RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

ตดตง Demo Application ของ RED5

Page 35: Slide 9 april_2011_pdf

ขนตอนการตดตง RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

ทดสอบ Demo Application ของ RED5 ดวย oflaDemo และ publisher

Page 36: Slide 9 april_2011_pdf

รปแบบการพฒนางานบน RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

Server Side

Java Application compile

Media Server

(Tomcat + Red 5)

Internet Client Side

(SWP/Java/PHP) ทรพยากร

+ Java code

ActionScript / Java / PHP ฯล

com

pile

Page 37: Slide 9 april_2011_pdf

Part 3

TOSAKUN MEETING

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 38: Slide 9 april_2011_pdf

TOSAKUN MEETING

Produced by Team TOSAKUN http://www.n3amedia.biz

• เปน Web Application ใชงานบน RED5 • พฒนาโดย TEAM TOSAKUN (N3A Media Limited

Partnership) • ปรบระบบ Live Streaming Media → Conference • Continuous presence model • Server side : Java • Client side : ActionScript 3.0 • Open source

Official web site :http://freetosakun.n3amedia.info

Page 39: Slide 9 april_2011_pdf

TOSAKUN MEETING เหมาะกบ

Produced by Team TOSAKUN http://www.n3amedia.biz

• Web Application • Informal Meeting • Small group (4-5 seats/room) • Many rooms , few people policy

Page 40: Slide 9 april_2011_pdf

Receiver

สถาปตยกรรม TOSAKUN MEETING

Produced by Team TOSAKUN http://www.n3amedia.biz

Broadcaster

Receiver

Connection

ActionScript 3.0

TOSAKUN

Java Application

RED5 Server

Page 41: Slide 9 april_2011_pdf

...

สถาปตยกรรม TOSAKUN MEETING

Produced by Team TOSAKUN http://www.n3amedia.biz

TOSAKUN

Java Application

Client #1

Client #2

Client #N

Video Audio

Remoting

RED5 Server

Page 42: Slide 9 april_2011_pdf

การตดตง TOSAKUN MEETING บน RED5

Produced by Team TOSAKUN http://www.n3amedia.biz

Download ไฟล conference.war

น าไปวางไวท webapps ใน RED5

Restart RED5

Page 43: Slide 9 april_2011_pdf

Virtual Room ใน TOSAKUN MEETING ดวย RTMP

Produced by Team TOSAKUN http://www.n3amedia.biz

Conference

Room1 rtmp://[host]/conference/room1

rtmp://[host]/conference/room2 Room2

...

Application

Scope

Room

Scope

Application

Scope RTMP URL

Page 44: Slide 9 april_2011_pdf

Produced by Team TOSAKUN http://www.n3amedia.biz

การออกแบบระบบ Web Conferencing

• แบบท 1 : Many rooms, few people • แบบท 2 : Few rooms, many people

Page 45: Slide 9 april_2011_pdf

การค านวณ Bandwidth

สงทตองทราบ • จ านวนผใช • Bandwidth ของผใชแตละคน (โดยประมาณ) • Bandwidth ของ Server • คา resolution ของวดโอ (อาจจะ)

ขอแนะน า • ค านวณคา bandwidth ทผเขารวมประชมและท server • แยกพจารณาระหวาง upstream กบ downstream

Produced by Team TOSAKUN http://www.n3amedia.biz

Page 46: Slide 9 april_2011_pdf

การค านวณคา Bandwidth รวมของServer

BWs = upstream + downstream = P(P-1) S + P S = SP2

เมอ

P = จ านวนผ เขารวมประชมทงหมด

S = คาเฉลย stream bit rate ของผ เขารวมประชมแตละคน

Produced by Team TOSAKUN Produced by Team TOSAKUN http://www.n3amedia.biz

Page 47: Slide 9 april_2011_pdf

การค านวณคา Bandwidth รวมของ Participants

เมอ

P = จ านวนผ เขารวมประชมทงหมด

S = คาเฉลย stream bitrate ของผ เขารวมประชมแตละคน

Produced by Team TOSAKUN Produced by Team TOSAKUN http://www.n3amedia.biz

BWc = upstream + downstream = S + (P -1) x S = SP

Page 48: Slide 9 april_2011_pdf

ตวอยาง

ตวอยาง1 : สมมตวาหองประชมมผเขารวมประชม 4 คน แตละคนแพรภาพและเสยงดวย bandwidth เฉลยท 100 Kbps

Upstream bandwidth = 4 x 100 Kbps = 400 kbps

Downstream bandwidth = 3 x 100 kbps = 300 kbps

Upstream bandwidth = 100 kbps

Downstream bandwidth = 4 x 3 x 100 kbps = 1200 kbps = 1.2 Mbps

Server :

Client :

Produced by Team TOSAKUN Produced by Team TOSAKUN http://www.n3amedia.biz

Page 49: Slide 9 april_2011_pdf

ตวอยาง2 : สมมตวาระบบสามารถใหบรการ Bandwidth รวมท 10 Mbps เราสามารถค านวณหาจ านวนหองประชมทสามารถใหบรการพรอมกนได

จากตวอยางกอนหนา Bandwidth รวมท Server ตองการ = 1200 + 400 kbps

= 1600 kbps = 1.6 Mbps

ระบบสามารถใหบรการได = 10 Mbps

จ านวนหองประชมทใหบรการไดพรอมกน = 10 / 1.6

= 6 หอง

Produced by Team TOSAKUN Produced by Team TOSAKUN http://www.n3amedia.biz

Page 50: Slide 9 april_2011_pdf

ตวอยาง 3 : การใชตวแบบ Many rooms, few people สมมตวาใหแตละหองประชมรองรบผเขารวมประชมได 2 คน แตละคนใช bandwidth เฉลย 100 kbps และ Server สามารถใหบรการได 10 Mbps

Produced by Team TOSAKUN Produced by Team TOSAKUN http://www.n3amedia.biz

แตละหองตองการ Bandwidth = 2 x 2 x 100 = 400 kbps

Bandwidth รวมของ Server = 10 x 1000 kbps

จ านวนหองประชม = (10 x 1000 ) / 400 = 25 หอง หรอรองรบผ เขาประชมได = 25 x 2 = 50 คน พรอมกน

Page 51: Slide 9 april_2011_pdf

ตวอยาง4 : การใชตวแบบ Few rooms, many people สมมตวาใหแตละคนใช bandwidth เฉลย 100 kbps และ Server สามารถใหบรการได 10 Mbps

Produced by Team TOSAKUN Produced by Team TOSAKUN http://www.n3amedia.biz

N x N x 100 = 10 x 1000 kbps

N x N = 100

ดงนนจะไดหองประชมรองรบผ เขาประชม 10 คน จ านวน 1 หอง

Page 52: Slide 9 april_2011_pdf

Produced by Team TOSAKUN Produced by Team TOSAKUN http://www.n3amedia.biz

ขอแนะน าการบรหาร Bandwidth

• เผอทส าหรบ Network overhead อน ๆ ไมนอยกวา 20 % • Internet แบบ ADSL ทวไป มกมคา upstream นอยกวา

downstream มาก เชน 6/512 • ควรให Server มคา upstream และ downstream ทใกลเคยงกน • ระยะหางระหวางผเขารวมประชมกบ Server มผลตอ response time • ควรใช Internet provider ทเปนเจาเดยวกน • ความมเสถยรภาพของ network มผลมากกวาจ านวน bandwidth

Page 53: Slide 9 april_2011_pdf

Produced by Team TOSAKUN Produced by Team TOSAKUN http://www.n3amedia.biz

คาเฉลย Bit Rate ในการสงสญญาณ Video

Video Capture (W x H pixels)

Frame rate (fps)

Bit rate (kbps)

160 x 120 8 11

15 21

24 34

30 42

8 45

15 84

24 134

30 168

8 179

15 335

24 536

30 670

วดคาโดย networx : http://www.softperfect.com/products/networx

Page 54: Slide 9 april_2011_pdf

Questions ?