cmp632 multimedia complete slides

680
1 Back Close Multimedia Systems Module No: CMP632 c David Marshall 1999—2004

Post on 17-Dec-2015

46 views

Category:

Documents


18 download

DESCRIPTION

multimedia lucture

TRANSCRIPT

  • 1JJIIJI

    BackClose

    Multimedia SystemsModule No: CMP632

    c David Marshall 19992004

  • 2JJIIJI

    BackClose

    About This Course Single Module Tutorials Labs Multimedia LabAssessment:

    Exam 70% Coursework 30%

  • 3JJIIJI

    BackClose

    Course Web Sitehttp://www.cs.cf.ac.uk/Dave/ISE Multimedia/

    PDFs of Slides (Colour) PDF Additional Notes. HTML based notes Lots of Links to other material Under Development More to be added

    See also related BSC Course:http://www.cs.cf.ac.uk/Dave/Multimedia/

  • 4JJIIJI

    BackClose

    Aims of Module Broad grounding in issue surrounding multimedia,

    role of multimedia Systems design of multimedia Systems

    Multimedia data digital audio, graphics and video, etc Underlying concepts and representations of sound, pictures

    and video, Data compression and transmission, Integration of media, Multimedia authoring, Delivery of multimedia. Applications

  • 5JJIIJI

    BackClose

    Objectives of Course

    Understand the relevance and underlying infrastructure ofthe multimedia systems.

    Understand core multimedia technologies and standards(Digital Audio, Graphics, Video,data transmission/compression)

    Be aware of factors involved in multimedia systemsperformance, integration and evaluation

  • 6JJIIJI

    BackClose

    Syllabus Outline

    Topics in the module include the following: Introduction: Multimedia applications and requirements (e.g.,

    overview of multimedia systems, video-on-demand, interactivetelevision, video conferencing, hypermedia courseware,groupware, World Wide Web, and digital libraries).

    Audio/Video fundamentals including analog and digitalrepresentations, human perception, andaudio/video equipment, applications.

    Audio and video compression perceptual transform coders for images/video

    (e.g., JPEG, MPEG, H.263, etc.), scalable coders (e.g., pyramid coders), and perceptual audio encoders. image and video processing applications and algorithms.

  • 7JJIIJI

    BackClose

    Recommended Course BooksSupplied Text: Managing Multimedia:

    Project Management for Interactive Media(2nd Edition)Elaine England and Andy Finney,Addison Wesley, 1998(ISBN 0-201-36058-6)

  • 8JJIIJI

    BackClose

    Recommended Course Book

    Fundamentals of MultimediaMark S. Drew, Li Ze-NianPrentice Hall, 2003(ISBN: 0130618721)

  • 9JJIIJI

    BackClose

    Other Good General Texts

    Multimedia Communications:Applications, Networks, Protocols andStandards,Fred Halsall,Addison Wesley, 2000(ISBN 0-201-39818-4)OR

    Networked Multimedia Systems,Raghavan and Tripathi,Prentice Hall,(ISBN 0-13-210642)

  • 10

    JJIIJI

    BackClose

    The following books are highly recommended reading: Hypermedia and the Web: An Engineering Approach, D. Lowe and W. Hall, J. Wiley

    and Sons, 1999 (ISBN 0-471-98312-8). Multimedia Systems, J.F.K, Buford, ACM Press, 1994 (ISBN 0-201-53258-1). Understanding Networked Multimedia, Fluckiger, Prentice Hall, (ISBN 0-13-190992-4) Design for Multimedia Learning, Boyle, Prentice Hall, (ISBN 0-13-242215-8) Distributed Multimedia:Technologies, Applications, and Opportunities in the Digital

    Information Industry (1st Edition) P.W. Agnew and A.S. Kellerman , Addison Wesley,1996 (ISBN 0-201-76536-5)

    Multimedia Communication, Sloane, McGraw Hill, (ISBN 0-077092228) Virtual Reality Systems, J. Vince, Addison Wesley, 1995 (ISBN 0-201-87687-6) Encyclopedia of Graphics File Formats, Second Edition by James D. Murray and William

    vanRyper, OReilly & Associates, 1996 (ISBN: 1-56592-161-5)

  • 11

    JJIIJI

    BackClose

    Multimedia Authoring Useful for Assessed Coursework

    Macromedia Director MX Demystified,Phil Gross, Macromedia Press (ISBN:0321180976)

    Macromedia Director MX and Lingo:Training from the Source Phil Gross,Macromedia Press (ISBN: 0321180968)

    Director 8 and Lingo (InsideMacromedia), Scott Wilson, Delmar(ISBN: 0766820084)

    Director/Lingo Manuals ApplicationHelp and in Library

    SMIL: Adding Multimedia to the WebTim Kennedy and Mary Slowinski,Sams.net (ISBN: 067232167X)

  • 12

    JJIIJI

    BackClose

    The following provide good reference material for parts of themodule:Multimedia Systems

    Hyperwave:The Next Generation Web Solution, H. Maurer,Addison Wesley, 1996 (ISBn 0-201-40346).

  • 13

    JJIIJI

    BackClose

    Digital Audio

    A programmers Guide to Sound, T. Kientzle, Addison Wesley,1997 (ISBN 0-201-41972-6)

    Audio on the Web The official IUMA Guide, Patterson andMelcher, Peachpit Press.

    The Art of Digital Audio, Watkinson,Focal/Butterworth-Heinmann.

    Synthesiser Basics, GPI Publications. Signal Processing: Principles and Applications, Brook and

    Wynne, Hodder and Stoughton. Digital Signal Processing, Oppenheim and Schafer, Prentice

    Hall.

  • 14

    JJIIJI

    BackClose

    Digital Imaging/Graphics/Video

    Digital video processing, A.M. Tekalp, Prentice Hall PTR,1995.

    Encyclopedia of Graphics File Formats, Second Edition byJames D. Murray and William vanRyper, 1996, OReilly &Associates.

  • 15

    JJIIJI

    BackClose

    Data Compression

    The Data Compression Book, Mark Nelson,M&T Books, 1995. Introduction to Data Compression, Khalid Sayood, Morgan

    Kaufmann, 1996. G.K. Wallace, The JPEG Still Picture Compression Standard CCITT, Recommendation H.261 D. Le Gall, MPEG: AVideo Compression Standard forMultimediaApplications

    K. Patel, et. al., Performance of a Software MPEGVideo Decoder P. Cosman, et. al., Using Vector Quantization for Image Processing

  • 16

    JJIIJI

    BackClose

    Introduction to Multimedia

    What is Multimedia?

  • 17

    JJIIJI

    BackClose

    Introduction to MultimediaWhat is Multimedia?

    Multimedia can have a many definitions these include:

    Multimedia means that computer information can berepresented through audio, video, and animation in additionto traditional media (i.e., text, graphics/drawings, images).

  • 18

    JJIIJI

    BackClose

    General Definition

    A good general definition is:

    Multimedia is the field concerned with the computer-controlledintegration of text, graphics, drawings, still and moving images(Video), animation, audio, and any other media where everytype of information can be represented, stored, transmitted andprocessed digitally.

  • 19

    JJIIJI

    BackClose

    Multimedia Application Definition

    A Multimedia Application is an Application which uses acollection of multiple media sources e.g. text, graphics, images,

    sound/audio, animation and/or video.

  • 20

    JJIIJI

    BackClose

    What is HyperText and HyperMedia?

    Hypertext is a text which contains links to other texts.The term was invented by Ted Nelson around 1965.

    Figure 1: Definition of Hypertext

  • 21

    JJIIJI

    BackClose

    Hypertext is therefore usually non-linear (as indicated below).

    Figure 2: Illustration of Hypertext Links

  • 22

    JJIIJI

    BackClose

    Hypermedia

    HyperMedia is not constrained to be text-based. It can includeother media, e.g., graphics, images, and especially thecontinuous media sound and video.

    Figure 3: Definition of HyperMedia

  • 23

    JJIIJI

    BackClose

    Example Hypermedia Applications?

  • 24

    JJIIJI

    BackClose

    Example Hypermedia Applications?

    The World Wide Web (WWW) is the best example of ahypermedia application.

    Powerpoint Adobe Acrobat Macromedia Director Many Others?

  • 25

    JJIIJI

    BackClose

    Multimedia Systems

    A Multimedia System is a system capable of processingmultimedia data and applications.

    A Multimedia System is characterised by the processing,storage, generation, manipulation and rendition of Multimediainformation.

  • 26

    JJIIJI

    BackClose

    Characteristics of a Multimedia System

    A Multimedia system has four basic characteristics:

    Multimedia systems must be computer controlled. Multimedia systems are integrated. The information they handle must be represented digitally. The interface to the final presentation of media is usuallyinteractive.

  • 27

    JJIIJI

    BackClose

    Challenges for Multimedia Systems

    Distributed Networks Temporal relationship between data

    Render different data at same time continuously. Sequencing within the mediaplaying frames in correct order/time frame in video

    Synchronisation inter-media scheduling

    E.g. Video and Audio Lip synchronisation is clearlyimportant for humans to watch playback of video and audioand even animation and audio.

    Ever tried watching an out of (lip) sync film for a long time?

  • 28

    JJIIJI

    BackClose

    Key Issues for Multimedia Systems

    The key issues multimedia systems need to deal with here are:

    How to represent and store temporal information. How to strictly maintain the temporal relationships on play

    back/retrieval What process are involved in the above. Data has to represented digitally AnalogDigital

    Conversion, Sampling etc. Large Data Requirements bandwidth, storage, compression

  • 29

    JJIIJI

    BackClose

    Desirable Features for a Multimedia System

    Given the above challenges the following feature a desirable (ifnot a prerequisite) for a Multimedia System:Very High Processing Power needed to deal with large data

    processing and real time delivery of media. Special hardwarecommonplace.

    Multimedia Capable File System needed to deliver real-timemedia e.g. Video/Audio Streaming.

    Special Hardware/Software needed e.g RAID technology.Data Representations File Formats that support multimedia

    should be easy to handle yet allow forcompression/decompression in real-time.

  • 30

    JJIIJI

    BackClose

    Efficient and High I/O input and output to the file subsystemneeds to be efficient and fast. Needs to allow for real-timerecording as well as playback of data. e.g. Direct to Diskrecording systems.

    Special Operating System to allow access to file system andprocess data efficiently and quickly. Needs to support directtransfers to disk, real-time scheduling, fast interrupt processing,I/O streaming etc.

    Storage and Memory large storage units (of the order of 50-100 Gb or more) and large memory (50 -100 Mb or more).Large Caches also required and frequently of Level 2 and 3hierarchy for efficient management.

    Network Support Client-server systems common asdistributed systems common.

    Software Tools user friendly tools needed to handle media,design and develop applications, deliver media.

  • 31

    JJIIJI

    BackClose

    Components of a Multimedia System

    Now let us consider the Components (Hardware and Software)required for a multimedia system:Capture devices Video Camera, Video Recorder, Audio

    Microphone, Keyboards, mice, graphics tablets, 3D inputdevices, tactile sensors, VR devices. Digitising/SamplingHardware

    Storage Devices Hard disks, CD-ROMs, Jaz/Zip drives, DVD,etc

    Communication Networks Ethernet, Token Ring, FDDI, ATM,Intranets, Internets.

    Computer Systems Multimedia Desktop machines,Workstations, MPEG/VIDEO/DSP Hardware

    Display Devices CD-quality speakers, HDTV,SVGA, Hi-Resmonitors, Colour printers etc.

  • 32

    JJIIJI

    BackClose

    Applications

    Examples of Multimedia Applications include: World Wide Web Hypermedia courseware Video conferencing Video-on-demand Interactive TV Groupware Home shopping Games Virtual reality Digital video editing and production systems Multimedia Database systems

  • 33

    JJIIJI

    BackClose

    Trends in Multimedia

    Current big applications areas in Multimedia include:

    World Wide Web Hypermedia systems embrace nearlyall multimedia technologies and application areas.

    MBone Multicast Backbone: Equivalent of conventional TVand Radio on the Internet.

    Enabling Technologies developing at a rapid rate to supportever increasing need for Multimedia. Carrier, Switching,Protocols, Applications, Coding/Compression, Database,Processing, and System Integration Technologies at theforefront of this.

  • 34

    JJIIJI

    BackClose

    Multimedia Data: Input and format

    Text and Static Data

    Source: keyboard, floppies, disks and tapes. Stored and input character by character:

    Storage of text is 1 byte per character (text or format character). For other forms of data e.g. Spreadsheet files some formats

    may store format as text (with formatting) others may use binaryencoding.

    Format: Raw text or formatted text e.g HTML, Rich Text Format(RTF), Word or a program language source (C, Pascal, etc..

    Not temporal BUT may have natural implied sequence e.g.HTML format sequence, Sequence of C program statements.

    Size Not significant w.r.t. other Multimedia.

  • 35

    JJIIJI

    BackClose

    Graphics

    Format: constructed by the composition of primitive objectssuch as lines, polygons, circles, curves and arcs.

    Input: Graphics are usually generated by a graphics editorprogram (e.g. Freehand) or automatically by a program (e.g.Postscript).

    Graphics are usually editable or revisable (unlike Images). Graphics input devices: keyboard (for text and cursor control),

    mouse, trackball or graphics tablet. graphics standards : OpenGL, PHIGS, GKS Graphics files usually store the primitive assembly Do not take up a very high storage overhead.

  • 36

    JJIIJI

    BackClose

    Images

    Still pictures which (uncompressed) are represented as abitmap (a grid of pixels).

    Input: Generated by programs similar to graphics or animationprograms.

    Input: scanned for photographs or pictures using a digitalscanner or from a digital camera.

    Analog sources will require digitising. Stored at 1 bit per pixel (Black and White), 8 Bits per pixel

    (Grey Scale, Colour Map) or 24 Bits per pixel (True Colour) Size: a 512x512 Grey scale image takes up 1/4 Mb, a 512x512

    24 bit image takes 3/4 Mb with no compression. This overhead soon increases with image size Compression is commonly applied.

  • 37

    JJIIJI

    BackClose

    Audio

    Audio signals are continuous analog signals. Input: microphones and then digitised and stored usually compressed. CD Quality Audio requires 16-bit sampling at 44.1 KHz 1 Minute of Mono CD quality audio requires 5 Mb.

  • 38

    JJIIJI

    BackClose

    Video

    Input: Analog Video is usually captured by a video cameraand then digitised.

    There are a variety of video (analog and digital) formats Raw video can be regarded as being a series of single images.

    There are typically 25, 30 or 50 frames per second. a 512x512 size monochrome video images take 25*0.25 =

    6.25Mb for a minute to store uncompressed. Digital video clearly needs to be compressed.

  • 39

    JJIIJI

    BackClose

    Output Devices

    The output devices for a basic multimedia system include

    A High Resolution Colour Monitor CD Quality Audio Output Colour Printer Video Output to save Multimedia presentations to (Analog)

    Video Tape, CD-ROM DVD. Audio Recorder (DAT, DVD, CD-ROM, (Analog) Cassette) Storage Medium (Hard Disk, Removable Drives, CD-ROM)

  • 40

    JJIIJI

    BackClose

    Multimedia Authoring:Systems and ApplicationsWhat is an Authoring System?

    An Authoring System is a program which has pre-programmedelements for the development of interactive multimedia softwaretitles.

    Authoring systems vary widely

    orientation, capabilities, and learning curve.

  • 41

    JJIIJI

    BackClose

    Why should you use an authoring system?

    can speed up programming possibly content developmentand delivery

    about 1/8th However, the content creation (graphics, text, video, audio,

    animation, etc.) not affected by choice of authoring system; time gains accelerated prototyping

  • 42

    JJIIJI

    BackClose

    Authoring Vs Programming

    Big distinction between Programming and Authoring. Authoring

    assembly of Multimedia possibly high level graphical interface design some high level scripting.

    Programming involves low level assembly of Multimedia construction and control of Multimedia involves real languages like C and Java.

  • 43

    JJIIJI

    BackClose

    Multimedia Authoring Paradigms

    The authoring paradigm, or authoring metaphor, is themethodology by which the authoring system accomplishes itstask.

    There are various paradigms

    Scripting Language

    Iconic/Flow Control

    Frame

    Card/Scripting

    Cast/Score/Scripting Macromedia DirectorHypermedia Linkage

    Tagging SMIL

  • 44

    JJIIJI

    BackClose

    Scripting Language

    closest in form to traditional programming. The paradigmis that of a programming language, which specifies (byfilename) multimedia elements, sequencing, hotspots, synchronization, etc.

    Usually a powerful, object-oriented scripting language in-program editing of elements (still graphics, video, audio,

    etc.) tends to be minimal or non-existent. media handling can vary widely

  • 45

    JJIIJI

    BackClose

    Examples

    The Apples HyperTalk for HyperCard, Assymetrixs OpenScript for ToolBook and Lingo scripting language of Macromedia DirectorHere is an example lingo script to jump to a frame

    global gNavSprite

    on exitFramego the frameplay sprite gNavSprite

    end

  • 46

    JJIIJI

    BackClose

    Iconic/Flow Control

    tends to be the speediest in development time best suited for rapid prototyping and short-development

    time projects. The core of the paradigm is the Icon Palette, contains: possible functions/interactions of a program, and the Flow Line shows the actual links between the

    icons. slowest runtimes programs , high interaction overheads

    Examples: Authorware IconAuthor

  • 47

    JJIIJI

    BackClose

    Frame

    similar to the Iconic/Flow Control paradigm usually incorporates an icon palette the links drawn between icons are conceptual do not always represent the actual flow of the program.

    Examples Quest (whose scripting language is C) Apple Media Kit.

  • 48

    JJIIJI

    BackCloseFigure 4: Macromedia Authorware Iconic/Flow Control Examples

  • 49

    JJIIJI

    BackClose

    Card/Scripting

    paradigm provides a great deal of power(via the incorporated scripting language)

    suffers from the index-card structure. Well suited for Hypertext applications, and especially

    suited for navigation intensive (e.g. Cyans MYST game)applications.

    extensible via XCMDs and DLLs; all objects (including individual graphic elements) to be

    scripted; many entertainment applications are prototyped in a

    card/scripting system prior to compiled-language coding.

  • 50

    JJIIJI

    BackClose

    Cast/Score/Scripting

    uses a music score as its primary authoring metaphor synchronous elements are shown in various horizontal

    tracks simultaneity shown via the vertical columns. power of this metaphor lies in the ability to script the

    behavior of each of the cast members. easily extensible to handle other functions (such as

    hypertext) via XOBJs, XCMDs, and DLLs. best suited for animation-intensive or synchronized media

    applications;Examples Macromedia Director Macromedia Flash cut Down director Interface

  • 51

    JJIIJI

    BackClose

    Hierarchical Object

    paradigm uses a object metaphor (like OOP) visually represented by embedded objects and iconic

    properties. learning curve is non-trivial, visual representation of objects can make very

    complicated constructions possible.

  • 52

    JJIIJI

    BackClose

    Figure 5: Macromedia Director Score Window

  • 53

    JJIIJI

    BackClose

    Figure 6: Macromedia Director Cast Window

  • 54

    JJIIJI

    BackClose

    Figure 7: Macromedia Director Script Window

  • 55

    JJIIJI

    BackClose

    Hypermedia Linkage

    similar to the Frame paradigm shows conceptual links between elements lacks the Frame paradigms visual linkage metaphor.

  • 56

    JJIIJI

    BackClose

    Tagging

    tags in text files to link pages, provide interactivity and integrate multimedia elements.

    Examples: SGML/HTML, SMIL (Synchronised Media Integration Language), VRML, 3DML and WinHelp

  • 57

    JJIIJI

    BackClose

    Issues in Multimedia Applications Design

    There are various issues in Multimedia authoring.

    Issues involved:

    Content Design Technical Design

  • 58

    JJIIJI

    BackClose

    Content Design

    Content design deals with:

    What to say, what vehicle to use.In multimedia, there are five ways to format and deliver yourmessage.

    You can

    write it, illustrate it, wiggle it, hear it, and interact with it.

  • 59

    JJIIJI

    BackClose

    Scripting (writing)Rules for good writing:1. Understand your audience and correctly address them.2. Keep your writing as simple as possible. (e.g., write out the

    full message(s) first, then shorten it.)3. Make sure technologies used complement each other.

  • 60

    JJIIJI

    BackClose

    Graphics (illustrating) Make use of pictures to effectively deliver your messages. Create your own (draw, (color) scanner, PhotoCD, ...), or

    keep copy files of art works. Cavemen did it first.

    Graphics Styles fonts colors

    pastels earth-colors metallic primary color neon color

  • 61

    JJIIJI

    BackClose

    Animation (wiggling) Types of Animation

    Character Animation humanise an object Highlights and Sparkles Moving Text Video live video or digitized video

  • 62

    JJIIJI

    BackClose

    2. When to Animate

    Enhance emotional impact Make a point (instructional) Improve information delivery Indicate passage of time Provide a transition to next subsection

  • 63

    JJIIJI

    BackClose

    Audio (hearing)Types of Audio in Multimedia Applications:1. Music set the mood of the presentation, enhance the emotion,

    illustrate points2. Sound effects to make specific points, e.g., squeaky doors,

    explosions, wind, ...3. Narration most direct message, often effective

  • 64

    JJIIJI

    BackClose

    Interactivity (interacting) interactive multimedia systems! people remember 70% of what they interact with (according

    to late 1980s study)

  • 65

    JJIIJI

    BackClose

    Types of Interactive Multimedia Applications:1. Menu driven programs/presentations

    often a hierarchical structure (main menu, sub-menus, ...)2. Hypermedia

    +: less structured, cross-links between subsections of thesame subject > non-linear, quick access to information+: easier for introducing more multimedia features, e.g., moreinteresting buttons-: could sometimes get lost in navigating the hypermedia

    3. Simulations / Performance-dependent Simulations e.g., Games SimCity, Flight Simulators

  • 66

    JJIIJI

    BackClose

    Technical Design

    Technological factors may limit the ambition of your multimediapresentation.

    Studied Later in detail.

  • 67

    JJIIJI

    BackClose

    Storyboarding

    The concept of storyboarding has been by animators and theirlike for many years.

  • 68

    JJIIJI

    BackClose

    Storyboarding

    used to help plan the generalorganisation

    used to help plan the contentof a presentation by recording

    organizing ideas on indexcards,

    placed on board/wall. Storyboard evolves as the

    media are collected andorganised: new ideas and refinements

    to the presentation aremade.

  • 69

    JJIIJI

    BackClose

    Storyboard Examples

    DVD Example Storyboarding Explained Acting With a Pencil The Storyboard Artist Star Wars Quicktime Storyboard

  • 70

    JJIIJI

    BackClose

    Overview of Multimedia Software Tools

    Digital Audio

    Macromedia Soundedit - Edits a variety of different formataudio files, apply a variety of effects (Fig 8)

    Figure 8: Macromedia Soundedit Main and Control Windows andEffects Menu

  • 71

    JJIIJI

    BackClose

    CoolEdit/Adobe Audtion Edits a variety of different formataudio files

    Many Public domain audio editing tools also exist.

  • 72

    JJIIJI

    BackClose

    Music Sequencing and Notation

    Cakewalk

    Supports General MIDI Provides several editing views (staff, piano roll, event list)

    and Virtual Piano Can insert WAV files and Windows MCI commands (animation

    and video) into tracks

  • 73

    JJIIJI

    BackClose

    Cubase

    A better software than Cakewalk Express Intuitive Interface to arrange and play Music (Figs 9 and 10) Wide Variety of editing tools including Audio (Figs 11 and 12 Score Editing

  • 74

    JJIIJI

    BackClose

    Figure 9: Cubase Arrange Window (Main)

  • 75

    JJIIJI

    BackClose

    Figure 10: Cubase Transport Bar Window Emulates a TapeRecorder Interface

  • 76

    JJIIJI

    BackClose

    Figure 11: Cubase Audio Window

  • 77

    JJIIJI

    BackClose

    Figure 12: Cubase Audio Editing Window with Editing Functions

  • 78

    JJIIJI

    BackClose

    Logic Audio

    Cubase Competitor, similar functionalityMarc of the Unicorn Performer

    Cubase/Logic Audio Competitor, similar functionality

  • 79

    JJIIJI

    BackCloseFigure 13: Cubase Score Editing Window

  • 80

    JJIIJI

    BackClose

    Image/Graphics Editing

    Adobe Photoshop

    Allows layers of images, graphics and text Includes many graphics drawing and painting tools Sophisticate lighting effects filter A good graphics, image processing and manipulation tool

    Adobe Premiere

    Provides large number (up to 99) of video and audio tracks,superimpositions and virtual clips

    Supports various transitions, filters and motions for clips A reasonable desktop video editing toolMacromedia Freehand

    Graphics drawing editing packageMany other editors in public domain and commercially

  • 81

    JJIIJI

    BackClose

    Image/Video Editing

    Many commercial packages available

    Adobe Premier Videoshop Avid Cinema SGI MovieMaker

  • 82

    JJIIJI

    BackClose

    Animation

    Many packages available including:

    Avid SoftImage Animated Gif building packages e.g. GifBuilder

  • 83

    JJIIJI

    BackClose

    Multimedia Authoring

    Tools for making a complete multimedia presentation whereusers usually have a lot of interactive controls.Macromedia Director

    Movie metaphor (the cast includes bitmapped sprites, scripts,music, sounds, and palettes, etc.)

    Can accept almost any bitmapped file formats Lingo script language with own debugger allows more control

    including external devices, e.g., VCRs and video disk players Ready for building more interactivities (buttons, etc.) follows the cast/score/scripting paradigm, tool of choice for animation content (Well FLASH for Web).

  • 84

    JJIIJI

    BackClose

    Authorware

    Professional multimedia authoring tool Supports interactive applications with hyperlinks,

    drag-and-drop controls, and integrated animation Compatibility between files produced from PC version and

    MAC versionOther Authoring Tools mentioned in notes later

  • 85

    JJIIJI

    BackClose

    Multimedia Authoring:Scripting (Lingo)

    Cast/Score/Scripting paradigm.

    This section is a very brief introduction to Director.

    For further Information, You should consult: Macromedia Director Using Director Manual In Library Macromedia Director : Lingo Dictionary Manual In Library Macromedia Director: Application Help Select Help from within the Director

    application. This is very thorough resource of information. Macromedia Director Guided tours see Help menu option. A variety of web sites contain director tutorials, hints and information including

    http://www.macromedia.com

  • 86

    JJIIJI

    BackClose

    More Director References

    Macromedia Director MXDemystified,Phil Gross,Macromedia Press (ISBN:0321180976)

    Macromedia Director MX andLingo: Training from the SourcePhil Gross,Macromedia Press (ISBN:0321180968)

    Director 8 and Lingo(Inside Macromedia),Scott Wilson,Delmar (ISBN: 0766820084)

  • 87

    JJIIJI

    BackClose

    Related Additional Material and Coursework

    Tutorials with additional Director Instructional Material

    See Lab Worksheets 1 + 2

    Also Assessed Exercise 2

  • 88

    JJIIJI

    BackClose

    Director Overview/Definitions

    movies Basic Director Commodity:interactive multimedia pieces that can include animation, sound, text, digital video, and many other types of media. link to external media

    A movie can be as small and simple as an animated logo oras complex as an online chat room or game.

    Frames Director divides lengths of time into a series of frames,cf. celluloid movie.

  • 89

    JJIIJI

    BackClose

    Creating and editing movies

    4 Key Windows:

    the Stage Rectangular area where the movie plays

  • 90

    JJIIJI

    BackClose

    the Score : Where the movie is assembled;

  • 91

    JJIIJI

    BackClose

    one or more Cast windows Where the movies media elementsare assembled;

  • 92

    JJIIJI

    BackClose

    andthe Control Panel Controls how the movie plays back.

  • 93

    JJIIJI

    BackClose

    To create a new movie:

    Choose File > New > Movie

  • 94

    JJIIJI

    BackClose

    Some other key Director Components (1)

    Channels the rows in the Score that contain sprites forcontrolling media numbered contain the sprites that control all the visible media Special effects channels at the top contain behaviors as

    well as controls for the tempo, palettes, transitions, andsounds.

    Sprites Sprites are objects that control when, where, and how mediaappears in a movie.

  • 95

    JJIIJI

    BackClose

    Some other key Director Components (2)

    Cast members

    The media assigned to sprites. media that make up a movie. includes bitmap images, text, vector shapes, sounds, Flash

    movies, digital videos, and more.

    Lingo Directors scripting language, adds interactivity to amovie.

    Behaviors pre-existing sets of Lingo instructions.Markers identify fixed locations at a particular frame in a

    movie.

  • 96

    JJIIJI

    BackClose

    Lingo Scripting (1)

    Commands terms that instruct a movie to do something while themovie is playing. For example, go to sends the playback head toa specific frame, marker, or another movie.

    Properties attributes that define an object. For examplecolorDepth is a property of a bitmap cast member,

    Functions terms that return a value. For example, the date functionreturns the current date set in the computer. The key functionreturns the key that was pressed last. Parentheses occur at theend of a function,

    Keywords reserved words that have a special meaning.For example, end indicates the end of a handler,

  • 97

    JJIIJI

    BackClose

    Lingo Scripting (2)

    Events actions that scripts respond to.Constants elements that dont change. For example, the constants

    TAB, EMPTY, and RETURN always have the same meaning, andOperators terms that calculate a new value from one or more

    values. For example, the add operator (+) adds two or morevalues together to produce a new value.

  • 98

    JJIIJI

    BackClose

    Lingo Data Types

    Lingo supports a variety of data types:

    references to sprites and cast members, (Boolean) values: TRUE and FALSE , strings, constants, integers, and floating-point numbers.Standard Program structure syntax

  • 99

    JJIIJI

    BackClose

    Lingo Script Types (1)

    Director uses four types of scripts.

    Behaviors Behaviors are attached to sprites or frames in theScore.

    Figure 14: Behavior Icon

    Movie scripts available to the entire movie

    Figure 15: Movie script icon

  • 100

    JJIIJI

    BackClose

    Lingo Script Types (2)

    Parent scripts special scripts that contain Lingo used to createchild objects.

    Figure 16: Parent script icon

    Scripts attached to cast members independent of the Score.dont appear in the Cast window.

    Figure 17: Script button

  • 101

    JJIIJI

    BackClose

    Director Example 1: Simple AnimationA Bouncing Ball Graphic

    Run Example in Browser (Shockwave)Run Example in Browser (Lecture ONLY) No Lingo scripting. basic animation where a cast member

  • 102

    JJIIJI

    BackClose

    Creating the Bouncing Ball Graphic

    The following steps achieve a simple bouncing ball animationalong a path:

    1. Let us begin by creatinga new movie and setting theStage size: Start a New movie: File> New > Movie(Shortcut =Command+N)

    Choose Modify > Movie> Properties.In stage size, choose 640x 480.

  • 103

    JJIIJI

    BackClose

    2. Now let us create a ball, using a the vector shape tool:

    Choose Window > Vector Shape(Shortcut = Command+Shift+V)

    Click the filled ellipse button. Draw an ellipse (circle) about the size of

    the Vector Shape Window Click on the Gradient fill button. To change the colours, click the colour

    box on the left side of the Gradientcolour control

    Change the colour on the right side ofthe Gradient Colours to a dark blue.

    Change the Gradient type pull-downmenu from Linear to Radial.

    Change the Stroke Colour to white .

  • 104

    JJIIJI

    BackClose

    3. Now let us change a few other properties of this ellipse

    Close the Vector Shape window. In the Cast Window, select the ellipse. Choose Edit > Duplicate (Shortcut = Command+D). Double click the new cast, which opens it in the Vector Shape

    Tool. Change the Cycles to 3 and the Spread to 200. Name the latest ellipse to bouncing ball

  • 105

    JJIIJI

    BackClose

    4. Now we are going to animate the ball.

    Drag bouncing ball from the castmember window to the stage.

    You will notice the sprite (theobject that appears in the score)is extended over 20 frames.

    Drag the right end of the sprite toframe 40.

    Click anywhere in the middle ofthe sprite to select it.

    resize the ellipse.

  • 106

    JJIIJI

    BackClose

    4. Ball Animation (Key Frames)

    Click on frame 40 in channel 1(the end of the sprite), hold downOption and shift and drag theellipse to the right end of thestage.

    To curve the path, we are going toinsert keyframes within the sprite.

    Click on frame 10 of the sprite andchoose Insert > Keyframe(Shortcut =Command+Option+K)

    Create keyframes at frame 20and 30.

    at each keyframe, a circleappears on the path shown onthe stage.

    Click on the keyframe 10 circleand drag it up.

    Change other Keyframes. Rewind and play the movie.

  • 107

    JJIIJI

    BackClose

    Further Animation: 1.1 Shrinking the ball

    Run Example Shrinking the ball (Shockwave)Run Shrinking the ball (Lecture Only) (Optional) Click on keyframe 40 in

    the score and drag it to frame 60,notice how all the keyframes spread outproportionally.

    (Optional) Click on the keyframes in thescore and adjust the path if you feel likeit.

    While moving the keyframes, resize theballs so they slowly get smaller. Noticewhile you resize the balls, the pathchanges and you will need to edit thepath again.

    Rewind and play the movie. Save your movie as example2.dir.

  • 108

    JJIIJI

    BackClose

    1.2. Animating sprite colour

    Run Example: Animating sprite colour (Shockwave)Run Example: Animating sprite colour (Lecture Only) Working still with example1.dir. Open Property Inspector for Sprite

    Right Mouse (or Ctrl) on Sprite(Score or Stage)

    Select Properties... Click on the keyframes in the score,

    and change the Foreground colour chip,Forecolor, to different colours.

    Changing the foreground colour is likeputting a coloured film over your object.The resulting colour is a mixture of theobjects original colour and the film. Forthis reason, light colours work betterthan dark colours for this effect..

    Rewind and play the movie. Save as example3.dir

  • 109

    JJIIJI

    BackClose

    1.3. Animating sprite transparency Making the BallDisappear

    Run Example: Making the Ball Disappear (Shockwave)Run Example: Making the Ball Disappear (Lecture Only) Open example1.dir Open Property Inspector for Sprite Click on the keyframes in the score, and Change the Blend Transparency to 100, 75, 50, 25, 0 for the

    consecutive keyframes. Rewind and play the movie. Save as example4.dir

  • 110

    JJIIJI

    BackClose

    1.4. Animating sprite shape Deforming The Ball

    Run Example: Deforming The Ball (Shockwave)Run Example: Deforming The Ball (Lecture Only) Open example1.dir Open Property Inspector for Sprite Click on the keyframes in the score, and Change the Skew Angle to 0, 20, 40, 60 and 80 for the

    consecutive keyframes. Rewind and play the movie Save as example5.dir

  • 111

    JJIIJI

    BackClose

    Director Example 2: Importing mediaTo import multimedia data thereare two basic ways:

    Choose File > Import ...Useful for importing batchesof data (e.g. Several imagesequences.

    Drag and drop source mediainto a cast member locationQuite Intuitive

  • 112

    JJIIJI

    BackClose

    Examples: Simple Image import and Manipulation

    Drag an image into a spare cast member. Drag this cast member to the Score Set suitable Properties for Sprite

    Manipulate as for a vector item above. Examples:

    ex dave roll.dir sets up some keyframes and alters therotation of the image (Shockwave)

    ex dave roll.dir sets up some keyframes and alters therotation of the image (Lecture Only)

    ex dave sq.dir alters the skew angle (Shockwave) ex dave sq.dir alters the skew angle (Lecture Only)

  • 113

    JJIIJI

    BackClose

    Example: Falling Over Movie, ex dave movie.dir

    Example: Falling Over Movie, ex dave movie.dir (Shockwave)Run Example: Falling Over Movie, ex dave movie.dir (Lecture

    Only) Several Gif images depicting sequence

    exist on disk. Choose File > Import Select items you wish to import by

    double-clicking or pressing the Addbutton

    Click on the Import Button Several new cast members should be

    added Set looping on and play

  • 114

    JJIIJI

    BackClose

    Example: Pinching Movie Movie, ex dave pinch.dir

    Example: Pinching Movie Movie, ex dave pinch.dir (Shockwave)Example: Pinching Movie Movie, ex dave pinch.dir (Lecture Only)

    Photoshop has been used to set a pincheffect of varying degree for an image.

    Import images as before To reverse the image set to obtain a smooth

    back and forth animation:

    Select the sprite sequence in the score Copy Sequence Press Command+C

    (Copy), Click on the frame just after the sprite

    sequence Paste Sequence press

    Command+V (Paste). Click on this second sprite sequence

    and choose Modify > ReverseSequence.

    Select the 2 sprites by pressing Shiftand clicking on both. Choose Modify >Join Sprites.

  • 115

    JJIIJI

    BackClose

    Simple Lingo ScriptingDirector Example 3: Very Simple Action

    Here we illustrate the basic mechanism of scripting in Directorby developing and extending a very basic example:

    Making a button beep and attaching a message to a button

    Making the a button beep (Shockwave)Making the a button beep (Lecture Only)

  • 116

    JJIIJI

    BackClose

    Making the Button Beep Movie

    Open a new movie. Turn the looping on in the

    control panel.

    Open the tool palette. Click the push button icon. Draw a button on the stage,

    and type in a label:button here

  • 117

    JJIIJI

    BackClose

    Our First Lingo

    Now lets write a simple script for the button:

    Press Ctrl+click the button in the castwindow and choose Cast MemberScript.

    Director writes the first and last line forus, add a beep command so the scriptlook like this:

    on mouseUpbeep

    end

    Close the window. Rewind and play the movie. Click the button a few times.

  • 118

    JJIIJI

    BackClose

    To pop up a message box on button press (and still beep)

    Reopen the cast memberscript.

    Change the text so it nowreads.

    on mouseUpbeepalert "Button Pressed"

    end

    Close the window. Play the movie and click the

    button.

  • 119

    JJIIJI

    BackClose

    Director Example 4: Controlling Navigation with Lingo

    A slightly more complex Lingo Example

    This examples illustrates how we may use Lingo Scripts as:

    Cast Member Scripts Sprite Scripts Behaviour Scripts

  • 120

    JJIIJI

    BackClose

    Director Example 4: Ready Made Example

    To save time, we begin we a preassembledDirector movie:

    Run Lingo Navigation Example (Shockwave)Run Lingo Navigation Example(Lecture Only) Open lingo ex.3.2.dir Play the movie

    press some of the buttons The Numbered buttons record

    moves throughScenes/Frames

    The Next/Back buttons replaywhat has been recorded.

  • 121

    JJIIJI

    BackClose

    The Loop the Frame script

    We are first going to create a loop the frame script: Cast Member 11 controls the Frame

    Looping Note we have created a special framemarking channel in the Score.

    To create the associated script either Double click on the script icon in the

    Score Ctrl-click on the Cast member and

    select Member Script The scripting window appears. You can

    edit the script text, it now reads:

    on exitFramego the frame

    end

    This frame script tells Director to keepplaying the same frame.

    The Loop lasts to frame 24

    Pressing down Alt anddragging the frame script inthe Score can change thislength.

  • 122

    JJIIJI

    BackClose

    Scene Markers (1)

    Now we will create some markers

    To Create a Marker You Click in the marking channel forthe Frame and label some the marker with some typed text

    In this example: Markers are at frame 1,10 and 20, naming themscene1, scene2 andscene3 respectively.

    Note: You can deletea marker by clicking thetriangle and dragging itbelow the marker channel.

    A cast member (9) scriptfor the next button has alsobeen created:

    on mouseUpgo to next

    end

    The go to nextcommand tells Director togo to the next consecutivemarker in the score.

  • 123

    JJIIJI

    BackClose

    Scene Markers (2)

    A cast member (10) script for the back button has also beencreated:

    on mouseUpgo to previous

    end

    The go to previous command tells Director to go to theprevious marker in the score.

    Once again, Play the movie, click on these buttons to seehow they work.

  • 124

    JJIIJI

    BackClose

    Sprite Scripts

    Now We will create some sprite scripts:

    Sometimes a button will behave one way in one part of the movie and behave another way in a different part of the movie. A typical example use of sprite scripts.

  • 125

    JJIIJI

    BackClose

    The Next Button Sprite Scripts (1)

    Desired Action of Next Button: Jump to next scene

  • 126

    JJIIJI

    BackClose

    The Next Button Sprite Scripts (2)

    Here we have split actions to map to ourScene Markers. To achieve this: Click on frame 10 of channel 6 (the

    next button) this sprite and chooseModify > Split Sprite.

    Do the same at frame 20. To attach a script to each split action:

    Select the each sprite sequence(here in channel 6).

    Ctrl-click on sequence and selectScript... from the pull-down inthe score to give a script window.

    We add a suitable jump to nextscene

    In example shown we have go to"scene2" :This command tells Director to sendthe movie to marker "scene2".

    Could do other sequences similar But alternatives exist.

  • 127

    JJIIJI

    BackClose

    Behaviour Scripts

    Example Here: Another way to write the sprite script on lastslide - using the Behaviour Inspector.

    Behaviour Scripts can do A LOTMORE.

  • 128

    JJIIJI

    BackClose

    A Behaviour Script for Next Button (Scene 2) (1)

    We now work with the second spritesequence (channel 6 in the score).

    We will create (or have created) anassociated behaviour script: Ctrl-click on the second sequence Open the Behaviour Inspector

    window Click on the Script Window icon next

    to the Behaviour Inspector Tab. To Create/name a new Behaviour:

    Click the + icon at the top left of thewindow and select new behaviourfrom the pull-down.

    Give the behaviour a name, here itis called next2.

  • 129

    JJIIJI

    BackClose

    A Behaviour Script for Next Button (Scene 2) (2)

    To add events/actions to the script youcan:

    Under Events click the + iconIn this example we have added amouseUp from the menu.

    Under Actions click the + iconIn this example we have chosenNavigation > Go to marker then findscene3 on the list

    You can add/edit Lingo textmanually in the Script Editorwindow for the particular behaviour

  • 130

    JJIIJI

    BackClose

    Summary: Sprite Script Order

    We now 2 scripts attached to a single object (achieving muchthe same task): a Cast Member script a Sprite script. Sprite scripts take priority over cast member scripts So Here cast member script will be ignored.

  • 131

    JJIIJI

    BackClose

    Some more Lingo to add to our example

    Another part of our Application:The jump buttons 1-3 (Buttons 4-6 currently inactive).

    We will be using Lingo play/ play do to record actions

    We have created a Vector Graphic Image (Cast Member 2)for the main Recorder Interface

  • 132

    JJIIJI

    BackClose

    A problem in Director?

    In Director: a script can only be associated with a completeObject

    For the way we have created the Recorder Interface we require(and this is clearly a common requirement in many other cases): Only part an image to be linked instead of the whole object. One part for each of the jump buttons 1-3.There is a solution:

    Use invisible buttons. These are shape cast members with an invisible border.

  • 133

    JJIIJI

    BackClose

    Creating our Invisible Buttons

    We have added our invisible as CastMember 14. To create this component: Open the Tool palette window. Click on the no line button. Click on the rectangle button and

    draw a rectangle on the stagearound the 1 button.

    We have added this sprite to 8 and wehave attached a sprite script: Ctrl-click on frame 1 of channel 8

    and select script. Attach a sprite script to this shape

    with the command play scene1. Extend the sprite sequence so it

    covers frame 1 to 24. Repeat the steps placing the sprite over

    the 2 and 3 button

  • 134

    JJIIJI

    BackClose

    Final Part: the Back Button (1)

    Director provides the ability to record actions for future useThe Lingo Play commandThe play command is similar to the go to command but

    allows: Director records every time a play is initiated, Keeping track of the users path through the movie. You can move back on along this path by using the playdone command.

  • 135

    JJIIJI

    BackClose

    Final Part: the Back Button (1)

    So in this Example Select the sprite sequence in channel 5 and Cast member

    10. Attach a Sprite script reading

    on mouseUpplay done

    end

    Rewind, play the movie, click all the 1, 2, 3 buttons in variousorders, click the back button also and observe the effect ofBack button

    Complete example: lingo ex3.2.dir (Web Based) Complete example: lingo ex3.2.dir (Local Version)

  • 136

    JJIIJI

    BackClose

    Multimedia Authoring:Tagging (SMIL) Last lecture Lingo scripting This lecture Tagging SMIL an extension of XML for synchronised media integration.

  • 137

    JJIIJI

    BackClose

    What it is SMIL?

    SMIL is to synchronized multimedia what HTML is to hyperlinked text. Pronounced smile

  • 138

    JJIIJI

    BackClose

    SMIL :

    A simple, Vendor-neutral Markup language

    Designed to: For all skill levels of WWW authors Schedule audio, video, text, and graphics files across a

    timeline No need to master development tools or complex

    programming languages. HTML-like need a text editor only Links to media medie not embedded in SMIL file

  • 139

    JJIIJI

    BackClose

    Drawbacks of SMIL?

    Good Points:

    A powerful tool for creating synchronized multimediapresentations on the web

    Deals with low bandwidth connections.Bad Points:

    Meant to work with linear presentations Several types of media can be synchronized to one timeline. Does not work well with non-linear presentations Ability to skip around in the timeline is buggy.For slideshow style mixed media presentations it the best the

    web has to offer.

  • 140

    JJIIJI

    BackClose

    SMIL support

    The W3C recommended SMIL in June 1998 Quicktime 4.0 supports SMIL (1999) Not universally supported across the Web. NoWeb browser directly support SMIL RealPlayer G2 supports SMIL Many other SMIL-compliant players, authoring tools, and

    servers available.

  • 141

    JJIIJI

    BackClose

    Running SMIL Applications

    For this course there are basically three ways to run SMILapplications (two use the a Java Applet) so there are basicallytwo SMIL supported mediums:

    Quicktime supported since Quicktime Version 4.0.RealPlayer G2 integrated SMIL supportWeb Browser use the SOJA SMIL applet viewer with html

    wrapperApplet Viewer use the SOJA SMIL applet viewer with html

    wrapper

  • 142

    JJIIJI

    BackClose

    Quicktime media support is richer (see later sections onQuicktime).

    You will need to use both as RealPlayer and SOJA supportdifferent media

    Media Tag RealPlayer GRiNS SojaGIF img OK OK OK

    JPEG img OK OK OKWav audio OK OK -

    .au Audio audio OK OK OK.auz Audio Zipped audio - - OK

    MP3 audio OK - -Plain text text OK OK OKReal text textstream OK - -

    Real movie video OK - -AVI video OK OK -

    MPEG video OK OK -MOV video OK - -

  • 143

    JJIIJI

    BackClose

    Using Quicktime Load the SMIL file into a Quicktime plug-in (configure Browser

    helper app or mime type) or the Quicktime movie player.

  • 144

    JJIIJI

    BackClose

    Using RealPlayer G2The RealPlayer G2 is installed on the applications HD in the

    RealPlayer folder.Real player supports lots of file format and can use plugins.

    The main supported formats are:

    Real formats: RealText, RealAudio, etc... Images: GIF, JPEG Audio: AU, WAV, MIDI, etc...

  • 145

    JJIIJI

    BackClose

    To run SMIL filesReal Player uses streaming to render presentations.

    works better when calling a SMIL file given by a Real Server, rather than from an HTTP one.Locally RUN SMIL files

    drag a SMIL file onto the RealPlayer G2 Application Open a local SMIL file inside RealPlayer G2 Application

  • 146

    JJIIJI

    BackClose

    Using the SOJA applet SOJA stands for SMIL Output in JavaApplet.

    SOJA is an applet that render SMIL in a web page or in aseparate window. It supports the following formats:

    Images: GIF, JPEG Audio: AU and AUZ (AU zipped) SUN Audio files Text: plain text

  • 147

    JJIIJI

    BackClose

    Running SOJATo run SMIL through an applet you have to

    call the applet from an HTML file:

    the SOJA (soja.jar) archive is located in the SMIL folder onthe Macintoshes.

    You may need to alter the CODEBASE attribute for your ownapplications

    The PARAM NAME="source" VALUE="MY SMILFILE.smil" ishow the file is called.

  • 148

    JJIIJI

    BackClose

    RUNNING APPLETSThis should be easy to do

    Run the html file through a java enabled browser Use Apple Applet Runner

    uses MAC OS Runtime Java (Java 1.2) less fat for SMIL applications (we do really need Web

    connection for our examples) Efficient JAVA and MAC OS run. Located in Apple Extras:Mac OS Runtime For Java folder TO RUN: Drag files on to application, OR TO RUN: Open file from within application

  • 149

    JJIIJI

    BackClose

    Let us begin to SMIL SMIL Authoring

    SMIL Syntax Overview

    SMIL files are usually named with .smi or .smil extensions XML based syntax

  • 150

    JJIIJI

    BackClose

    Basic Layout The basic Layout of a SMIL Documents is asfollows:

  • 151

    JJIIJI

    BackClose

    A source begins with and ends with .Note that SMIL is case sensitive

    ....

  • 152

    JJIIJI

    BackClose

    SMIL documents have two parts: head and body. Each ofthem must have as a parent.

    ....

    ....

  • 153

    JJIIJI

    BackClose

    Some tags, such as meta can have a slash at their end:

    ....

    ....

    This is because SMIL is XML-based.Some tags are written:

    ...

  • 154

    JJIIJI

    BackClose

    SMIL Layout Everything concerning layout (including windowsettings) is stored between the and the tags in the header as shown in the above subsection.

    A variety of Layout Tags define the presentation layout:

    ......

  • 155

    JJIIJI

    BackClose

    Window settingsYou can set width and height for the window in which your

    presentation will be rendered with .The following source will create a window with a 300x200

    pixels dimension and also sets the background to be white.

  • 156

    JJIIJI

    BackClose

    Positioning Media It is really easy to position media with SMIL.You can position media in 2 ways:

    Absolute Positioning Media are located with offsets fromthe origin the upper left corner of the window.

    Relative Positioning Media are located relative to the windowsdimensions.

    We define position with a tag

  • 157

    JJIIJI

    BackClose

    The Region tag To insert a media within our presentation we use the

    tag.

    must specify the region (the place) where it will be displayed. must also assign an id that identifies the region.

  • 158

    JJIIJI

    BackClose

    Lets say we want to insert the Cardiff icon (533x250 pixels) at 30 pixels from the left border and at 25 pixels from the top border.The header becomes:

    ......

  • 159

    JJIIJI

    BackClose

    The img tagTo insert the Cardiff icon in the region called cardiff icon, we

    use the tag as shown in the source below.Note that the region attribute is a pointer to the

    tag.

  • 160

    JJIIJI

    BackClose

    This produces the following output:

    Figure 18: Simple Cardiff Image Placement in SMIL

  • 161

    JJIIJI

    BackClose

    Relative Position Exampleif you wish to display the Cardiff icon at 10% from the left border and at 5% from the top border, modify the previous source and

    replace the left and top attributes.

  • 162

    JJIIJI

    BackClose

    Overlaying RegionsWe have just seen how to position a media along x and y axes

    (left and top).What if two regions overlap ?

    Which one should be displayed on top ?

  • 163

    JJIIJI

    BackClose

    The following code points out the problem:

  • 164

    JJIIJI

    BackClose

    To ensure that one region is over the other, add z-indexattribute to .

    When two region overlay:

    the one with the greater z-index is on top. If both regions have the same z-index, the first rendered one

    is below the other.

  • 165

    JJIIJI

    BackClose

    In the following code, we add z-index to region 1 andregion 2:

  • 166

    JJIIJI

    BackClose

    fitting media to regions

    You can set the fit attribute of the tag to forcemedia to be resized etc.

    The following values are valid for fit: fill make media grow and fill the area. meet make media grow (without any distortion) until it

    meets the region frontier. slice media grows (without distortion) and fill entirely its

    region. scroll if media is bigger than its region area gets scrolled. hidden dont show mediaObviously you set the value like this:

  • 167

    JJIIJI

    BackClose

    Synchronisation There are two basic ways in which we maywant to play media:

    play several media one after the other, how to play several media in parallel.In order to do this we need to add synchronisation:

    we will need to add time parameter to media elements,

  • 168

    JJIIJI

    BackClose

    Adding a duration of time to media durTo add a duration of time to a media element simply specify a

    dur attribute parameter in an appropriate media tag:

    .....

    .....

  • 169

    JJIIJI

    BackClose

    Delaying Media the begin tagTo specify a delay i.e when to begin set the begin attribute

    parameter in an appropriate media tag:If you add begin=2s in the cardiff image tag, you will see

    that the Cardiff icon will appear 2 seconds after the documentbegan and will remain during 6 other seconds. Have a look atthe source:

    .....

    .....

  • 170

    JJIIJI

    BackClose

    Sequencing Media the seq tagScheduling media:The tag is used to define a sequence of media.

    The media are executed one after each other:.....

    .....

    So the setting 1s makes the img2.gif icon appear 1 secondafter img1.gif.

  • 171

    JJIIJI

    BackClose

    Parallel Media the par tagWe use the to play media at the same time:

    This will display an image and play some music along with it.

  • 172

    JJIIJI

    BackClose

    Synchronisation Example 1: Planets SoundtrackThe following SMIL code plays on long soundtrack along with

    as series of images.Essentially:

    The audio file and image sequences are played in parallel The Images are run in sequence with no break (begin =0s)

  • 173

    JJIIJI

    BackClose

    The files are stored on the MACINTOSHES in the MultimediaLab (in the SMIL folder) as follows: planets.html call SMIL source (below) with the SOJA

    applet. This demo uses zipped (SUN) audio files (.auz)which are not supported by RealPlayer.

    planets.smil sMIL source (listed below),

  • 174

    JJIIJI

    BackClose

    SMIL HEAD DATA

    ...........

  • 175

    JJIIJI

    BackClose

    SMIL BODY DATA

    ........

    ..........

  • 176

    JJIIJI

    BackClose

  • 177

    JJIIJI

    BackClose

    Synchronisation Example 2: Slides N SoundDr John Rosbottom of Plymouth University has come up with

    a novel way of giving lectures.This has one long sequence of parallel pairs of images and audio filesThe files are stored on the MACINTOSHES in the Multimedia

    Lab (in the SMIL folder) as follows: slides n sound.smil sMIL source (listed below), play

    with RealPlayer G2. NOTE: This demo uses real audio fileswhich are not supported by SOJA:

  • 178

    JJIIJI

    BackClose

    ............

  • 179

    JJIIJI

    BackClose

    copyright="Everything is so copyright protected (c)1999"/>

  • 180

    JJIIJI

    BackClose

    SMIL Events Smiles supports event based synchronisation:begin events

    When a media begins, it sends a begin event. If another media waits for this event, it catches it.

  • 181

    JJIIJI

    BackClose

    To make a media wait to an event,

    one of its synchronisation attributes (begin or end) should be written as follows:

  • 182

    JJIIJI

    BackClose

    For example:

    will make the next.gif image begin 2s after cardiff.gifbegins.

  • 183

    JJIIJI

    BackClose

    The switch TagThe syntax for the switch tag is:

    The rule is:

    The first of the tag children whose test attributesare all evaluated to TRUE is executed.

    A tag with no test attributes is evaluated to TRUE. See SMIL reference for list of valid test attributes

  • 184

    JJIIJI

    BackClose

    For example you may wish to provide presentations in englishor welsh:

    < audio src ="english.au" />

    somewhere in code you will set (or it will be set) thesystem-language

  • 185

    JJIIJI

    BackClose

    Multimedia Systems Technology

    Multimedia systems have to deal with the

    generation, manipulation, storage, presentation, and communication of information

    Lets consider some broad implications of the above

  • 186

    JJIIJI

    BackClose

    Discrete v Continuous Media

    RECALL: Our Definition of Multimedia

    All data must be in the form of digital information. The data may be in a variety of formats:

    text, graphics, images, audio, video.

  • 187

    JJIIJI

    BackClose

    Synchronisation

    A majority of this data is large and the different media mayneed synchronisation:

    The data will usually have temporal relationships as anintegral property.

  • 188

    JJIIJI

    BackClose

    Static and Continuous Media

    Static or Discrete Media Some media is time independent:Normal data, text, single images, graphics are examples.

    Continuous media Time dependent Media:Video, animation and audio are examples.

  • 189

    JJIIJI

    BackClose

    Analog and Digital Signals

    Some basic definitions Studied HERE Overviewing of technology Studied HERE In depth study later.

  • 190

    JJIIJI

    BackClose

    Analog and Digital Signal Converters

    The world we sense is full of analog signals:

    Electrical sensors convert the medium they sense intoelectrical signals E.g. transducers, thermocouples, microphones. (usually)continuous signals

    Analog signals must be converted ordigitised Digital: discrete digital signals that computer can readily deal

    with. Special hardware devices : Analog-to-Digital converters Playback a converse operation: Digital-to-Analog .

  • 191

    JJIIJI

    BackClose

    Multimedia Data: Input and format

    How to capture and store each Media format?

    Note that Text, Graphics and some images are generateddirectly by computer and do not require digitising:

    they are generated directly in some binary format.

    Handwritten text would have to digitised either by electronicpen sensing of scanning of paper based form.

  • 192

    JJIIJI

    BackClose

    Text and Static Data

    Source: keyboard, floppies, disks and tapes. Stored and input character by character:

    Storage of text is 1 byte per character (text or formatcharacter).

    For other forms of data e.g. Spreadsheet files someformats may store format as text (with formatting) othersmay use binary encoding.

    Format: Raw text or formatted text e.g HTML, Rich TextFormat (RTF), Word or a program language source (C, Java,etc.

    Not temporal BUT may have natural implied sequencee.g. HTML format sequence, Sequence of C programstatements.

    Size Not significant w.r.t. other Multimedia.

  • 193

    JJIIJI

    BackClose

    Graphics

    Format: constructed by the composition of primitive objectssuch as lines, polygons, circles, curves and arcs.

    Input: Graphics are usually generated by a graphics editorprogram (e.g. Freehand) or automatically by a program (e.g.Postscript).

    Graphics are usually editable or revisable (unlike Images). Graphics input devices: keyboard (for text and cursor

    control), mouse, trackball or graphics tablet. graphics standards : OpenGL, PHIGS, GKS Graphics files usually store the primitive assembly Do not take up a very high storage overhead.

  • 194

    JJIIJI

    BackClose

    Images

    Still pictures which (uncompressed) are represented as abitmap (a grid of pixels).

    Input: Generated by programs similar to graphics oranimation programs.

    Input: scanned for photographs or pictures using a digitalscanner or from a digital camera.

    Analog sources will require digitising. Stored at 1 bit per pixel (Black and White), 8 Bits per pixel

    (Grey Scale, Colour Map) or 24 Bits per pixel (True Colour) Size: a 512x512 Grey scale image takes up 1/4 Mb, a 512x512

    24 bit image takes 3/4 Mb with no compression. This overhead soon increases with image size Compression is commonly applied.

  • 195

    JJIIJI

    BackClose

    Audio

    Audio signals are continuous analog signals. Input: microphones and then digitised and stored usually compressed. CD Quality Audio requires 16-bit sampling at 44.1 KHz 1 Minute of Mono CD quality audio requires 5 Mb.

  • 196

    JJIIJI

    BackClose

    Video

    Input: Analog Video is usually captured by a video cameraand then digitised.

    There are a variety of video (analog and digital) formats Raw video can be regarded as being a series of single images.

    There are typically 25, 30 or 50 frames per second. a 512x512 size monochrome video images take

    25*0.25 = 6.25Mb

    for a minute to store uncompressed. Digital video clearly needs to be compressed.

  • 197

    JJIIJI

    BackClose

    Output Devices

    The output devices for a basic multimedia system include

    A High Resolution Colour Monitor CD Quality Audio Output Colour Printer Video Output to save Multimedia presentations to (Analog)

    Video Tape, CD-ROM DVD. Audio Recorder (DAT, DVD, CD-ROM, (Analog) Cassette) Storage Medium (Hard Disk, Removable Drives, CD-ROM)

  • 198

    JJIIJI

    BackClose

    Storage Media

    The major problems that affect storage media are: Large volume of date Real time delivery Data format Storage Medium Retrieval mechanisms

  • 199

    JJIIJI

    BackClose

    High performance I/O

    There are four factors that influence I/O performance:

    Data

    high volume, continuous, contiguous vs distributed storage. Direct relationship between size of data and how long it

    takes to handle. Compression

  • 200

    JJIIJI

    BackClose

    Data Storage

    Depends of the storage hardware and The nature of the data. The following storage parameters affect how data is stored: Storage Capacity Read and Write Operations of hardware Unit of transfer of Read and Write Physical organisation of storage units Read/Write heads, Cylinders per disk,

    Tracks per cylinder, Sectors per Track Read time Seek time

  • 201

    JJIIJI

    BackClose

    Data Transfer

    Depend how data generated and written to disk, and in what sequence it needs to retrieved. Writing/Generation of Multimedia data is usually

    sequential e.g. streaming digital audio/video direct to disk. Individual data (e.g. audio/video file) usually streamed. RAID architecture can be employed to accomplish high

    I/O rates (parallel disk access)

  • 202

    JJIIJI

    BackClose

    Operating System Support

    Scheduling of processes when I/O is initiated. Time critical operations can adopt special procedures. Direct disk transfer operations free up CPU/Operating

    system space.

  • 203

    JJIIJI

    BackClose

    Basic Storage

    Basic storage units have problems dealing with large multimediadata

    Single Hard Drives SCSI/IDE Drives. AV (Audio-Visual) drives

    avoid thermal recalibration between read/writes, suitable for desktop multimedia.

    New drives are fast enough for direct to disk audio and videocapture.

    not adequate for commercial/professional Multimedia.

  • 204

    JJIIJI

    BackClose

    Removable Media Floppies not adequate Jaz/Zip Drives, CD-ROM, DVD-ROM.

  • 205

    JJIIJI

    BackClose

    RAID Redundant Array of Inexpensive DisksNeeded:

    To fulfill the needs of current multimedia and other datahungry application programs,

    Fault tolerance built into the storage device. Parallel processing exploits arrangement of hard disks.

    Raid technology offers some significant advantages as astorage medium of multimedia data: Affordable alternative to mass storage High throughput and reliability

  • 206

    JJIIJI

    BackClose

    The key components of a RAID System are: Set of disk drives, disk arrays, viewed by user as one or more

    logical drives. Data may be distributed across drives Redundancy added in order to allow for disk failure Disk arrays:

    store large amounts of data, have high I/O rates and take less power per megabyte (cf. high end disks) but they have very poor reliability

    As more devices are added, reliability deteriorates N devices generally have 1N the reliability of a single

    device

  • 207

    JJIIJI

    BackClose

    Overcoming Reliability Problems

    Redundancy Files stored on arrays may be striped acrossmultiple disks.

    Four ways do to this.

  • 208

    JJIIJI

    BackClose

    Four ways of Overcoming Reliability Problems

    Mirroring or shadowing of the contents of disk, which canbe a capacity kill approach to the problem. write on two disks - a 100% capacity overhead. Reads to disks may however be optimised.

    Horizontal Hamming Codes: A special means toreconstruct information using an error correction encodingtechnique.

    Parity and Reed-Soloman Codes: Also an error correctioncoding mechanism. Parity may be computed in a number ofways.

    Failure Prediction: There is no capacity overhead in thistechnique.

  • 209

    JJIIJI

    BackClose

    RAID Architecture

    Each disk within the array needs to have its own I/O controller,but interaction with a host computer may be mediated throughan array controller

    DiskController

    DiskController

    DiskController

    DiskController

    ArrayController

    Host Processor

    HostAdaptor

    Manages the controllogic and parity

  • 210

    JJIIJI

    BackClose

    Orthogonal RAID

    Possible to combine thedisks together to produce acollection of devices, where

    Each vertical array is nowthe unit of dataredundancy.

    Such an arrangementis called an orthogonalRAID

    Other arrangements ofdisks are also possible.

  • 211

    JJIIJI

    BackClose

    The Eight levels of RAIDThere are 8 levels of RAID technology: each level providing a greater amount of resilience then the

    lower levels:

    Level 0: Disk Striping

    Level 1: Disk Mirroring

    Level 2: Bit Interleaving and HEC Parity

    Level 3: Bit Interleaving with XOR Parity

    Level 4: Block Interleaving with XOR Parity

    Level 5: Block Interleaving with Parity Distribution

    Level 6: Fault Tolerant System

    Level 7: Heterogeneous System

  • 212

    JJIIJI

    BackClose

    First Six RAID levels

    SimultaneousWrites onevery drive

    Simultaneous readson every drive

    RAID 0 Simultaneous readson every drive

    Data

    drive pairs

    Eachwritespansalldrives

    Eachreadspansall drives

    RAID 1RAID 2

    ParallelAccess

    Parity

    Read andWriteSpan

    Parity

    EveryWrite must updatea dedicated parity drive

    Simultaneous reads

    Each drive now also handles parity

    Simultaneous reads

    RAID 3 RAID 4 RAID 5

    Duplication on

    Alldrives

    on every drive

    on every drive

    indicated by the filled circle

  • 213

    JJIIJI

    BackClose

    Optical Storage

    The most popular storage medium in the multimedia context compact size, High density recording, Easy handling and Low cost per MB. CD and recently DVD (ROM) the most common Laser disc older format.

  • 214

    JJIIJI

    BackClose

    CD StorageThere a now various formats of CD:

    CD-DA (Compact Disc-Digital Audio) CD-I (Compact Disc-Interactive) CD-ROM/XA (eXtended Architecture) Photo CDThe capacity of a CD-ROM is

    620-700 Mbs depending on CD material, 650/700 Mb (74/80 Mins) is a typical write once CD-ROM

    size. Drives that read and write CD-ROMS (CD-RW) also similar.

  • 215

    JJIIJI

    BackClose

    CD Standards

    There are several CD standard for different types of media:

    Red Book Digital Audio: Most Music CDs.Yellow Book CD-ROM:

    Model 1 computer data,Model 2 compressed audio/video data.

    Green Book CD-IOrange Book Write once CDsBlue Book Laser disc

  • 216

    JJIIJI

    BackClose

    DVD

    The current best generation of optical disc storage technologyfor Multimedia:

    DVD Digital Versatile Disc (formal),Digital Video Disc (mistaken).

    Larger storage and faster than CD over 2 Hours of Video / Single sided DVD-ROM 2.4 Gb

    Formats: DVD-Video and DVD-ROM (DVD-R and DVD-RAM)

  • 217

    JJIIJI

    BackClose

    What are the features of DVD-Video?

    The main features of DVD include:

    Over 2 hours of high-quality digital video (over 8 on adouble-sided, dual-layer disc).

    Support for widescreen movies on standard or widescreenTVs (4:3 and 16:9 aspect ratios).

    Up to 8 tracks of digital audio (for multiple languages), eachwith as many as 8 channels.

    Up to 32 subtitle/karaoke tracks. Automatic seamless branching of video (for multiple story

    lines or ratings on one disc). Up to 9 camera angles (different viewpoints can be selected

    during playback).

  • 218

    JJIIJI

    BackClose

    Main features of DVD (Cont)

    Menus and simple interactive features (for games, quizzes,etc.).

    Multilingual identifying text for title name, album name, songname, cast, crew, etc.

    Instant rewind and fast forward, including search to title,chapter, track, and timecode.

    Durability (no wear from playing, only from physical damage). Not susceptible to magnetic fields. Resistant to heat. Compact size (easy to handle and store, players can be

    portable, replication is cheaper).

  • 219

    JJIIJI

    BackClose

    What are the disadvantages of DVD?

    Despite several positive attributes mentioned above there aresome potential disadvantages of DVD:

    It has built-in copy protection and regional lockout. It uses digital compression. Poorly compressed audio or

    video may be blocky, fuzzy, harsh, or vague. The audio downmix process for stereo/Dolby Surround can

    reduce dynamic range. It doesnt fully support HDTV. Some DVD players and drives may not be able to read CD-Rs. Dispute of some DVD-R formats

  • 220

    JJIIJI

    BackClose

    Comparison of DVD and CD-ROM

    The increase in capacity inDVD-ROM (from CD-ROM)is due to:

    smaller pit length(2.08x),

    tighter tracks (2.16x), slightly larger data area

    (1.02x), discs single or double

    sided

  • 221

    JJIIJI

    BackClose

    Comparison of DVD and CD-ROM (Cont.)

    another data layer added to eachside creating a potential for fourlayers of data per disc

    more efficient channel bitmodulation (1.06x),

    more efficient error correction(1.32x),

    less sector overhead ( 1.06x). capacity of a dual-layer disc is

    slightly less than double that of asingle-layer disc.

  • 222

    JJIIJI

    BackClose

    Multimedia Data Representation

    Issues to be covered:

    Digital Audio Graphics/Image Formats Digital Video (Next Lecture) Sampling/Digitisation Compression

  • 223

    JJIIJI

    BackClose

    Digital Audio

    Application of Digital Audio Selected Examples

    Music Production

    Hard Disk Recording Sound Synthesis Samplers Effects Processing

    Video Audio Important Element: Music and EffectsWeb Many uses on Web

    Spice up Web Pages Listen to Cds Listen to Web Radio

  • 224

    JJIIJI

    BackClose

    What is Sound?

    Source Generates Sound Air Pressure changes Electrical Loud Speaker Acoustic Direct Pressure Variations

    Destination Receives Sound Electrical Microphone produces electric signal Ears Responds to pressure hear sound (more later(MPEG Audio))

  • 225

    JJIIJI

    BackClose

    Digitising Sound

    Microphone produces analog signal Computer like discrete entitiesNeed to convert Analog-to-Digital Specialised Hardware

    Also known as Sampling

  • 226

    JJIIJI

    BackClose

    Digital Sampling

    Sampling basically involves: measuring the analog signal at regular discrete intervals recording the value at these points

  • 227

    JJIIJI

    BackClose

    Computer Manipulation of Sound

    Writing Digital Signal Processing routines range from beingtrivial to highly complex:

    Volume Cross-Fading Looping Echo/Reverb/Delay Filtering Signal Analysis

  • 228

    JJIIJI

    BackClose

    Sound Demos

    Volume Cross-Fading Looping Echo/Reverb/Delay Filtering

  • 229

    JJIIJI

    BackClose

    Sample Rates and Bit Size

    How do we store each sample value (Quantisation)?8 Bit Value (0-255)16 Bit Value (Integer) (0-65535)

    How many Samples to take?11.025 KHz Speech (Telephone 8 KHz)22.05 KHz Low Grade Audio

    (WWW Audio, AM Radio)44.1 KHz CD Quality

  • 230

    JJIIJI

    BackClose

    Nyquists Sampling Theorem

    Sampling Frequency is Very Important in order to accuratelyreproduce a digital version of an Analog Waveform

    Nyquists Theorem:

    The Sampling frequency for a signal must be at least twicethe highest frequency component in the signal.

  • 231

    JJIIJI

    BackClose

    Figure 19: Sampling at Signal Frequency

  • 232

    JJIIJI

    BackClose

    Figure 20: Sampling at Twice Nyquist Frequency

  • 233

    JJIIJI

    BackClose

    Figure 21: Sampling at above Nyquist Frequency

  • 234

    JJIIJI

    BackClose

    Implications of Sample Rate and Bit Size

    Affects Quality of Audio

    Ears do not respond to sound in a linear fashion ((more later(MPEG Audio))

    Decibel (dB) a logarithmic measurement of sound 16-Bit has a signal-to-noise ratio of 98 dB virtually

    inaudible 8-bit has a signal-to-noise ratio of 50 dB Therefore, 8-bit is roughly 8 times as noisy

    6 dB increment is twice as loud

    Click Here to Hear Sound Examples

  • 235

    JJIIJI

    BackClose

    Implications of Sample Rate and Bit Size (cont)

    Affects Size of Data

    File Type 44.1 KHz 22.05 KHz 11.025 KHz16 Bit Stereo 10.1 Mb 5.05 Mb 2.52 Mb16 Bit Mono 5.05 Mb 2.52 Mb 1.26 Mb8 Bit Mono 2.52 Mb 1.26 Mb 630 Kb

    Figure 22: Memory Required for 1 Minute of Digital Audio

  • 236

    JJIIJI

    BackClose

    Practical Implications of Nyquist Sampling Theory

    Must (low pass) filter signal before sampling:

    Otherwise strange artifacts from high frequency signals appear.

  • 237

    JJIIJI

    BackClose

    Why are CD Sample Rates 44.1 KHz?

  • 238

    JJIIJI

    BackClose

    Why are CD Sample Rates 44.1 KHz?

    Upper range of human hearing is around20-22 KHz Apply Nyquist Theorem

  • 239

    JJIIJI

    BackClose

    Common Audio Formats

    Popular audio file formats include .au (Origin: Unix workstations), .aiff (MAC, SGI), .wav (PC, DEC workstations)

    Compression can be utilised in some of the above but is notMandatory

    A simple and widely used (by above) audio compressionmethod is Adaptive Delta Pulse Code Modulation (ADPCM). Based on past samples, it

    predicts the next sample andencodes the difference between the actual value and thepredicted value.

    More on this later (Audio Compression)

  • 240

    JJIIJI

    BackClose

    Common Audio Formats (Cont.)

    Many formats linked to audio applications Can use some compression

    Sounblaster .voc (Can use Silence Deletion (More onthis later (Audio Compression))

    Protools/Sound Designer .sd2 Realaudio .ra. Ogg Vorbis .ogg

    MPEG AUDIOMore Later (MPEG-3 and MPEG-4)

  • 241

    JJIIJI

    BackClose

    Delivering Audio across a network

    Trade off between desired fidelity and file size Bandwidth Considerations for Web and other media. Compress Files:

    Could affect live transmission on Web

  • 242

    JJIIJI

    BackClose

    Streaming Audio

    Buffered Data: Trick get data to destination before its needed Temporarily store in memory (Buffer) Server keeps feeding the buffer Client Application reads buffer

    Needs Reliable Connection, moderately fast too. Specialised client, Steaming Audio Protocol (PNM for real

    audio).

  • 243

    JJIIJI

    BackClose

    Synthetic Sounds reducing bandwidth?

    Synthesise sounds hardware or software Client produces sound only send parameters to control sound (MIDI next) Many synthesis techniques could be used, For example:

    FM (Frequency Modulation) Synthesis used in low-end Sound Blastercards, OPL-4 chip, Yamaha DX Synthesiser range popular in Early 1980s.

    Wavetable synthesis wavetable generated from sound waves of real instruments Additive synthesis make up signal from smaller simpler waveforms Subtractive synthesis modify a (complex) waveform but taking out elements Physical Modelling model how acoustic sound in generated in software

    Modern Synthesisers use a mixture of sample and synthesis.

  • 244

    JJIIJI

    BackClose

    MIDIWhat is MIDI?

    No Longer Exclusively the Domain of Musicians. Midi provides a very low bandwidth alternative on the Web:

    transmit musical and certain sound effects data

    also now used as a compression control language (modified) See MPEG-4 Section soon

  • 245

    JJIIJI

    BackClose

    MIDI on the Web

    Very Low Bandwidth (few 100K bytes)

    The responsibility of producing sound is moved to the client: Synthesiser Module Sample Soundcard Software Generated

    Most Web browsers can deal with MIDI.

  • 246

    JJIIJI

    BackClose

    Definition of MIDI:A protocol that enables computer, synthesizers, keyboards,

    and other musical device to communicate with each other.

  • 247

    JJIIJI

    BackClose

    Components of a MIDI System

    Synthesizer:

    It is a sound generator (various pitch, loudness, tone colour). A good (musicians) synthesizer often has a microprocessor,

    keyboard, control panels, memory, etc.

    Sequencer: It can be a stand-alone unit or a software program for a

    personal computer. (It used to be a storage server for MIDIdata. Nowadays it is more a software music editor on thecomputer.

    It has one or more MIDI INs and MIDI OUTs.

  • 248

    JJIIJI

    BackClose

    Basic MIDI Concepts

    Track: Track in sequencer is used to organize the recordings. Tracks can be turned on or off on recording or playing back.Channel: MIDI channels are used to separate information in a MIDI

    system. There are 16 MIDI channels in one cable. Channel numbers are coded into each MIDI message.Timbre: The quality of the sound, e.g., flute sound, cello sound, etc. Multitimbral capable of playing many different sounds at

    the same time (e.g., piano, brass, drums, etc.)

  • 249

    JJIIJI

    BackClose

    Basic MIDI Concepts (Cont.)

    Pitch: The Musical note that the instrument playsVoice: Voice is the portion of the synthesizer that produces sound. Synthesizers can have many (12, 20, 24, 36, etc.) voices. Each voice works independently and simultaneously to produce

    sounds of different timbre and pitch.Patch: The control settings that define a particular timbre.

  • 250

    JJIIJI

    BackClose

    Hardware Aspects of MIDI

    MIDI connectors: Three 5-pin ports found on the backof every MIDI unit MIDI IN: the connector via

    which the device receives all MIDIdata.

    MIDI OUT: the connectorthrough which the devicetransmits all the MIDI data itgenerates itself.

    MIDI THROUGH: theconnector by which the deviceechoes the data receives fromMIDI IN.

  • 251

    JJIIJI

    BackClose

    MIDI Messages

    MIDI messages are used by MIDI devices to communicatewith each other.

    MIDI messages are very low bandwidth:

    Note On Command Which Key is pressed Which MIDI Channel (what sound to play) 3 Hexadecimal Numbers

    Note Off Command Similar Other command (program change) configure sounds to be

    played.

  • 252

    JJIIJI

    BackClose

    Structure of MIDI messages:

    MIDI message includes a status byte and up to two databytes.

    Status byte The most significant bit of status byte is set to 1. The 4 low-order bits identify which channel it belongs to

    (four bits produce 16 possible channels). The 3 remaining bits identify the message.

    The most significant bit of data byte is set to 0.

  • 253

    JJIIJI

    BackClose

    Classification of MIDI messages:

    -- voice messages--- channel messages ---|

    | -- mode messages|

    MIDI messages ----|| -- common messages--- system messages ---|-- real-time messages

    -- exclusive messages

  • 254

    JJIIJI

    BackClose

    Midi Channel messages:

    messages that are transmitted on individual channels ratherthat globally to all devices in the MIDI network.

    Channel voice messages:

    Instruct the receiving instrument to assign particular soundsto its voice

    Turn notes on and off Alter the sound of the currently active note or notes

  • 255

    JJIIJI

    BackClose

    Midi Channel Control Messages

    Voice Message Status Byte Data Byte1 Data Byte2------------- ----------- ----------------- -----------------

    Note off 8x Key number Note Off velocityNote on 9x Key number Note on velocityPolyphonic Key Pressure Ax Key number Amount of pressureControl Change Bx Controller number Controller valueProgram Change Cx Program number NoneChannel Pressure Dx Pressure value NonePitch Bend Ex MSB LSB

    Notes: x in status byte hex value stands for a channelnumber.

  • 256

    JJIIJI

    BackClose

    Midi Command Example

    A Note On message is followed by two bytes, one to identifythe note, and on to specify the velocity.

    To play: Note number 80 (HEX 50) With maximum velocity (127 (Hex 7F) On channel 13 (Hex C),

    The MIDI device would send these three hexadecimal bytevalues:

    9C 50 7F

  • 257

    JJIIJI

    BackClose

    Midi Channel mode messages:

    Channel mode messages are a special case of the ControlChange message (Bx (Hex) or 1011nnnn (Binary)).

    The diffe