陳文進臺灣大學:資訊工程學研究所柯憲儒Ke, Shian-RuShian-RuKe2007-11-262018-07-052007-11-262018-07-052005http://ntur.lib.ntu.edu.tw//handle/246246/53979由於多媒體內容日益劇增,人們對於多媒體的需求越來越大,漸漸地,人們也會希望能自己發展多媒體應用程式,人們需要把自己的想法加以具體化,用多媒體的內容來表達出獨特的想法。雖然很多新興的標準(如MPEG-4)和媒體格式(如QuickTime和Flash)皆往此趨勢發展,但是仍然沒有一個很有彈性的並且可程式化的架構提供為傳統應用程式和多媒體應用程式之間的橋樑。即使對一個很有經驗的開發者,要發展一個多媒體應用程式也不是一件簡單的事。因此,發展一個快速且方便的方法論用來開發多媒體應用程式,的確是一個富有挑戰性的研究議題。 在此論文,我們提出了一個快速開發多媒體應用程式的系統(RAMAD system),並加以設計和實作。RAMAD系統設計上的考量如下列幾點: 1.為了使RAMAD的多媒體內容更加豐富,我們加入了MPEG-4為一個核心的元件。 2.為了能在RAMAD裡,重複使用傳統的GUI元件,我們納入現存的GUI元件,並使之與MPEG-4元件能有高度的互動。 3.為了加快開發速度,我們選用script語言作為開發語言,即Python,並用之來連結所有的元件。Python具有很多很好的特徵,以提供為除錯和測試之用,如直譯和動態連結等特色。 4.為了讓RAMAD系統能夠跨平台,對於各個模組的開發,我們都是使之具有跨平台的特色,如GUI和MPEG4。因此,由RAMAD系統所開發出來的多媒體應用程式,便可在其他的平台上執行。 利用RAMAD系統,使用者可以快速地做出期望的多媒體應用的模型,向其他人更明確的表達出自己的想法。更可以進一步地,做成一個完整的多媒體應用程式,而且其完成的多媒體應用程式可以在各個不同的平台下執行。Nowadays, due to the increasing amount of multimedia content and the growing demand for rich-media presentations, this creates a need to build tools that enable everyday people to develop multimedia applications by themselves. Moreover, people would like to create personalized applications to realize their distinctive ideas. Although many emerging standards (such as MPEG-4) and media formats (such as QuickTime, Flash, etc.) are made to meet this demand, there is not a flexible and programmable framework to bridge the gap in the development process between traditional applications and multimedia applications. Even for an experienced developer, developing a multimedia application remains difficult. Thus, we consider the research challenge to find a methodology for rapid and ease-of-use development of multimedia applications. In this thesis, we propose a design and implementation of a RApid Multimedia Application Development (RAMAD) system. The design considerations are as follows: 1.In order to deal with complex multimedia content, we adopt MPEG-4 as a core component for presentation. 2.In order to reuse conventional Graphic User Interface (GUI) in RAMAD system, we include existing GUI components and make them interactive with the MPEG-4 component. 3.In order to facilitate the development process, we use a scripting language, i.e. Python, to glue all Python extension components. Python has some good features for debugging and testing during developing stage, such as interpreting and dynamic binding. 4.In order to deploy RAMMAD system on different platforms, we develop most components in a cross-platform manner, such as GUI and MPEG-4. This makes RAMAD application portable while migrating to other platform. With RAMAD system, users can rapidly build a proof-of-concept prototype of a target multimedia application, and show the significant idea to other people. Furthermore, they can refine the proof-of-concept prototype to be a full-blown multimedia application, which is portable to different platforms.CONTENTS 5 LIST OF FIGURES 7 LIST OF TABLES 9 CHAPTER 1 INTRODUCTION 10 1.1 BACKGROUND 10 1.1.1 What is RAD 11 1.2 MOTIVATION 12 1.3 THE GOAL 13 1.4 THESIS ORGANIZATION 14 CHAPTER 2 MPEG-4 SYSTEM OVERVIEW 15 2.1 MPEG-4 INTRODUCTION 15 2.1.1 MPEG Introduction 15 2.1.2 MPEG-4 standard Overview 16 2.2 MPEG-4 SYSTEM 19 2.2.1 ISO/IEC 14496 Terminal Architecture 20 2.2.2 Scene Description (SD) 22 2.3 MPEG-4 APPLICATION ENGINE 24 2.3.1 MPEG-J Engine 24 2.3.2 MPEG-PY Engine 26 CHAPTER 3 SURVEY OF RELATED WORKS 31 3.1 INTRODUCTION 31 3.2 RELATED RAD TOOLS RESEARCHES 31 3.2.1 Visual Basic and Delphi 31 3.2.2 Envivio 33 3.2.3 Omnis Studio 34 3.2.4 Virtools 35 CHAPTER 4 RAMAD SYSTEM 38 4.1 ARCHITECTURE OVERVIEW OF RAMAD APPLICATIONS 38 4.1.1 RAMAD Applications 39 4.1.2 RAMAD Virtual Machine 39 4.1.3 RAMAD Class Library 39 4.1.4 MPEG-PY 43 4.1.5 MPEG-4 Presentation Engine 45 4.1.6 GUI Components 48 4.2 ARCHITECTURE OVERVIEW OF RAMAD EDITOR 48 4.2.1 Helpful development Wizards 49 4.2.2 Code Editor 51 4.2.3 Resource Editor 52 4.2.4 Scene Editor 53 4.3 THE EDITING PROCESS DESIGN 53 4.3.1 The workflow 54 4.3.2 The editing process from an example 55 CHAPTER 5 APPLICATIONS 60 5.1 PICTURE BROWSER 60 5.2 SOLAR SYSTEM 61 5.3 MEDIA CINEMA 62 CHAPTER 6 CONCLUSIONS AND FUTURE WORK 65 6.1 THE FEATURES OF RAMAD SYSTEM 65 6.1.1 Rapidity 65 6.1.2 Convenience 65 6.1.3 Diversity 66 6.1.4 Reusability 66 6.2 CONCLUSIONS 66 6.2 FUTURE WORK 67 BIBLIOGRAPHY 682111828 bytesapplication/pdfen-US多媒體應用快速應用程式開發MPEG-4Multimedia applicationRAD多媒體應用程式快速開發系統的設計與實作Design and Implementation of RApid Multimedia Application Development (RAMAD) Systemthesishttp://ntur.lib.ntu.edu.tw/bitstream/246246/53979/1/ntu-94-R92922068-1.pdf