Multimedia Streaming CE00164-3 Module Information Module code CE00164-3 Module Title MULTIMEDIA STREAMING Level 3 (Semester 2) Credit Value 15 Lecture/Teaching Areas E6 Module Tutor Mohamed Abdel Maguid Room C207, Tel 01785 353324 m.m.abd-el-maguid@staffs.ac.uk Module Moderator Tim Dunning Room C206, Tel – 01785 353433 t.s.dunning@staffs.ac.uk Accessing documents Resources Blackboard for all documents You will study The theory and practice of Media Streaming How streaming media is created and delivered to the world. Windows Media Streaming using specialised Media Servers design to stream high bandwidth media content. Computer networks Video encoding SMIL to integrate presentations and media content. Management of media rights, authentication and conditional access Assessment The assessment is to create in pairs a synchronised media presentation and streaming it live. A presentation of it is also required to demonstrate your understanding of the theory and practice. There will also be 2 compulsory multiple choice tests on Blackboard conducted at separate times during the term. Attendance All students are expected to attend every week and conduct 4 hours of homework per week. The material delivered each week is the homework and must be studied in time for the lesson that follows it. Timetable Lecture is on Monday 11-12 in E6. The tutorial is Thursday 1-3 in E6. You have been given one additional session to use the E6 lab to practice using the servers on Wednesday 12-1. Teaching Plan Week 1: Introduction to module Investigating and using Google Video / You Tube Week 2: Week 3: Theory of Streaming Media Introduction to Networking Intro to on demand streaming Week 4: Introduction to video coding Intro to live streaming Week 5: Principles of encoding for the web More Live Streaming First multiple choice test Week 6: Week 7: Week 8: Week 9: Digital Media Access Rights – Load balancing Introduction to SMIL Introduction to SMIL Introduction to SMIL Second Multiple choice test Week 10: Week 11: Week 12: Wireless Streaming with Aztec Flash Streaming Independent study week Basic Streaming What is streamed media? A) when the complete file is downloaded first before playback? B) It is how TV is delivered to the home C) Or when only a small number of packets of video required and the computer memory builds up a few seconds of video and instantly plays I back? Answer It can be A and C What are the basic requirements for Streaming media? Correctly encoded media content Specialised computer servers High speed high bandwidth networks A media player device that can receive the video stream Transportation protocols to ensure real time delivery of information Basic forms of Streaming Progressive Download Commonly called download and play Issues? Video is stored in a temporary file on hard drive thus occupying space. Cannot be sure on what bitrate the file is until it has fully downloaded. An issue on a low bandwidth connection. Can saturate your network connection. True streaming Advantages? Does not occupy any hard disc space Efficient streaming Does not saturate your network connection User controls are available. Basic Uses and Services Streaming radio stations Promotional videos Short News Articles Longer video broken up into chapters Education and entertainment Offer on Demand Televisions programmes Multiple languages and subtitles What devices can be streamed to? Computers Mobile Phones PDA’s Blackberry’s Games Consoles Anything with an Internet connection and a media player Week 2 Streaming What is required to view a stream? A specific plugin on your device Plugins include Windows Media Player Real Player Quicktime player Flash Player How do you stream? Media Server Encoder Internet How Does Streaming Work? 1 User clicks on stream link 2 Web Server returns location of media file 1 2 Web Server 3 Media Server 4 5 3 Media player is launched 4 Media player requests media file from media server 5 Media server sends stream to media player 6 Media player decompresses and plays stream How does it work? File encoded and compressed to a smaller file Break it into small packets Send them one after the other When the packets reach their destination, they are decompressed and resembled into a form that can be played Playing a music or video file as it is downloaded from the internet. Copy is never stored on the user’s computer. How does it work? (Cont) To maintain the seamless play the packets are buffered in memory Process by which the media player downloads a few seconds of the media file prior to actual playback. Allows for uninterrupted playback as when buffer plays more packets are downloaded and queued for playback Streams can be opened before a download is complete Organised to be rendered ASAP Play as data is received Open Connection Streaming media files maintain an open connection Media server and media client negotiate connection Sent over the connection until the entire file has been received Media clients play data over the open connection Is buffered to overcome congestion Playback Rates Streams can be encoded and downloaded at different bit rates. Measured in kbps (kilobits per second). 128 kbps is considered to be CD quality when using special codecs. 1-2Mbps is considered to be DVD / Broadcast quality. User’s bandwidth determines that maximum bit rate that can be played. Can select the usual connection speed or give various options Encoding The process of digitizing and compressing a piece of traditional media into a format capable of being broadcast over the internet and played by a computer Raw data is typically uncompressed Big files - Contains all data essential to proper play Raw data is then encoded (compressed) to stream Encoders use audio and video codecs to compress data Compression is different for audio and video Codecs Stands for Compression and Decompression Compresses multimedia content prior to transmission and decompresses upon playback. This uses less bandwidth and increases playback speed. Users must have the proper media player to stream each format. Sound/Music Codecs MPEG-1 layer 3 (MP3) 8 to 320kbs Qdesign (Quicktime) Basic – 8 to 48kbs Pro – 4 to 128kbs MPEG4 (v1,v2,v3,v7,v10) 2kbs to 2mbs MPEG MPEG (Moving Picture Experts Group), develops standards for digital video and digital audio compression. MPEG-1 was designed for coding progressive video at a transmission rate of about 1.5 million bits per second. It was designed specifically for Video-CD and CD-i media. MPEG-1 audio layer-3 (MP3) has also evolved from early MPEG work. MPEG (Cont) MPEG-2 was designed for coding interlaced images at transmission rates between 1 and 80 megabits per second. MPEG-2 is used for digital TV broadcast and DVD. An MPEG-2 player can handle MPEG-1 data as well. A proposed MPEG-3 standard, intended for High Definition TV (HDTV), was merged with the MPEG-2 standard MPEG4 and beyond…. The standard for multimedia for the web and mobility. MPEG-4 is able to throw away a lot more information and to save files 8 to 12 times smaller than those of MPEG-2. Divx is based upon MPEG-4 MPEG-4 Real power of MPEG-4 is the interactivity that can built into the video file or stream. Multimedia producers and software and game developers can isolate parts of the video for particular special effects. Pocket PC devices and Windows CE already play back MPEG-4 and related codecs. Encoding Streaming Video Choice of formats Real Video (Helix) QuickTime Windows Media Flash Video Streaming (New up and coming) Choice of delivery speeds What connection are you streaming to? Dial up modem (56Kbps) ISDN/Dual ISDN (64/128Kbps) Cable 128 up to 100Mb per sec ADSL (copper twisted pair up to 16Mbs at least) T-1 (1.5Mb’s) T-3 45Mbps’s E-1 (more commonly called 2Mbps pipe) Considerations for streaming Movie size – size affects bandwidth Frame rates – broadcast TV is 25fps most webcasts are lower Is it audio, video or both Encoding the media – which format Making a website which is suitable to play a streaming file. Serving the media What computer hardware do you need? A standard web server with the correct software installed OR A specialised media server Both have streaming capabilities but why is one better than the other? • Live Streaming requires a dedicated media server • A web server is fine for low usage streaming files but if volume of people wishing to stream from your site is above 10 at a time you need a media server. • Media Servers give you much more control for your streams and offers many more services for your clients. • Media Servers enable 2 way communication the client can say rewind your media file (only for unicast). Web Server V Media Server Media Servers Servers needed to serve streams. In order to stream, a web site must install media servers into it’s network. Capacity is typically measured by the maximum number of concurrent streams that the server can serve. Multiple Stream From a normal web server Content has been encoded for one bit rate only Not really streaming, just being downloaded TCP will resend lost packets and could cause playback pauses Dedicated media server Content can be encoded at multiple bit rates and the server will choose the right one Server uses proprietary protocol to control content – can choose best transport Server is tuned to provide optimum performance under heavy use – big beefy machine, multiple CPU’s, high memory and disk drive space. Media Servers Helix Server Real Networks Microsoft Media Server Quicktime Streaming Server / Darwin Streaming server Hyperlinks use a linking file Signals the browser to launch the streaming application URL is passed indicating the server protocol, media server, and media file RAM / RA – Realnetworks, ASX / WMX for Microsoft Transmission Models Unicast Streaming between sender and a single recipient Multicast Streaming between sender and multiple specific recipients Broadcast Streaming between a sender and any receiver Live and prescheduled content Some radio and television stations over WWW Use playlists to automate playback Basic Networking Requirements A communication protocol (language) E.g TCP/IP and UDP A networking standard Ethernet, the standard for Local Area networks (LAN’s) IP addressing Each computer is given a unique name to identify it on an Ethernet network. The format of an IP address is a 32-bit numeric address written as four numbers separated by periods e.g 192.168.1.1 for PC no.1, 192.168.1.2 for PC no.2 Gateway Give you access to the Internet (WAN – wide area network) Ping TTL Switches and Routers A means of linking computers together It filters and forwards network packets that are sent from PC 1 to another PC Unicast streaming One to one client server relationship Like you playing a VCR Communication channel remains as packets travel to client. Allows the user to use controls like FF, RW and play. Unicast Setup Multicast Uses watch content (Little bit like watching TV). Media server generates one stream that allows players to connect to it. Client connects to stream and not server Replacement packets cannot be resent Uses special Multicast UDP Multicast Networks must be equipped with switches and routers supporting multicast protocols. Efficient and cost effective. 1 stream easier to distribute than 1000 Uses Class D IP addressing In range 224.0.0.0. – 239.0.0.0 Multicast setup Transmission protocols UDP V TCP Protocols UDP, Multicast UDP and TCP Rollover Protocols UDP, TCP and HTTP (MMS automatically does this when you have setup the server correctly and so does Real to) Server Delivery Protocols TCP/IP = Transmission control protocol/internet protocol. Dedicated media servers use proprietary delivery protocols Server attempts to provide content over UDP (User Datagram Protocol) If unreliable or firewall then TCP is used Allows server to control content Content is streamed directly to the viewer and not saved or cached Requirements for Streaming Powerful Networks – the delivery mechanisms Reliable Networks Compressed media files Transportation protocols Real Time delivery of information Digital Rights? Common Protocols to Learn Basics of 1. TCP/IP – Transmission control/Internet protocol 2. UDP – User Datagram protocol 3. RTP – Real Time Protocol 4. HTTP- Hyper Text Transfer Protocol 5. RTSP – Real Time Streaming Protocol 6. MMS – Microsoft Media Server protocol TCP v UDP Protocols - TCP/IP A layer 4 protocol (transport layer) Developed by US department of defence Error resilient protocol for use on high error rate networks. If packets arrive in wrong order, some are lost or corrupted it will send a message back for them to be sent again. Problems – high latency, overhead of this guarantee is the transmission rate e.g Not very quick. Used for lossless data packets such as images, text,etc. Packet ordering guarantee. UDP – User Datagram Packets Uses layer 4 protocol. (transport) Has little error resilience. UDP is fast but packets can arrive in wrong order or it can lose packets and no way to recover them. Problems – unreliable protocol. Packets get lost and can arrive in the wrong order due to network congestion. Used for streaming of some media. UNICAST, BROADCAST, AND MULTICAST The bulk of the traffic on today's networks is unicast: Broadcast unicasting wastes bandwidth by sending the data to the whole network whether or not the data is wanted. Broadcasting can also needlessly slow the performance of client machines. Each client must process the broadcast data whether or not the broadcast is of interest. Multicasting takes the strengths of both of these approaches and avoids their weaknesses. Multicasting sends a single copy of the data to those clients who request it. Multiple copies of data are not sent across the network, nor is data sent to clients who do not want it. Multicasting allows the deployment of multimedia applications on the network while minimizing their demand for bandwidth. Comparing bandwidths of Multicast & Unicast •This following graph compares the network load per client when unicasting an 8-Kbps PCM audio stream and multicasting the stream and shows how a multicast saves bandwidth. Common Problems With Streaming Poor quality Screen size is small Not ‘compelling content’ The internet may not be fast enough Not broadcast TV Quality Problems With Streaming (Cont) Compression Artifacts To much raw data could be discarded until bandwidth delivery requirements are met Audio quality might become very poor Video becomes jumpy and poor pixelated Display size for video is often quite small User Datagram Protocol issues (UDP) Bad packets are removed Audio will drop and pop Video will drop or loose frames Blank frames may be displayed Problems With Streaming (Cont) Streaming Connection Can loose its connection If connection is lost playback will end and must be restarted. If network is congested network will pause or delay Popular sites can become unavailable if the network and servers cannot cope the with demand Streaming Formats Real RA, RAM, RM Microsoft ASF, WMA, WMV Apple MOV, QT Flash FLV Streaming Software Comparisons Real time Encoding Software Streaming Server Solution Player Real Producer (small cost) Win 2003 with Helix universal server installed Real Player Windows Media Encoder (Free) Win 2003. Media services free and part of server software Window Media Player Quicktime Broadcaster OS X server. Streaming built into it. Quicktime Player Real… RealNetworks RealNetworks (previously known as Progressive Networks) was founded by ex-Microsoft executive Rob Glaser in 1993 The first and still most popular of the streaming solutions Provides a complete creation, server and player solution Helix announced in July 2002 Streams all formats Real, Mov’s and WMV’s Used as the format of choice by BBC radio streaming, the largest streaming media network in the UK, possibly the world. Real One…. www.real.com Helix The Helix Platform the first open, comprehensive platform of digital media products and applications for any format, multiple operating systems (XP, Linux, Unix, Solaris) and portable devices. The Helix Community enables companies, institutions and individual developers to access and license the Helix platform source code in order to build Helix-powered encoder, server and client products and other media applications for both commercial and noncommercial use. Helix Universal Server is a breakthrough product from RealNetworks that for the first time streams all major media types.Still the only streaming provider to do so. Real Networks Solutions Helix Producer Content Creator – encodes the Real Slideshow Assembles still photos and graphics with music and sounds Helix Producer RealNetworks Streaming Media creation tool Encodes existing and live content Wizard plus point-and-click design tools Next generation digital media production tool for broadcast streaming and download. It provides robust, reliable and fault-tolerant encoding to convert audio and video into RealMedia format. Using RealMedia Events, Helix Producer can also be used to create synchronized multimedia presentations for playback within the RealOne Player. Helix Producer Live and/or simulated live video and/or audio webcasts On-demand audio and/or video Synchronized multimedia using a combination of datatypes (using SMIL) Produces high quality broadband content Helix Server No longer it is necessary to maintain three different delivery infrastructures to reach the largest audience. You can deliver all three major media formats over one delivery infrastructure. When you have a Helix Server, you have the capability to deliver media to any individual with a media player. The RealNetworks system architecture based on the Helix platform has achieved unmatched performance. Supports SMIL Helix Server – Scaleable Streaming with Surestream Combine several different streams into a single file The appropriate bit rate stream is automatically selected Essential for live streaming when you only wish the customer to click 1 link. Real Video 10 • Compatible with all RealVideo 9 decoders – No RealOne™ Player update is needed to play RealVideo 10 content • Same Quality at 30% lower bitrate than RealVideo 9 • Same Quality at 80% lower bitrate than MPEG-2 • Same Quality at 75% lower bitrate than HDTV • Same Quality at 45% lower bitrate than MPEG-4 (ASP) • Same Quality at 30% lower bitrate than WMV 9 • Same Quality at 15% lower bitrate than H.264 HDTV Ready & Home Theater Experience HDTV quality video at <5 Mbps Supports all HD formats and resolutions including 720p and 1080i Interlaced support—the RealVideo 10 bitstream can carry 60 fields a second interlaced content New RealAudio Multichannel provides the ultimate home movie experience through the encode and decode of 4, 5 and 5.1 channel audio Real 10 http://www.realnetworks.com/products/cod ecs/realvideo.html See the examples of Real 10 Real Networks Strategy Leverage player penetration to drive demand for Real format, software sales, content distribution and real.com entertainment portal. Provide end-to-end streaming solutions (encoding, hosting, distribution, security, ad insertion, playback) Microsoft Media Microsoft Solutions Windows Media Services Second place in the market Provides complete solution Scales up to 9,000 concurrent streams using a single server – very unrealistic though. Depends on computer power, network bandwidth, stream bandwidth etc. Windows 2003 server Media services are built in (different versions) http://www.microsoft.com/windows/windowsm edia/9series/server.aspx Microsoft Solutions Windows Media Player Plays audio / video content Windows Media Encoder Produces streaming content from a number of formats Windows Media Rights Manager Supports encryption and licensing of digital media Windows Media Player Offers consumers the first fully integrated digital media experience playback of CD-quality audio and DVD video streaming and downloaded audio and video – Designed to be the first digital media player for everyday consumers, breaking new ground in four key areas All-in-One Integration Easy to Use The Best Audio and Video Experience More Personality Basically Windows and Real players offer the same services. Microsoft Windows Media Encoder Encodes existing and live content Wizard plus point and click design tools Special screen capture codec Supports file sizes up to 30 Gb Supports up to 50 simultaneous streams from the encoder – dependant on computer power Microsoft Windows Media Encoder Produces high quality broadband content Near VHS at 400 kbps Near DVD at 750 kbps See the new HD WM9 in action – load examples Same filters at Real Producer – deinterlace etc Production Tools and Views Sessions can be saved as profiles Real time creation statistics http://www.microsoft.com/windows/windowsmedia/9series/ encoder/default.aspx Windows Media Services Integrated with Windows 2000 Scales up for Internet and intranet use Utilises features of Windows 2000 Supports media bit rates from 28kbps to 20mbps Built in administration wizards and interfaces “Intelligent Streaming” encoding Multiple bit rates streams saved and served from one file Other advantages Digital Rights Manager Server Side APIs – Multicast capabilities Microsoft Strategy Trying to dominate the media player market as it did the browser market. Provides players and server software for free. Server: Bundled with 2000 and 2003. Player: Bundled with Windows and IE. Real Networks vs. Microsoft No clear winner will emerge soon. Both Real and Microsoft each have very strong player and server penetration. Content providers wishing to reach the largest audience will continue to encode their content in both formats and implement multiple streaming servers. In the near-term, Real should be able to maintain its strong position and pricing power despite Microsoft’s challenge. Windows Media 9 Says best quality http://www.microsoft.com/windows/windowsme dia/9Series/GettingStarted// Must not forget Apple…. Apple Solutions Quicktime Originally extension of the Mac OS Encorporates text, graphics, audio and video into a single format Can be viewed with a time element QT or MOV format available on Windows PC’s Apple Solutions Quicktime Player Displays video, sound, animation, text and music. Also 360 degree panaromas Quicktime Pro Create, open, edit and save movies and audio Resize movies and create streaming media Quicktime Streaming Server Serves Quicktime files stored on the server Supports 2000 streams to Quicktime users Requires Mac OS server Quicktime http://www.apple.com/quicktime/products/qt/ Quicktime Streaming Server Instant-on provides enhanced overbuffering of data, dramatically reducing buffer time for broadband users. Serves to any standard MP3 player such as iTunes, WinAmp, or QuickTime Player Web-based interface for local and remote administration Supports QuickTime (.mov), MP3 audio (.mp3), or MPEG-4 (.mp4) files Quicktime (Cont) Allows you to create simulated live broadcasts with Playlist Broadcaster, perfect for creating your own Internet radio station Supports up to 4,000 simultaneous streams Supports both unicast or multicast streams Competitive Landscape RealNetworks and Microsoft continue to battle for market leadership. RealNetworks RealPlayer/Real One: 150 million registered downloads 85% market share Microsoft Windows Media Player: 100 million registered users Catalysts For Streaming Adoption Broadband Penetration Availability of streaming content The proliferation of streaming creation and playback tools lowers streaming costs. Content providers are beginning view the Internet as a new distribution channel. Formats are becoming transparent to the user. New technologies that support payments. Ad insertion. Billing, payment and tracking systems. Digital Rights Management. Broadband Penetration The estimated 12 million users through college broadband networks are not included in these figures. The global number of broadband subscribers reached 263.8 million in Q3 of 2006. In 2006, Ofcom stated 11.5 million households subscribe to broadband and the number is rising rapidly. References http://www.measurecast.com/ http://www.streamingmediaworld.com/ http://www.streamingmedia.com/ www.shoutcast.com http://www.penguinradio.com/penguin/ http://streamingmedialand.com/ http://www.streamingmag.com/ http://www.internetradioindex.com/i-probe/ip_radio.html http://www.crosscut.net/streaming.html http://www.doit.wisc.edu/streaming/ http://www.manifest-tech.com/media_web/index.html