Apple Darwin Streaming Server

18
T-111.5350 Multimedia Programming Maciej Korczyński, Krzysztof Zurek

description

Apple Darwin Streaming Server. T-111.5350 Multimedia Programming Maciej Korczyński, Krzysztof Zurek. Table of contents. Introduction to Multimedia Streaming What is Darwin Streaming Server? The technical side Networking protocols Conclusion. Multimedia Streaming. Two types of streaming: - PowerPoint PPT Presentation

Transcript of Apple Darwin Streaming Server

Page 1: Apple Darwin Streaming Server

T-111.5350 Multimedia Programming

Maciej Korczyński, Krzysztof Zurek

Page 2: Apple Darwin Streaming Server

Table of contents

Introduction to Multimedia StreamingWhat is Darwin Streaming Server?The technical sideNetworking protocolsConclusion

Page 3: Apple Darwin Streaming Server

Multimedia StreamingTwo types of streaming:

ProgresiveReal-time

Real-time streaming works with:a streaming media servera client media playera Real-Time Streaming Protocol (RTSP)

No file is ever downloadedMedia is played by the client software as it is

delivered

Page 4: Apple Darwin Streaming Server

Darwin Streaming Server (1)

Open source version of Apple's QuickTime Streaming Server

Uses the industry standard RTP and RTSP protocols

Based on the same code base as QTSSRuns on a variety of platforms

Page 5: Apple Darwin Streaming Server

Darwin Streaming Server (2)

Allows you to manipulate the code to fit your needs

Code written in C/C++Support for the latest digital media

standards, like MPEG-1/2/4 or 3GPP Can stream over port 80 to avoid firewalls

Page 6: Apple Darwin Streaming Server

What can you deliver using DSS?

Broadcasts of live events in real time

Video on demand

Playlist broadcasts of prerecorded content

Page 7: Apple Darwin Streaming Server

Live vs. On-Demand Delivery Continous (Live) transmission

Assistance of broadcasting needed Encoding of a live source Delivering the resulting stream to the server Each customer sees the same point in the stream at the

same time

On-Demand transmission

Each customer initiates the stream from the beginning No customer ever comes in “late” to the stream No broadcasting software is required

Page 8: Apple Darwin Streaming Server

Example: Setup for Live Video (1)classroom presentationlive and on demandcan be seen on-linelater enable students to play an archived version on their computers

http://developer.apple.com/opensource/server/streaming/qtss_admin_guide.pdf

Page 9: Apple Darwin Streaming Server

Example: Setup for Live Video (2)The streaming setup in this example has features:

A digital video (DV) camera and microphone are set up in a classroom or lecture hall to convert the live presentation to digital form.

The DV camera is connected through a FireWire port to a laptop running QuickTime Broadcaster (it encodes the digitized live presentation and transmits the signal via an Ethernet connection to the streaming server)

The streaming server with e.g DSS reflects the encoded live presentation as a unicast stream to each client computer on the campus network and on the Internet

The broadcaster laptop running iMovie is used to produce high-quality on-demand versions of a live presentation after the presentation is concluded

Page 10: Apple Darwin Streaming Server

Multicast versus Unicast (1)

Multicast :a single stream is shared among the clients reduces network congestionrequire access to the multicast backbone

http://developer.apple.com/opensource/server/streaming/qtss_admin_guide.pdf

Page 11: Apple Darwin Streaming Server

Multicast versus Unicast (2)

Unicasteach client initiates its own streampossible result: heavy network trafficreliable for deliveryno special transport support is required

http://developer.apple.com/opensource/server/streaming/qtss_admin_guide.pdf

Page 12: Apple Darwin Streaming Server

Networking protocols in DSS(1)

The main networking protocols used for multimedia streaming in DSS are:Real-Time Streaming Protocol (RTSP)Real-Time Control Protocol (RTCP)Real-Time Protocol (RTP)

Page 13: Apple Darwin Streaming Server

Networking protocols in DSS(2)Real-Time Streaming Protocol (RTSP) [7] :

application-level signaling protocol control the delivery of data real-time properties establishing and managing a client/server

streaming connection session initiation and media negotiation RTSP connection is finished in case the client

wishes to pause, stop, rewind, or replay the media stream

Page 14: Apple Darwin Streaming Server

Networking protocols in DSS(3)

RTP and RTCP are the protocols used to transmit and control the actual media data

Real-Time Protocol (RTP) [8] -> real-time multimedia transport over IP networks

Real-Time Control Protocol (RTCP) [8] -> an adaptive feedback control protocol for RTP

Page 15: Apple Darwin Streaming Server

Networking protocols in DSS(4)A media streaming session has three distinct

phases:

Initialization

Media Transmission

Session Termination

Page 16: Apple Darwin Streaming Server

Conclusion

Disscused aspects of Apple Darwin Streaming Server are:DSS represents Real-time streamingSupports multiple platformsSupports Live and On-Demand deliveryMulticast and Unicast delivery is possibleNetworking protocols are necessary to control

interaction between streaming server and matching streaming client

Page 17: Apple Darwin Streaming Server

References:http://developer.apple.com/opensource/server/

streaming/qtss_admin_guide.pdf [1]http://developer.apple.com/opensource/server/

streaming/index.html [2]http://pages.cpsc.ucalgary.ca/~carey/papers/2005/

jeanIMSA2005.pdf [3]http://elearning.itc.hu/elearning/en/kutatas/docs/

thesis.pdf [4]http://atnac2003.atcrc.com/POSTERS/Grimm.pdf [5]http://en.wikipedia.org/wiki/

Darwin_Streaming_Server [6]http://www.faqs.org/rfcs/rfc2326.html [7]http://www.faqs.org/rfcs/rfc1889.html [8]

Page 18: Apple Darwin Streaming Server

Questions?

Thanks for your attention!