Skip Navigation Links
Home
Online Player Beta
Official Project Report
Official Project Blog
My PlayGroundExpand My PlayGround


Online Digital Talking Book Technology with Web and Mobile Clients


A Project Report Presented to
The Faculty of the College of Engineering San Jose State University
In Partial Fulfillment Of the Requirements for the Degree
Master of Science in Software Engineering


By Tanakom Talawat
December 2007







TOC

Chapter 3. Technology Descriptions

As described in the previous chapter, Project Architecture, this project was made of several technologies integrated together. From the client to the server, the technologies used in this project are totally different. This chapter will describe in detail about each technology and how it work with the other technologies in the project by separating into three layers including Client-Tier, Middle-Tier, and Server-Tier.


Client-Tier Technologies

The client-tier technologies are the group of components that running at the user side. Thanks to the fact that this program is the web-based application, clients have no need to install any client software. However, because the client side has taken advantage of a Rich Internet Application (RIA) called Silverlight version 2.0 to access media on demand, it needs to setup a plug-in in order to make the Silverlight work properly. It is the one time setup. All supported web-browser can acknowledge this plug-in setup at the same time. Therefore, users will not need to setup this plug-in for other web-browsers they use in that computer again.


All of the client-tier components will be distributed to the clients by downloading of web-browsers from the web-server. The some components like HTML, AJAX, JavaScript and CSS will be automatically run on the web-browser. However, with the latest technology of RIA, both class and interface of RIA are also saved in the folder at the client side as DLL called “ClientBin”.

There are six web technologies used in the client tier including HTML (Hypertext Markup language), DHTML (Dynamic HTML), JavaScript, AJAX (Asynchronous JavaScript and XML), RIA (Rich Internet Applications), and the Microsoft media streaming technology.


The HTML, the basic web language, is used in the Client-Tier as the major integrator to fasten other technology together. On top of the HTML page, this project has used JavaScript language for the communication between technologies like a computer bus. As my research, JavaScript is the most effective language that can be used to connect other web client technologies together.


Since it has the web-client framework which is combined between HTML and JavaScript, the next technology that has been integrated is the AJAX. This project uses the ASP.NET AJAX to be the main interface for displaying the Content Tab, the Bookmark Tab, and the Short-note tab. The significant reason that I selected AJAX technology is that the display page will not be flash when the user changes a chapter. This is the multimedia web application which has a lot of components embedded in the same page. If there is a page refresh every time that a user changes the chapter, the server bandwidth will be huge due to redundant loading of the same components.


 The most important media of this project is the voice. The voice files in a Digital Talking Book were saved in the MP3 format and the detail of each phrase was stored in the SMIL (Synchronized Multimedia Integration Language) file which is a type of XML. Consequently, the main player that we can use in this project will only be the web media player that can parse XML files. From my researching, the Microsoft Silverlight version 2.0, a Rich Internet Application, has fulfilled these requirements. Thus, I selected this RIA to be the main player in the project.


Highlighting color is the other feature in the application that can help the people who have an insignificant vision problem (not include the blind) follow up the current reading voice. The Dynamic HTML which has internally integrated the DTB.CSS file makes this feature possible. Every time that the RIA performs reading at a new phrase, it will send notice to JavaScript (which is the internal bus). Then, JavaScript will directly look for the current reading position in the HTML by using an ID argument. When it has found, it will force the yellow Style Sheet to the particular ID in the HTML. Actually, in the beginning, the HTML is the XML content file that is transformed by the CSS (Cascading Style Sheets) mentioned above.


Middle-Tier Technologies

Although most of the technologies are running at the Client-Tier, it also still needs the Middle-Tier to serve the content and provide some DLLs that required in the Client-Tier. The components that are combined at the Middle-Tier including Web server, Text-to-Speech and Audio Compression.


In order to be compatible with the application developed by using ASP.NET AJAX Extension Interface and Silverlight RIA at the Client-Tier, web server technology has to be the product in the same solution which is Microsoft Internet Information Services (IIS) and Microsoft .NET framework 2.0. Moreover, the web server has to be integrated to the text-to-speech application and audio compression software. The purpose of this integration is to convert a user’s Short-note to the media file. Unfortunately, the media output from the text-to-speech software is WAV file format which cannot be streaming back to the client. Therefore, I have put the LAME, the open-source audio compression software, to the system for converting media type from WAV file to MP3 file. Finally the MP3 file will be the output that is saved to disk instead of the text short-note.


Data-Tier Technologies

As I have introduced about the components of Digital Talking Book (DTB) technology which store at the Data-Tier one by one, this heading will be the complete list of component inside DTB. The DTB that supported in this project is called DAISY (Digital Accessible Information SYstem) which is the most used international standard of DTB [1]. It was developed by National Information Standard Organization (NISO). There are two main technologies used in this Digital Talking Book standard including XML, and Audio compression. In the XML part, there are four file types related the standard including:

·        NCX (Navigation Control for XML applications) file uses for storing the chapter content in a Digital Talking Book.

·        OPF (Open Packaging Format) file uses for storing all the related files in a Digital Talking Book

·        SMIL (Synchronized Multimedia Integrated Language) uses for storing the synchronized information of the Multimedia used in a Digital Talking Book

·        XML (Extensible Markup Language) uses for storing the detail content of a Digital Talking Book


For the audio compression, in the specification, the audio file type can be varied; it does not limited to only the MP3 format. Due to the fact that this project is the online web-based application, the RIA really needs the specific media type that is compatible to stream over Internet with the limited bandwidth. With this reason, I have specified the media file type to be used in this project only the MP3 format.

TOC




From this point, threr are some advertisements from Google.




COPYRIGHT © 2008 DAISYNOW.NET ALL RIGHTS REVERSED.
PLEASE READ OUR PRIVACY POLICY FOR BETTER UNDERSTANDING.