On2 Flix Engine for Linux System Overview

Topics

About On2 Flix Engine for Linux

Thank you for purchasing the On2 Flix Engine for Linux, a custom, client-server, encoding application comprised of the following components:

Encoding Server Daemon (flixd)

Flixd executes encoding jobs on behalf of its clients. After accepting a connection from a client, flixd can execute a number of configuration requests, then initiate encoding. To decode the requested file, it spawns a helper program called MEncoder (mencoder). While the job is running, it answers status queries from the clients.

Flixd gets its input from and writes its output to files on the host file system. Clients that run on different machines must keep this in mind when providing paths to the SetInputFile and SetOutputFile functions. Flix does not provide a file transfer mechanism between the client and the server.

MEncoder with On2 Additions

On2 Technologies flixd uses MEncoder (http://www.mplayerhq.hu/). To fully function, it requires a codec pack be installed in /usr/local/lib/codecs. A suitable archive can be obtained at http://www.mplayerhq.hu/design7/dload.html#binary_codecs, with the ‘all’ codec pack providing the fullest input file support.

MEncoder decodes the requested file and provides raw data to flixd. It is a modified version of an Open Source program from the mplayer project (http://www.mplayerhq.hu/) used to decode many types of media files. Since this program is covered by the GNU General Public License (GPL), you are entitled to receive a copy of the original source code and the modifications made to it. You can find a copy at http://support.on2.com/gpl/mplayer. MEncoder communicates with flixd using an Inter-Process Communication (IPC) mechanism called a pipe.

You may find that even with the codec pack installed, MEncoder cannot decode certain input files. The licenses that govern the use of certain codecs prohibit or restrict the use of those codecs in a commercial environment. For this reason, the installed MEncoder has those codecs disabled. You may enable other codecs by downloading the source and rebuilding MEncoder. It is up to you, however, to ensure that you have obtained the necessary licenses and paid any additional license fees or royalties relating to such codecs.

On2 Technologies makes no representations or warranties with respect to the use of its software with third-party codecs. Please see http://www.mplayerhq.hu/ for information on other codecs MEncoder supports. If you recompile MEncoder for use with the On2 Flix Engine, you must use the source from http://support.on2.com/gpl/mplayer as a base.

Client Library

All client applications must link against the On2 Flix Engine client library, libflixengine2.so. This library handles all communication between the client and the server. To perform the linking, pass the -lflixengine2 option to your compiler. If the Flix libraries were installed to a non-standard path, it may be necessary to pass the path to the linker with the -L flag, and/or set the LD_LIBRARY_PATH variable at application run time.

Note:
If you are using a higher level language through the provided bindings, this step is performed for you. The client library communicates with flixd by using Remote Procedure Calls (ONC RPC/Sun RPC). This process requires the portmap service to be running. See your Linux distribution’s documentation for details.

Language Bindings

Language bindings typically consist of two parts. The first part is written in the target language and provides the high level interface to the On2 Flix Engine. The second part is a dynamically loaded library that hooks the target language’s runtime environment to the On2 Flix Engine client library. This library is compiled when the On2 Flix Engine is installed.

When the module is loaded into the target language (for example, via import flixengine2 in Python), the binding library and libflixengine2 are linked in to the running program, and provide high level access to the On2 Flix Engine.

Additional Resources

For additional information on the On2 Flix Engine for Linux, refer to the comprehensive API documentation. The path to this documentation is specified during the install process and defaults to /usr/local/share/doc/on2/flixengine. The API documentation is available in both HTML and PDF format.

Be sure to check http://support.on2.com/ for the latest helpful support information or contact flixsupport@on2.com for any support questions. Please include the words ‘flixd’ or ‘flix engine linux’ in the subject of all emails related to this product.

On2 Technologies, Inc.
21 Corporate Drive, Suite 103
Clifton Park, NY 12065

Version: 041008FELSO