Abstract
This paper aims to answers the question “Developers tend not to use Java when developing multimedia application (for movies, sound, music, images etc) on the web. Is this statement correct? (Defend your case by using examples or other alternatives)”, through analysis of the advantages and disadvantages, as well as, the features of Java programming language in multimedia application. The solutions to possible disadvantages of Java are explained, and the writer opinion in regards with the topic is also stated. The conclusion the writer derived is based on the findings and analysis of the subject. Some examples of java-based multimedia application are also given for further understanding.
Introduction
Multimedia is a concurrent medium used in presentation that combines text, sound, and/or motion video. It can be distinguish either from traditional motion pictures or movies, or possible audience interaction; which is usually called Interactive Multimedia. Interactive multimedia includes voice commend, mouse manipulation, text entry, touch screen, video capture or live participation (in live presentation). Interactive multimedia generally uses sophisticated technology in production and presentation than using simple text and images.
Through new sophisticated technology available, it is now possible to develop high quality multimedia content, in less time, and distribute it to a much wider audience using the Web. The Internet has become a tool in multimedia presentation. Today’s trend in Internet multimedia presentation uses Java programming language as a medium in delivering multimedia materials over the Internet. Java programming language is an object-oriented programming language that is not platform dependent; this means that any Java program can be downloaded and run on all platforms even without modifying the program to suit platform protocol. Java was developed and introduced by SUN Microsystems, and had become a widely used programming language for client and server processing over the Internet. It is developed and modeled after C++ programming language, with added feature that enhances programming such as “garbage collection”, which automatically free unused memory, multithreading, and the capability of a Java program to run using small amount of memory.
Opinion on Java
The writer believes that Java can be used in developing multimedia application (audio, video and images) on the Internet. This is because of the powerful features of java programming language, making it an effective language for multimedia purposes. Java is originally designed to run in a distributed network, particularly the Internet. Programs created on Java are portable and is capable to run in any network that has Java Virtual Machine. Java virtual machine is responsible in interpreting java program bytecode into code that will be understandable in computer language or machine language.
Although Java programming language is generally modeled after C++, unlike C++ and other languages, java is robust and contains no references to external data. This feature of java ensures that an instruction cannot contain the particular address of data storage in other application or in the operating system; program instructions that contains either of which can cause the program or the operating system to “crash”. Even more importantly, is the fact that Java was designed to allow secure code execution across a network, even when the particular source is untrusted and may contain malicious codes. A client can download and run any java application, without the need to save and install the application to the client’s hard disk. Unlike C++, Java has no pointer and cannot access arbitrary addresses in the memory. Also, Java was designed to make program coding easier and bug free.
Disadvantages of Java · The major disadvantage of Java is the speed of program execution. This can be cause by slow and limited bandwidth of the communications channel and the added delay caused by the network browser translating the byte code. Compiling java codes can consume some time and java as an interpreted language has a major disadvantage when it comes to speed. Java can be perceived to be significantly slower and consumes large memory space allocation when compiled than other programming language, particularly its predecessor C++. · (1996) complains that Java lacks templates, overloaded operators, and user-defined conversions. The latter two, he points out, are useful for making a user-defined type behave like a built-in type; although this complaint proves to be wrong in the next years to come. Early versions of Java are predominantly a single-paradigm programming language. Solution to Java Disadvantages · Speed is considered to be a problem in development of java application before. But due to continuous technological advancement in the Information and Communication industry, and with faster computer software and hardware available today; the issue of speed can be easily solve. · Early versions of java are indeed a single-paradigm language. However, as the years passed and java matured, new versions of java are now procedural paradigm. As the years passed java programming language is developed and improved to adapt in the changing technology and requirements of the growing market demands. Other Alternative Technologies Mac OS X (QuickTime)
Mac OS is Graphical User Interface (GUI)-based operating system developed and introduced by Apple Computer Inc. for Macintosh Computer Systems; which are also developed by the same company. The latest version of Mac OS is the Mac OS X, which is based in UNIX in terms of memory management and capable of pre-emptive multitasking. The new memory management system of Mac OS X, allowed more programs to simultaneously run and virtually eliminates the possibility of system and operating to crash.
QuickTime is a multimedia infrastructure that is developed by Apple for the Macintosh system. It was introduced in 1991, and can contain any kind continuous motion data such as audio, video, MIDI files, animation, virtual reality, Karaoke text and time-based information.
In addition, QuickTime also supports editing and playback of audio-visual data and streaming of multimedia content over a network. File format and streaming technology of QuickTime adapts MPEG 4 standards that relates to multimedia content. There are huge varieties of products available in the market that supports QuickTime authoring.
MPEG 4 was chosen by QuickTime as the basis of file containment because it was better and well-suited for editing than other file structure such as MPEG 1 and MPEG 2. Also Apple added additional support in QuickTime.
QuickTime technology of Mac OS X is consists of the following:
- QuickTime Player application, which is a media player.
- QuickTime framework provides a common set of protocols for encoding and decoding audio and video.
- QuickTime Movie (.mov) file format is an openly-documented media container.
QuickTime is distributed free of charge or is a free software, includes QuickTime Player application, and can is not platform dependent (it can run on Windows OS as well). QuickTime Player application on Mac OS X or Windows is capable of:
· Full-screen playback.
· New movie recordings
· Editing functions such as Cut, Copy and Paste functions; that can merge separate audio and video tracks, freely placing the video tracks on a virtual canvas with the options of cropping and rotation.
· Saving and exporting (or encoding) to any supported codec by QuickTime. The latest version, QuickTime 7 includes presets functions for exporting video to a video-capable iPod.
Writer’s Opinion
The problems mostly encountered in Java programming language are based on the early years of java. This is because to the immaturity of the programming language that such problems arise, but in today’s trend, where technology is at constant development and improvement, such problems can be easily solve. The problems arise from the introduction of java to the market, but as the language matures more advance and sophisticated software and hardware became more available for everyone. The main problem is the compilation time of java programs, java is a compiler-based program, and to solve this problem, proper upgrading of the computers systems software and hardware can be done to solve such problem. There is no problem ion using java in multimedia application, the real problem lies in the user and the developer.
Apple’s QuickTime was first introduced for the Macintosh system only, but as the time past and the demand for high quality java-based multimedia application rise, QuickTime was developed to be a platform independent multimedia infrastructure. QuickTime has an extensive support to various file formats available, from audio, video, midi files, animation, virtual reality, Karaoke text and time-based information; it is a suitable multimedia infrastructure in a small package.
Advantages of Java
Java is a programming language specifically developed for client and server networked computing or distributed environment particularly the Internet. Although, Java is designed and modeled after C++, it is much easier and simpler to use than C++ and enforces an Object Oriented Programming (OOP) model. Java is an object-oriented programming language. Objects as part of a class, can inherit code that is common to the class. Java applications can run on a single computer and can also be distributed among various servers and clients in a network. It can also be used in building small application module or applet, which is commonly used in a web page. Applets make interaction between the web page user and the web page server possible. Applets are executed at clients rather than the server, making java applet run faster.
Advantages of Java in Multimedia Applications
Java is appropriate and an ideal tool for creating interactive multimedia applications that will run on the WWW, this is due to the reason that Java provides a means for downloading data and application software for displaying and processing multimedia file within the Internet. In addition, embedding Java applications (Applets) within HTML documents transforms a static web page into a fully interactive multimedia experience. Applets on Java Virtual Machine (JVM) within browsers allow safe program execution of interactive programs over the WWW. The majority of such programs are written in Java; this is due to the flexibility and interactive user interface and great potential of Java written program.
Java Media Framework API (JMF) is a component of Java programming that allows audio, video, and other time-based media to be embedded to applications and applets built on Java language. JMF includes real-time network protocols that can capture, playback, and stream various multimedia formats; providing a powerful toolkit in developing a scalable and cross-platform Java application. JMF supports multiplexing wide range of codec, players, effects, capture, and other multimedia control mechanism. However, due to the complexity of JMF, it is quite difficult to understand.
Features of Java
Java has two main features which particularly makes it suitable in creating web-based applications and other distributed network. The two best feature of java is its platform independence and security features. Other important features of java are:
· Platform Independence
Java programs can run on any platform without modification; making java portable. This portability is because of the Virtual machine of java. When a java program is compiled byte-code is created instead of executable file.
· Security
Java is a secure language; it is actually one of the first programming languages to consider security as part of its design. Java provides a secure execution of program between cross-platforms.
In addition to these two best feature of java. The language offers numerous advantages to developers. Java is also considered to be:
· Simple
Java considered a much simpler and easy to use object-oriented programming language if compared with the other popular programming language. It is designed for easy use. Java is easy to write, compile, debug and learn than other GUI-based programming language.
· Distributed
Java is designed to make distributed computing easy with the networking capability integrated into the language. Distributed computing involves several computers that work together in a network. Writing network programs using java is easy as sending and receiving data to and froma file.
· Interpreted
Interpreter is needed by any programming language to run any program. The programs are compiled into Java Virtual Machine code called bytecode. The bytecode is machine independent and can to run on any machine that has a Java interpreter. Java programs are only needed to be compiled once; the generated bytecode by the compiler can then run into any platform.
· Reliability
Reliability and security go hand in hand. Without a reliable framework for program execution security cannot be implemented with any degree of assurance. Java provides multiple levels of reliability measures.
· Robust
Robust means reliable; Java’s emphasis is on early checking for possible errors. Java compiler is capable of detecting errors that would eventually show during program execution.
· Multithreaded
Multithreaded is the capability of a program to perform several tasks simultaneously within a program. Java is integrated with multithreading programming system; which is necessary in visual and networking program.
· Dynamic
The Java programming language was designed to adapt to an evolving environment. New methods and properties can be added freely in a class without affecting their clients.
Because of the capability of java in programming and the features of the programming language in terms of usage and performance; java programming language is indeed became a widely used language for various multimedia application. And also, because of the features of java in programming, the writer believes that java is well-suited to be use for various multimedia application developments.
Conclusion
Java is receiving widespread interest in terms of usage, and it will undoubtedly become as an important useful internet development tool. Java supports a new programming paradigm, which allows programmers to create platform independent and web-executable program. Future development on web applications using java is very promising. Since the introduction of Java, major software companies (such as Microsoft, IBM, and Oracle) have been integrating Java programming into their web-based products.
Java in multimedia applications is becoming a common trend; this is because of the capability of java language in multimedia performance and its practical web-based nature. Java makes multimedia application easy and secured.
Java language has significant advantages in many industries not only for commerce but education. It allows students to easily learn object-oriented programming without complexity. It provides rigorous compile-time error checking. And it allows instructors to introduce students to GUI programming, networking, threads, and other important concepts used in modern-day software. Java introduced multimedia as an effective method for teaching; embedding both audio and video educational references in teaching. Java-based multimedia teaching provides an interactive environment that captures the logic of real-time education. Java is an excellent instrument for multimedia.
References:
Credit:ivythesis.typepad.com
0 comments:
Post a Comment