Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Multicast What is Multicast? • A new concept for transmitting data over computer networks • Best suited for one-to-many or many-tomany delivery of data • Designed to reduce network load • Developed for next-generation applications Multimedia Systems A Brief History • The interest in building a multicast capable Internet achieved critical mass in late 1980s • MBone has been created in the beginning of 1990s and grew rapidly after 1992 • Multicast aware routers and lately even switches appeared on the market • Today multicast is still evolving, new multicast routing protocols are being developed Multimedia Systems Applications that Need Multicast • Audio and video conferencing • Multimedia distribution (audio, video) • Delivering stock tickers from stock exchanges to brokers or businessmen • “Shared whiteboards” and joint document editing by a group • Distance learning and training (lectures) Multimedia Systems Specific Multicast Applications? • There is no “specific” multicast application • Some think that multicast is suited only for bandwidth consuming applications • Some think that multicast is suited only for multimedia delivery applications • Some think that multicast is suited only for applications with large number of receivers Multimedia Systems Why Multicast? • Multicast introduces S 7 2 6 Replicated unicast 6 G G G G 3 G 2 2 G G S G G Multicast G G G G G • efficiency in data transportation, shifting to the network layer the responsibility of delivering packets to all interested endstations There are a lot of one-tomany or many-to-many applications that use replicated-unicast or broadcast in order to send data to the receivers, but this consumes processing power and bandwidth Multimedia Systems How to Understand Multicast… • Multicast falls between unicast and broadcast • In fact we can view unicast and broadcast as two “degenerate” cases of multicast • Taking this viewpoint: unicast happens when there is a one-to-one data delivery broadcast happens when there is a one-to-all data delivery Multimedia Systems The Multicast Groups • Multicast introduces the concept of a multicast group • A multicast group has a single multicast group address, all hosts • • • • • • • from a group will receive the data sent to that address Multicast groups are dynamical, hosts can join and leave a group at any time Whether or not to be member of a group is a local decision A group can have any number of members A group can have any shape, size, or geographical extent A host can belong to several multicast groups at the same time The sender(s) do not have to belong to the group(s) to which they send traffic Group membership is receiver initiated (!) Multimedia Systems IPv4 Address Space • The IPv4 address is 32 bits wide • The address space has been divided in several address classes originally to yield network numbers of different sizes • IP addresses are usually expressed in the “dotted-decimal” notation, each address is written as four numbers between 0 and 255 divided by dots (e.g. 130.230.50.30) Multimedia Systems The IPv4 Address Classes • There are 4 IPv4 • • classes to date: A, B, C and D Initially all defined addresses were unicast After multicast addresses being defined, classes A, B and C are for unicast, and class D is for multicast Class A Address 0.0.0.0 - 127.255.255.255 Class B Address 128.0.0.0 - 191.255.255.255 Class C Address 192.0.0.0 - 223.255.255.255 Class D Address 224.0.0.0 - 239.255.255.255 6,25% 6,25% 12,50% 50,00% 25,00% Multimedia Systems Class A Class B Class C Class D Unspecified The IPv4 Address Syntax • Class A addresses begin with a 0 bit: 0 | 7 bits network number | 24 bits host number • Class A addresses begin with a 10 bit: 10 | 16 bits network number | 16 bits host number • Class A addresses begin with a 110 bit: 110 | 24 bits network number | 8 bits host number • Class A addresses begin with a 1110 bit: 1110 | 28 bits multicast group number Multimedia Systems Reserved Multicast Addresses • A group can take any address available from the multicast address space. However there are some addresses that are reserved and cannot be used, since those are reserved for different protocols, certain applications or special groups • Class D addresses starting with 224.0.0.x and 224.0.1.x have been reserved for various permanent assignments. For example: 224.0.0.0 : Base Address 224.0.0.1 : All Systems on this Subnet 224.0.0.2 : All Routers on this Subnet 224.0.0.4 : DVMRP Routers 224.0.0.5 : OSPF All Routers … 224.0.1.1 : Network Time Protocol 224.0.1.2 : SGI-Dogfight 224.0.1.3 : rwhod 224.0.1.5 : Artificial Horizons – Aviator Multimedia Systems Other Reserved Multicast Addresses • The last reserved multicast addresses 239.0.0.0/8 are set aside for use within private networks • Host groups on the public Internet should not use these addresses • Private networks that employ such addresses should not forward packets destined to such groups onto the Internet Multimedia Systems Scoping the Multicast Traffic • Multicast traffic should be limited, in order not to flood the Internet • Scoping the multicast traffic presents it’s difficulties when there are overlapping regions • There are several ways of scoping the multicast traffic (implicit scoping, TTL scoping, administrative scoping) Multimedia Systems Implicit Scoping • Implicit scoped groups are generally reserved • • • multicast addresses These packets are limited to the subnet on which they are originally transmitted Both the TTL field is set to 1 (only the current subnet), and the routers know not to ever forward packets having the destination address within certain range The implicit scoped addresses are taken from the range 224.0.0.0/24 Multimedia Systems TTL-Based Scoping • Each IP packet has a field • • • containing the TTL (time to live) Any router has a TTL value assigned to it Any packet having the TTL value less or equal than the router’s, is not to be forwarded Any packet having the TTL value greater than the router’s, will be forwarded with the TTL value decremented by 1 TTL Scope Threshold 0 Restricted to the same host 1 Restricted to the same subnetwork 15 Restricted to the same site 63 Restricted to the same region 127 Worldwide 191 Worldwide; limited bandwidth 255 Unrestricted in scope Multimedia Systems Properties of TTL-Based Scoping • It requires arbitrary choices of TTL ranges in order to be effective • The responsibility of enforcing the scope is divided between 2 separate entities: the network manager and the users of the source station(s) • Privacy and security policies are not applicable if the only administrative metric is the TTL, because TTL is indiscriminate Multimedia Systems Administrative Scoping • The idea behind administrative scoping is to provide a way to do scoping based on the multicast address • The range 239.0.0.0/8 has been reserved for administrative scoping • Even if these addresses represent 1/16 of multicast addresses, there still are 16,777,216 addresses to use IPv6 Scope Description IPv4 Prefix 3 Local 239.255.0.0/16 5 Site-local 239.253.0.0/16 8 Organization-local 239.132.0.0/14 Multimedia Systems Properties of Administrative Scoping • An administratively scoped region has fixed • • • boundaries Provides a mechanism for well-defined boundaries (which may overlap) It is a good privacy mechanism (important for business conferencing and other private information exchange) All administratively and TTL scoped regions must have the following properties: They must be convex They must be connected or compact Multimedia Systems Multicast Routing and Forwarding • Multicast routing protocols are used by multicast • • • routers to discover multicast delivery trees Multicast forwarding is the procedure of transmitting from one router to another the multicast packets, based on the information derived from multicast routing protocols Routers get information from the end-stations about their group memberships (consequently about the active groups) through IGMP Routers maintain the multicast delivery trees through specific protocols (DVMRP, PIM, MOSPF) Multimedia Systems Internet Group Management Protocol • IGMP is the signaling protocol that the end-stations • • • use to signal their group membership interest It is an integral part of IP, every router today is supposed to support it There have been two versions of IGMP, and the third is being developed as we speak Some companies (i.e. CISCO) have made their own version of IGMP for their switches (CGMP) Multimedia Systems IGMPv1 • One multicast router per LAN must periodically transmit Host • • • Membership Query messages, addressed to the all hosts group When an end-station receives an IGMP Query message, or when it wants to join a group, it sends a Host Membership Report addressed to the group’s address, for each group to which it belongs or in which it wants to join In order to avoid a flurry of Reports from every group members, each end-station chooses a random delay until it transmits the Report(s). If meanwhile it has detected another Report to a group to which it is a member, the end-station will not send that Report anymore If the router does not receive any Report from any member of a group after a number of Queries, it will assume that no group members are present on that particular interface, and it will stop forwarding the multicast packets for that group on that interface Multimedia Systems IGMPv2 • All the features from IGMPv1 are present in IGMPv2 with • • • • some enhancements to improve efficiency The multicast querier is the router with the lowest IP address When an end-station leaves a group, it sends a Leave Group message to the all-routers group (224.0.0.2) In IGMPv2 there is a Group-Specific Query addressed only to one group, so only one member from that group will send back a Report When there are a mixture between IGMPv1 and IGMPv2 endstations and/or routers the IGMPv1 will be used Multimedia Systems How to Implement a Multicast Application? • Decide what the application should do (text chat, • • radio, TV, conferencing, on-demand services, etc) considering the necessary and the available bandwidth Decide about the size of the intended coverage (LAN only, corporate intranet, campus MAN, etc) Decide about the scoping (TTL, administrative) considering also on the network configuration Multimedia Systems Routing Techniques • Broadcast and Prune The multicast data itself is the mean to control the delivery trees From time to time the multicast stream is broadcasted, and routers which do not have end-stations for those group(s) send backwards a prune message in order to remove themselves from the stream Protocols and Algorithms: DVMRP, PIM Dense Mode, RPM • Shared Trees There is a central point to which all receivers attach Shared trees (rendezvous points) must be joined before the flow of data, otherwise the central point doesn’t know of any stream and the data stops Protocols and Algorithms: MOSPF, PIM Sparse Mode Multimedia Systems Reverse Path Multicasting Algorithm • The first datagram is broadcasted to all “child” routers • If a “leaf” router detects that it has no groups interested in that datagram, it sends “upward” a prune message • Each “non-leaf” router keeps the prune messages from it’s children for a period of time. If it has received prune messages from all children, it send upwards a prune message • After the time delay has passed, each router purges it’s prune records and rebroadcast “downward” a datagram S G G G G G G G • If a leaf-router detects a “first” member of a group, it sends upward a “graft” message. This message is forwarded upwards by the routers until it reaches a active router Multimedia Systems Multicast Routing Protocols • There are several multicast routing protocols: DVMRP, PIM • • • (DM, SM), MOSPF These protocols rely until today on the Broadcast and Prune and Shared Trees routing techniques The routing protocols implement the routing algorithms (i.e. RPM), each with it’s own special enhancements, depending on the network topology or group-members density that they focus on Each network manager should select inside his/her network the routing protocol that is best suited for the network (s)he is managing Multimedia Systems The MBone • The Internet Multicast Backbone is an interconnected set of • • • sub-networks and routers that support the delivery of multicast traffic The MBone has grown from 40 subnets in four different countries, to a few hundred thousands subnets today It’s goal was to construct a semi-permanent IP multicast testbed to enable the deployment of multicast applications The MBone carries audio/video multicasts of IETF, NASA Space Shuttle Missions, U.S. House and Senate sessions, occasional concerts, sporting events, lectures etc Multimedia Systems Summary • • • • We found out what multicast is We know why multicast should be used We learned how multicast traffic is scoped We understood the algorithms with which routers route and forward the multicast traffic • We have seen the true potential of multicast trough the MBone Multimedia Systems Multicasting Digital Video Streams • The TUT’s Multimedia Laboratory has a project to • • • distribute digital streams In the Tietotalo building is installed a system that captures satellite and terrestrial digital video streams These streams are multicasted through the TUT’s network There are a series of programs that can receive and play the streams, both for Windows and Linux platforms (e.g. NetFilter) Multimedia Systems Conclusions • Multicast becomes more and more a necessity • Multicast improves network performances, • • • respectively the costs It is easy to configure the network (routers, switches) to support multicast In the future, more and more applications will become multicast-dependent Multicast has yet to prove it’s impact on our networking Multimedia Systems MPEG-4 over IP OUTLINE • MPEG-4 Systems • Transport Protocols for MPEG-4 delivery • Issues of “MPEG-4 over IP” • Conclusions • References Multimedia Systems Introduction • MPEG (Moving Picture Experts Group); • MPEG-1 standard on which Video-CD and MP3 are based; • MPEG-2 standard on which Digital Television set top boxes and DVD are based; • MPEG-4 standard for multimedia for the fixed and mobile web; • MPEG-7 standard for description and search of audio and visual content; • An “IP (Internet Protocol) address” uniquely identifies a node, a device or host connection on an IP network (or TCP/IP); Multimedia Systems Carriage of MPEG-4 contents over IP Networks • MPEG-4 is a standard designated for the representation and delivery of multimedia information over a variety of transport protocols; • MPEG-4 includes: – – – – Interactive scene management; Visual & Audio representations; Functional systems (multiplexing, synchronization); Object descriptor framework; • Transfer method for MPEG-4 over IP: – In context with specific IP packets; – Multiplexed in MPEG-4 Flexmux (carried in IP packets); – Multiplexed in MPEG-2 TS (carried in IP packets); Multimedia Systems Streaming Media Formats Multimedia Systems Example of MPEG-4 over IP Multimedia Systems Example of MPEG-4 scene Multimedia Systems Object-based compression and delivery Multimedia Systems HTTP Transport Protocol • It is a very simple way to stream media files; • The wire format is the same as the file-format storage; • Arbitrary MPEG-4 Intermedia files cannot be streamed directly using HTTP, because of the “loose” in ordering the objects, and possible cross-references within the media file; • Live streaming for Intermedia files can also be supported using proprietary methods; Multimedia Systems Media Control Protocols • In order to enable full streaming systems, a media control protocol needs to be defined to support the following features: 1. Seeking: – Forward; – Rewind; – Skip. 2. Bandwidth Scalability 3. Live Streaming Multimedia Systems MPEG-4 Systems • In MPEG-4 Systems, the transport of streams is divided in 4 layers: – Compression Layer: includes elementary (raw) media streams (audio, video, etc.). – Synchronization Layer (SL): Adds a header to each unit of an elementary stream, which includes time stamps, reference to a clock elementary stream, and identification of key frames (RandomAccessPoint). This is similar to the task of RTP in IP networks. However, SL does not contain payload type (like RTP), and does not contain the Elementary Stream. In addition, an SL packet does not contain an indication of its length, so it must be framed by a lower-level protocol such as FlexMux or RTP. – FlexMux Layer: Groups elementary streams according to common attributes, such a QoS requirements. This is very simple multiplexing protocol, but also very low overhead. – TransxMux Layer: This is the actual transport protocol, such as RTP/UDP, MPEG2, etc. MPEG-4 does not define its own transport protocol, but assumes the application relies on an existing transport protocol. The FlexMux Layer is optional, but the Synchronization Layer is always present. Multimedia Systems TCP/IP & SL-packet over UDP/IP • TCP/IP: – Not suitable for real-time transfers (high delays and causes jitter, it was created for reliable transmission over timely delivery); – Does not support multicast; – Congestion control mechanism not suitable for AV media; • SL-packet over UDP/IP: – SL provides: Timing & Sequence numbering; – UDP provides: Multiplexing, Length field, Checksum service; – SL+UDP may be used like a transport protocol for AV media; Multimedia Systems Problems of SL/UDP/IP • No other media stream can be synchronized with MPEG-4 data carried directly over UDP; • The dynamic scene and session control concepts cannot be extended to non MPEG-4 data; • No defined technique for synchronizing MPEG-4 streams from different servers; • Streams from different servers may collide (their sources may become unresolvable at destination) in a multicast session; • Mechanisms need to be defined to protect sensitive MPEG-4 data (RTP supports FEC); • A feedback channel must be defined for quality control; Multimedia Systems RTP & RTCP • RTP = Real-time Transport Protocol; • RTCP = Real-time Transport Control Protocol; • A session consists of an RTP/RTCP pair of channels • Usually works over UDP/IP (can work with other protocols also); • RTP supports: – – – – – – Multicasting; Payload type identification; Time stamping; Sequence numbering; Delivery monitoring; From UDP (Multiplexing, Length field, Checksum service); Multimedia Systems RTP • RTP Problems: – It does not support the timely delivery of data or any other QoS guarantees; – It does not guarantee delivery, so packets may be delivered out of order or get lost (no mechanism to recover from packet loss); • Time Stamp (TS): – Place incoming packet in correct timing order – Initial values are picked randomly and independently for each RTP stream; – Increase in time indicated by each packet; • Sequence Number (SN): – Detect packet loss; – Increase by one for each packet; • For video frame that is split into multiple RTP packets: they share the same TS but use different SN; Multimedia Systems RTP Characteristics • RTP can map only one source stream onto RTP session: – Multiplexing causes problems; – For scale coding, each layer must have its own RTP session and multicast group; • Within each RTP session, source can change its data format over time; • It allows FEC (Forward Error Correction); • Synchronize across different media streams; • Provide feedback on the quality of data using packet counts; • Identify and keep track of participants; Multimedia Systems MPEG-4 over RTP/UDP/IP • Easiest is to wrap the MPEG-4 SL packet in an RTP packet: – High overhead: two full headers; – RTCP may not provide enough control for the MPEG-4 stream; • Several types of MPEG-4 payloads are being defined by the IETF for different ESs; Multimedia Systems RTP ES & SL payload restrictions • RTP packetization is not media aware: – No unique scheme can be defined, need a payload definition per payload type (not practical); – This may require the definition of new session and scene description mechanisms to deal with all the flows; • Common restrictions: – RTP timestamp corresponds to composition time stamp (CTS) of MPEG-4 stream; – Packets should be sent in decoding order; – Streams can be synchronized using RTCP; • Map SL stream onto RTP session: – SL header is optional; • Reduced SL headers does not include: – Sequence number (mapped to RTP header); – Composition Time Stamp (mapped to RTP header); Multimedia Systems Streams & Media Control in MPEG-4 • Multiple Strems inMPEG-4: – Port consuming: • Each AV contains one or more streams; • Each stream needs one RTP session; – Potential solution: • Selective bundling of ESs-FlexMux -> define a multiplexed MPEG-4 payload (may have to be defined for multiple payload types); • Generic RTP multiplexing for use with MPEG-4, under development by IETF. • MPEG-4 Media Control: – Remote interactivity: add or delete a stream, etc. – Media control channel allows renegotiating in time the available network and processing resources; – Must have an efficient signaling protocol that can handle such messages; Multimedia Systems Media Control Framework • To allow a client and one or more servers to exchange types of control messages and also allow for peer to peer exchange between two or more clients, the framework requires several components: – A description of the stored or live presentation; – A set of protocols that can provide proper services for the back channel message delivery; – A set of protocols that can allocate resources for the involved hosts and networks; Multimedia Systems Components of media control (1) • Presentation Description: – The client needs to refer to the description of a presentation that expresses the temporal and static properties of the presentation itself; – Must include information about the media, location of the media, etc. – Should provide multiple description instances of the same presentation so that the client can specify a given combination that fits its needs/capabilities – the client is the orchestrator of the presentation and the server is participating; Multimedia Systems Components of media control (2) • Client and Server State Representations: – Out of band signaling is used: the data streams and the control information are carried over separate channels using different protocols, each best suited to their needs and modes of operation; – As the media streams may be modified by the end user, the server needs to a state if the streams status for each client it is serving; – The client has to keep track of all the participating streams; Multimedia Systems Components of media control (3) • Basic Media Control Messages: – A multimedia system should have access to control messages ranging from remote VCR functions such as stop, play, fast forward and fast reverse, to messages generated in response to user actions to modify the presentation of a given object stream such as add or remove or alter, etc. – The basic control functionality relates to presentation and stream set-up: play, stop, pause, teardown and recording; Multimedia Systems Real Time Streaming Protocol (RTSP) • It is an application level protocol that provides an extensible framework to • • enable controlled delivery of real-time data, such as audio & video; It can be transported over UDP, TCP and is designated to work with RTP and HTTP; Provide support for bidirectional communications (frame level timing for remote video editing); • RTSP does: – Control the transmission of media stream; – Use out-of-band signaling; • RTSP does not: – Define compression schemes; – Define how AV is encapsulated; – Define how to buffer; Multimedia Systems MPEG-4 and RTSP • From DMIF’s perspective, RTSP is an application alongside MPEG-4 systems; • The RTSP client and server interact with the MPEG-4 systems; • The RTSP client and server control the streams through the DAI by an RTSPDMIF interface; • The interface is kept very simple by limiting it to field mapping between the RTSP fields and the DAI primitive parameters; • The RTSP client server interactions are used to control the MPEG-4 elementary streams; Multimedia Systems Session Initiation Protocol (SIP) • IETF Family of Session Protocols: – Session Description Protocol (SDP); – Session Announcement Protocol (SAP); – Session Initiation Protocol (SIP); • SIP: – – – – Two basic components: user agent & network server; Independent of lower layer protocols; Extensible to be application specific; Gaining widespread use in IP telephony; • MPEG-4 and SIP: – Unique ability to control different media types within a single session Multiple stream transmission in one network session; – User Agent model fits in well with an MPEG-4 Client/Server model (point-to-point communication); Multimedia Systems Toolboxes for transmitting MPEG-4 over internet • RTP transport of audio/video/… data, quality-of-service feedback; • RTSP very simple media control of streams; • SIP inviting people, media servers to sessions – telephony and streaming audio/video; • HTTP, SDP retrieve media descriptions; Multimedia Systems Issues • Encapsulation of MPEG-4 Sync layer packetized stream: – IEC/ISO 14496-8, framework still in revision; – Lots of issues still remain: time axis, buffer management, etc… • Interactivity between application and End User: – Description of MPEG-4 content; – Initialization of an MPEG-4 session; • SIP and IPC (Inter Process communication): – How to describe the dynamic process of channel (stream) setup and release? – What control information is necessary and how to transport it? • Transport and IP QoS: – Must define a mapping mechanism among the different QoS mechanisms: transport QoS (not available yet), network QoS, etc. • And much more… Multimedia Systems Conclusions • MPEG-4 is here in a limited fashion; • We will see a marked growth in MPEG-4 products as chip sets become more readily available; • Simple basic MPEG-4 service is not a problem; • There is a lot of ongoing research on how to deliver MPEG-4 content over IPbased networks; • The extended version still requires a lot more work. Multimedia Systems References • Multimedia Systems, Standards, and Networks, edited by Atul Puri and Tsuhan chen, publ. Marcel Dekker, Signal Processing and Communications Series; • Magda El-Zarki, Video Over IP, IEEE Infocom 2001, April 2001. • Standards for Multimedia Streaming and Communication over Wireless Networks v1.0, by Emblaze Research, July 2000. • Haining Liu, Xiaoping Wei, Magda El Zarki, A transport infrastructure supporting real time interactive MPEG-4 Client-Server Applications over IP networks, IWDC 2001, pp. 401-412. Multimedia Systems Windows Media Microsoft® Windows Media™ • a set of digital media components and features for personal computers and consumer appliances • is fueling a revolution in how news, information, and entertainment is distributed and experienced Multimedia Systems The Beginning • started with the personal computer and • • streaming media over the Internet or corporate network provided for the first time, truly interactive, ondemand audio and video though the quality over analog modems was constrained, users were intrigued and satisfied with capabilities like news and training ondemand, international radio, and Web-only event broadcasts. Multimedia Systems The Present and Future • several key initiatives that have already started to broaden the impact of streaming media on the consumer and the worker, the media and the IT industries: – – – – – Broadband Internet Digital Music Consumer Electronics Business E-comerce Multimedia Systems Broadband Internet • DSL and cable connected homes has paved the way for the delivery of CD quality music and near-broadcast quality video • need for high speed Internet access for high quality video and rich interactivity Multimedia Systems Digital Music • the music industry is at the forefront of the digital media revolution • providing CD-quality playback • increase the number of listeners • protect and distribute content • allow for widespread compatibility with other digital consumer devices Multimedia Systems Consumer Electronics • ensure that the digital media revolution extends • • beyond the PC! media throughout homes, in cars, while jogging a whole suite of additional Windows Media compatible consumer electronics devices, will soon be on the market, that span digital stereos, car stereos, and advanced television set top boxes Multimedia Systems Business • Companies are rapidly discovering the benefits of streaming media in their organizations: – virtual company meetings – "just-in-time" learning – ability to react to changing business conditions quickly with immediate communication to employees, partners and customers Multimedia Systems E-commerce • rapid growth in usage of digital media for both • • consumer and business applications content providers are looking to move from experimentation to revenue generation as quickly as possible enables content providers to manage, deliver, and sell Pay-Per-Download and Pay-Per-Stream content with Windows Media™ over the Internet Multimedia Systems Key Features of Windows Media • • • • • • • • • Highest Quality Audio Fast video encoding Scalable to Full Screen Windows Media On-Demand Producer Intelligent Streaming Advanced Compression Technologies Integrated with other Microsoft Products Digital Rights Management Microsoft Producer Multimedia Systems Windows Media Components • Windows Media Player • Windows Media Content Creation Tools • Windows Media Content Editing Tools • Windows Media Services Multimedia Systems Windows Media Player • play audio and video in most popular formats • read and perform commands scripted in an .asx • • • (ASF Stream Redirector) file receive script commands, markers, and metadata, such as clip title, author, and copyright render Windows Media broadcasts and ondemand content for viewing live news updates on the Internet Play movie clips and music videos on a Web site Multimedia Systems Windows Media Content Creation Tools • used to create ASF content: – Windows Media Encoder – Windows Media On-Demand Producer – Presentation Broadcasting – Windows Media Author – VidToASF – WavToASF Multimedia Systems Windows Media Content Editing Tools • manage and edit your .asf files: – indexing – checking – chopping Multimedia Systems Windows Media Services • used to send audio and video content, by unicast and multicast, to clients • control number of streams played • monitors clients connected to publishing points Multimedia Systems Inside Windows Media - DirectX • advanced suite of multimedia APIs (application • • programming interfaces) built into Microsoft Windows operating systems provides a standard development platform for Windows-based PCs by enabling software developers to access specialized hardware features without having to write hardwarespecific code DirectX was first introduced in 1995 and is a recognized standard for multimedia application development on the Windows platform Multimedia Systems DirectX Usage • running and displaying applications like games that are rich in real-time full-color 3-D graphics • movies, video presentations • music, surround sound • playing network games Multimedia Systems DirectShow Overview • DirectShow is the streaming media component • • of DirectX enables the high-quality capture and playback of multimedia streams such as AVI, MP3, and WAV files with DirectShow you can create DVD Players, Video Editing Packages, Converters, MP3 Players and Encoders, and other video/audio manipulation applications. Multimedia Systems DirectShow Goal • design goal is to simplify the task of creating • multimedia applications on the Windows platform by isolating applications from the complexities of data transports, hardware differences, and synchronization issues to achieve the throughput necessary for streaming video and audio, DirectShow uses DirectDraw and DirectSound to render data efficiently to the system's sound and graphics cards Multimedia Systems DirectShow relationship with other components Multimedia Systems DirectShow Architecture • DirectShow uses a modular architecture in which • operating system components called filters can be mixed and matched to provide support for many different scenarios. DirectShow includes filters that support cutting-edge multimedia capture and tuning devices based on the Windows Driver Model (WDM) as well as filters that support legacy Video for Windows (VfW) capture cards and older codecs written for the Audio Compression Manager (ACM) and Video Compression Manager (VCM) interfaces. Multimedia Systems Filter Overview • special DLL file (.ax) • create with Microsoft Visual Studio • based on COM (Component Object Model) – getting a pointer to the interface – release the pointer after you are done Object Model • implements standard interfaces • input and output pins Multimedia Systems Filter mixing • • • • source filters (file, local network, internet) splitter filters (MPEG2 Demux) audio/video (de)compressors filters (MP3, DivX) audio/video renderer filters (FullScreen, DirectSound) Multimedia Systems Filter’s Pins • interconnects two filters • input and output pins • link between two filters: one-to-one • responsible for – negotiation of media transferred through – data exchange – synchronization Multimedia Systems Filter Graph Manager • all DirectShow applications use this object at some point • this object controls the filter graph • controls the data flow in the filters • simple API – addFilter – run, stop, and pause Multimedia Systems References • Microsoft www.microsoft.com • Windows Media www.windowsmedia.com • MSDN (Microsoft Developer Network) msdn.microsoft.com Multimedia Systems