300 likes | 319 Views
G6DPMM - Lecture 2. Multimedia Authoring Systems. Implementation Strategy. Low level (ie 3GL) eg C++, Visual C++, Java etc RAD Systems eg Visual Basic, Delphi etc High level (authoring systems) eg Authorware, Flash, Toolbook, Director etc. Low Level Multimedia Programming. Advantages
E N D
G6DPMM - Lecture 2 Multimedia Authoring Systems
Implementation Strategy • Low level (ie 3GL) • eg C++, Visual C++, Java etc • RAD Systems • eg Visual Basic, Delphi etc • High level (authoring systems) • eg Authorware, Flash, Toolbook, Director etc
Low Level Multimedia Programming • Advantages • Fast • Flexible / Powerful • Disadvantages • Disparate multimedia devices • GUI programming
RAD Tools • Rapid Application Development • Hybrid systems • combine elements of conventional programming with high level authoring systems • Best (worst?) of both worlds! • Microsoft Visual Basic (VB) • Borland Delphi
Visual Basic • Evolved from MS Basic • Visual front end - “authoring system” • Partly Object Oriented • Encapsulation but no inheritance • Requires large runtime library • Non-portable (ie only Windows)
Visual Basic • Evolved from MS Basic • Visual front end - “authoring system” • Partly Object Oriented • Encapsulation but no inheritance • Requires large runtime library • Non-portable (ie only Windows)
Uses of Visual Basic • Rapid prototyping • Database front-ends • Amateur programming • Multimedia • NB may need to be extended using API or possibly even with C.
Delphi • Turbo Pascal (ie extended object pascal) • Visual front end - “authoring system” • Fully Object Oriented • True compiler • Portable to Linux (Kylix) but not Macintosh
Delphi • Turbo Pascal (ie extended object pascal) • Visual front end - “authoring system” • Fully Object Oriented • True compiler • Portable to Linux (Kylix) but not Macintosh
Uses of Delphi • Rapid prototyping • Database front-ends • Multimedia • Professional programming
Multimedia Development using Authoring Systems • Authoring systems allow the selection of pre-programmed elements for multimedia development • Vary widely in capability, flexibility and ease of use • Generally easier to use, but less flexible, than low level languages or RADs • There is an increasing overlap in capabilities and flexibility
Use of Authoring Systems • May dramatically reduce development time (and thus cost) • Often accessible to designers and other “non-programmers” • Invaluable for rapid prototyping • Does not affect time spent upon content creation or media processing • May or may not be useful for final implementation
Authoring Systems Distribution Development DistributableRun-time Engine Development Environment ProprietaryData File Media Media Media
Authoring Systems Distribution Stand-alone program file DistributableRun-time Engine ProprietaryData File Media Media Media
Paradigms of Authoring • Scripting language • Slide show • Hierarchies • Iconic flow control • Frames • Card scripting • Cast/score scripting • Hypertext • Embedded markup • Extended productivity tools
Scripting Languages • Very common • Resemble conventional programming languages, but much higher level • For example OpenScript in Toolbook
Slide Show Metaphor • Slides shown in linear sequence • Some slide show tools allow links and branching (e.g. menus) • Most slide show tools are controllable by scripting • MS Powerpoint is the best known example
Hierarchy • Elements of the system are organised into a multi-level tree structure • Most suitable for menu-driven applications • For example, common in DVD authoring systems (e.g. DVD Studio Pro)
Iconic / Flow Control • Icons are assembled on the screen into a flow chart • Icons represent functionality • Icons are selected from a palette and arranged onto a flow-line • Behaviour of the icons can then be adjusted • Development tends to be very rapid (at least for simple interaction) • Runtime tends to be slow • For example Authorware
Iconic / Flow Control • Icons are assembled on the screen into a flow chart • Icons represent functionality • Icons are selected from a palette and arranged onto a flow-line • Behaviour of the icons can then be adjusted • Development tends to be very rapid (at least for simple interaction) • Runtime tends to be slow • For example Authorware
Frame Paradigm • Similar to iconic flow control • Frames (icons) are media objects which are controlled by attached events • Links between icons represent conceptual associations rather than the flow of the program • An example is Quest
Frame Paradigm • Similar to iconic flow control • Frames (icons) are media objects which are controlled by attached events • Links between icons represent conceptual associations rather than the flow of the program • An example is Quest
Card / Scripting • The oldest multimedia authoring paradigm exemplified by Hypercard • Still important today (e.g. Toolbook) • Flat field database of “cards” • Each card represents a screen display • A stack of cards is controlled by a script • NB the scripting language of Hypercard is Hypertalk
Card / Scripting • The oldest multimedia authoring paradigm exemplified by Hypercard • Still important today (e.g. Toolbook) • Flat field database of “cards” • Each card represents a screen display • A stack of cards is controlled by a script • NB the scripting language of Hypercard is Hypertalk
Cast / Score / Scripting • Time is represented horizontally • Metaphor is that of a music score or a play (i.e. actors on a stage) • Multimedia elements are chosen from a “cast” • Scripts control interaction and handle events • Examples are Director and Flash • (Scripting languages are Lingo and Actionscript)
Cast / Score / Scripting • Time is represented horizontally • Metaphor is that of a music score or a play (i.e. actors on a stage) • Multimedia elements are chosen from a “cast” • Scripts control interaction and handle events • Examples are Director and Flash • (Scripting languages are Lingo and Actionscript)
Hypertext Paradigm • “Non-linear reading and writing” • A collection of interconnected documents • Interconnections being links and/or inclusions • The browsing paradigm is fundamental • WWW is hypertext – sort of! • Various authoring systems • “Hyperwordprocessors” • All of the extant systems are web front-ends – eg Dreamweaver
Embedded Markup • Tags are placed in text files to provide instructions for the display of media and linking. • SGML • HTML • VRML • XML • SMIL • SVG • 3DML
Extended Productivity Tools • Many productivity tools are programmable and multimedia capable • Visual Basic for Applications (VBA) • Most MS products • Cross platform (Windows / Mac) • Combines multimedia capability with that of the host tool • MS Help System • Cross platform (Windows / Mac) • Simple hypermedia tool
Mixed High / Low level development • Most authoring systems can be extended with custom code written in a conventional programming language. • This adds power, speed and flexibility • Windows - Dynamic Link Libraries (DLL) or ActiveX controls