DVD Authoring System for Opensolaris Installation and Usage Manual

DVD Authoring System for Opensolaris Installation and Usage Manual

DVD Authoring System for OpenSolaris Installation and Usage Manual Authors: Igor Struchkov, Vladimir Omelin 1 Preface DVD authoring is one of the most common tasks fulfilled by personal computers nowadays. Modern operating systems, including Linux and Windows, have numerous software packages, both open-source and proprietary, for DVD authoring. OpenSolaris is now aiming at a competitive role in the niche of desktop operating systems and therefore all kinds of end-user applications, such as DVD authoring software, must become available in it. The goal of this project is to build a full-featured DVD authoring system for OpenSolaris by porting available open-source Linux packages and developing all non-portable features. After some preliminary research it became clear that most of back-end work, including audio/video encoding and iso image construction, can be done by command-line utilities that can be ported from Linux to OpenSolaris. On the other hand, a GUI front-end was decided to be built almost from scratch using some ideas from open-source project Varsha. The main idea was to develop the front-end on JavaTM platform, making it as portable as possible. It turned out to be a very good decision in rapidly changing and unstable world of OpenSolaris distributions, and the developed front-end stays functional in any combination of installed packages. 2 1. Architecture of the DVD Authoring System Architecture of the DVD authoring system consists of several components of different kinds. One group of components, called Utilities, consists of command-line tools running in native Solaris environment. This group includes dvdauthor, mjpegtools, ffmpeg, sox and dvd-slideshow. Another group of components are JavaTM platform libraries that support our GUI front-end. The third group consists of one component, namely, a DVD authoring front-end developed in Java. And the fourth group consists of standard OpenSolaris video players – Totem or MPlayer. The graphical view of the architecture is shown in fig. 1. Totem MPlayer Utilities dvdauthor GUI front-end spumux mjpegtools ffmpeg Docking JMF dvd-slideshow Frames sox JavaTM Platform Fig.1. Overall architecture of the DVD authoring system 3 The GUI front-end is a center of the system. It represents the process of DVD authoring in a user-friendly manner as described in chapter 3. But the GUI front-end does not make all the work itself, it relies heavily on Utilities to do the work upon user requests. The main utility is dvdauthor. It receives initial data from the GUI front-end in the form of specially formed XML document called a project. The project describes the whole structure of DVD including menus and chapters, and includes links to MPEG videos that form each chapter of the movie. According to the project XML, dvdauthor produces a folder with DVD disk structure which can be packed into ISO- image or directly burned on a disk if a DVD writer is available. Spumux is used to create DVD menus and is also required by dvd-slideshow to produce subtitles. It accepts data in the from of XML document describing structure of a DVD menu and a video file. From mjpegtools package several utilities are used. Jpeg2yuv is used to create a video file for a DVD menu based on an image and outputs a result in a yuv-file. Mpeg2enc converts yuv-files in MPEG-2. Mplex is used for multiplexing of audio and video streams. In this application mplex creates a video file for DVD menu with an empty (silent) audio track. As initial videos are not usually represented in MPEGs suitable for DVD but instead are provided as a set of AVI clips, some transcoding between video formats is needed. This is done by ffmpeg utility. DVD slideshow is a special case of a video clip. It is formed of a set of still images that should be presented at some time interval. The dvd-slideshow utility helps to convert a set of images into MPEG movie that can be then packed into a DVD project. Dvd-slideshow requires Sox. Though most of the job is done by the command-line utilities, some features need to be available interactively when a user works with a DVD project. This 4 features are provided by Java libraries used by the GUI front-end. Docking Frames library is used to create a good-looking docking GUI that is convenient to user. JMF (Java Media Framework) is a set of Java libraries to support multimedia features in Java applications. In our DVD authoring system JMF is used to provide audio playback to a user when he works with audio tracks. JMF is also capable of showing video playback, but unfortunately we were unable to make it work stable for the needed video formats. Possibly the problem is that native JMF performance pack is not available for Solaris x86 (though it is for Solaris SPARC or Linux x86). Because of JMF video codec problems we decided to use an external application to provide video playback capability when editing a DVD project. This is done by a standard OpenSolaris media player – Totem or MPlayer. Obviously, when JMF performance pack is available for OpenSolaris, this feature may be reworked to become a part of the GUI front-end. 5 2. Installation of the DVD Authoring System Installation of the DVD authoring system involves installation of required packages from OpenSolaris repositories, compilation and installation of ported utility packages and compilation and installation of the Java front-end. 2.1. Installation of Required Binary Packages The following packages from the main OpenSolaris repository must be installed in the system before proceeding to installation of other components: ● SUNWtoo ● SUNWcdrw ● SUNWdvdrw ● SUNWgcc ● SUNWgmake ● SUNWbinutils ● SUNWflexlex ● SUNWbison There are several open-source utilities that should be downloaded from Blastwave repository. Is it recommended to install pkg-get package from Blastwave first. To install pkg-get the following steps should be taken: 1) Issue the following command with root privileges: # pkgadd -d http://blastwave.network.com/csw/\ unstable/i386/5.11/pkg_get-3.8.4-SunOS5.8-all-CSW.pkg 2) After installation is complete, edit /opt/csw/etc/pkg-get.conf. The file should contain only one repository url: url=http://blastwave.network.com/csw/unstable With pkg-get properly configured, the three needed utilities (ffmpeg, faad2 and imagemagic) may be installed: 6 # /opt/csw/bin/pkg-get -i ffmpeg # /opt/csw/bin/pkg-get -i faad2 # /opt/csw/bin/pkg-get -i imagemagick Mplayer can be also installed from Blastwave: # /opt/csw/bin/pkg-get -i mplayer 2.2. Compilation and Installation of Utility Packages from Sources Installation of sox. Source code of sox audio converter does not require special porting. The latest version can be downloaded from the official site of sox project: http://sox.sourceforge.net/ After extracting the tar package and changing to the unpacked folder, compilation and installation is done with the following commands: # ./configure # make # make install Installation of dvd-slideshow. The ported version of dvd-slideshow is available from our svn repository: # svn checkout http://195.19.212.40/svn/DVDAuthor/trunk/dvd-slideshow Installation of the package is done by the following command: # ./install.sh 7 Installation of mjpegtools. The ported version of mjpegtools is available from our svn repository: # svn checkout http://195.19.212.40/svn/DVDAuthor/trunk/mjpegtools Installation of the package is done by the following commands: # ./configure # make # make install Installation of dvdauthor. The ported version of dvdauthor is available from our svn repository: # svn checkout http://195.19.212.40/svn/DVDAuthor/trunk/dvdauthor Installation of the package is done by the following commands: # ./configure --prefix=/usr # make # make install 2.3. Installation of Java Media Framework • Download JMF2.1.1e from http://java.sun.com/javase/technologies/desktop/media/jmf/2.1.1/download.ht ml • Extract the JMF install archive to a directory, such as /opt/. A JMF-2.1.1e subdirectory will be created. • Set your CLASSPATH path to reference the JMF directory. • Copy /opt/JMF-2.1.1e/lib/jmf.jar to lib/ext of the JRE (e.g. 8 /usr/java/jre/lib/ext/). • Create .jmfdir in user home directory with the following contents: /opt/JMF-2.1.1e/lib/ • Download JMF mp3 plugin from http://java.sun.com/javase/technologies/ desktop/media/jmf/mp3/download.html • Copy mp3plugin.jar to lib/ext of the JRE. • Run the following command: java com.sun.media.codec.audio.mp3.JavaDecoder 2.4. Installation and Compilation of the Java Front-end The Java frontend is distributed as a NetBeans project from our svn repository: # svn checkout http://195.19.212.40/svn/DVDAuthor/trunk/DVDAuthoringSystem The Java code can be compiled and packaged to JAR using NetBeans or from command line using ant. The following JARs should be in the project classpath for successful compilation: ● dockingFramesCore.jar ● dockingFramesCommon.jar This JARs can be found in DVDAuthoringSystem/lib folder. 9 3. Using the DVD Authoring System In this chapter we will give a detailed guide on how our DVD authoring system can be used to perform a complete DVD creation process starting from initial project creation and ending by burning a DVD disk. 3.1. Starting a New Project A new DVD project is created when the DVD authoring system is started or with 'File->New Project' menu command. After starting the application you see the initial screen (fig. 1). It has three main parts: Project Tree Editor, Workspace and Output window. All the components of GUI are docking windows and can be laid out or popped up from the main frame. Fig. 1. Initial screen of the application 10 3.2.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    17 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us