The HTML publisher normally uses the Apache/Jakarta Tomcat servlet engine (though in practice any J2EE-compliant servlet container can be used). Details on how to install Tomcat are provided in the release notes and further documentation on how to install and configure Tomcat is included with Tomcat itself. Once Tomcat is started the documentation can be viewed by connecting to Tomcat’s own web server. By default, Tomcat runs on port 8080, so test the installation and view the documentation by viewing http://localhost:8080 with your web browser.
Tomcat uses a standard directory structure for all its web applications (webapps). Assuming <tomcat> is the Tomcat root directory, the CatDV HTML Publisher would be installed in <tomcat>/webapps/catdv. <tomcat> might be /usr/local/jakarta-4.1.3 under Unix or C:Tomcat4.1 under Windows.
|<tomcat>/bin||Programs to start/stop the server etc.|
|<tomcat>/conf||Server-wide configuration files (shouldn’t need modification)|
|<tomcat>/logs||Location of error log files|
|<tomcat>/webapps/ROOT||Location of the homepage for the Tomcat-managed web site|
|<tomcat>/webapps/catdv||Location of the CatDV HTML Publisher web app|
|…/catdv/WEB-INF/lib||The CatDV servlets and supporting libraries|
|…/catdv/WEB-INF/web.xml||CatDV HTML Publisher configuration file|
|…/catdv/*.jsp||JSP server pages (may be modified)|
|…/catdv/*.gif||Icons used within the JSP pages (other resources can also be placed here)|
|…/catdv/*.html||Static web pages|
|…/catdv/*.inc||HTML and Java fragments designed to be included in JSPs|
|<tomcat>/…||Other files and directories required for the operation of Tomcat itself|
Within the webapps/catdv/WEB-INF/web.xml file you will see definitions of all the servlets provided by CatDV. These lines should not be modified. This file also defines the location of the catdv.properties file that contains a license key and properties that affect the functioning of the Live HTML Publisher. You should edit this so the Live HTML Publisher points to the same copy of catdv.properties that the Workgroup or Enterprise Server is using. (If you edit the web.xml file be careful to adhere to correct XML syntax or the catdv web application will fail to start.)
The following settings in catdv.properties are relevant to the HTML Publisher:
|catdv.database||JDBC URL to the MySQL database|
|preview.dir||File path to the preview directory (if available locally on the machine running Tomcat)|
|preview.url||URL to access the preview directory (if available, eg. via Apache web server). Leave this blank to use the built-in getMedia servlet.|
|media.dir||File path to root directory of original media files (as stored in the database)|
|media.equiv||Corresponding root directory for media files or web proxies on the local file system|
|media.url||URL to the online media location (if available via a web or file url). Leave this blank to use the built-in getMedia servlet.|
|timestamp.format||How dates are formatted for display (0=D/M/Y, 1=M/D/Y, 2=Y/M/D, 3=verbose, 4=yyyy-mm-dd. Add 16 for 24-hour clock.)|
|web.user||Which CatDV user to connect to the Enterprise server as. This determines which catalogs are accessible via the web interface.|
|catdv.allowAnonymous||Alternatively, you can leave web.user blank and allow anonymous access, giving access to unowned catalogs.|
If you make any changes to this configuration file you need to stop and restart Tomcat.
Tomcat can be configured to automatically recompile any JSPs when you change them so their effect is instantly apparent. This is recommended during development, but once finalised you can turn this option off by changing the “reloading” parameter in <tomcat>/conf/web.xml. You can also configure the port Tomcat runs on and other Tomcat server parameters in <tomcat>/conf/server.xml.
To view the CatDV HTML Publisher web pages, visit http://localhost:8080/catdv/. If you get any errors check the log files in <tomcat>/logs for additional details.
If you are using the Workgroup edition of the CatDV Server then the Live HTML Publisher automatically has (read only) access to all the catalogs and clips in the database.
If you are using the Enterprise edition of the server then you need to specify which catalogs are available through the Live HTML Publisher. The way to do this is use the Server Admin Panel of the CatDV client application to create a “Live HTML” user and assign that user as a member of all the groups whose catalogs you want to be visible with the web interface. In the catdv.properties file, set web.user to the name of the user you created.
You can also set the catdv.allowAnonmyous property to true, which will give the Live HTML Publisher access to any unowned catalogs, ie. catalogs which aren’t assigned to a particular group. (These same catalogs will also be available to the CatDV client application to users who connect but don’t log on with a CatDV user name and password.)
When using the Enterprise server you must specify at least one of web.user or allowAnonymous (or both) otherwise the HTML Publisher won’t have access to any clips or catalogs in the database.
If you wish, you can configure the Live HTML Publisher to make the media files themselves, not just the metadata and thumbnails, available to a web browser.
There are several important points to bear in mind before doing so:
First, the original uncompressed (or DV compressed) media files may be very large. Even if they are available online, it is probably not practical to download multi-gigabyte files via HTTP. For this reason, it usually makes more sense to provide lower resolution, preview quality files for users to view the contents of a clip when using the the web interface, and provide direct access to the media files via the file system or a SAN when full quality files are needed for editing. (Providing access to the original media files via the web interface is primarily intended for supplementary media files such as still images.)
Second, in order to determine whether media for a clip is available or not, the Live HTML Publisher needs direct access to the media files via the file system. Also, the path stored for the media files in the CatDV catalog must be correct for the server to access them.
Finally, because the web server does not have a capability to construct movies on the fly, separate preview movies should be created for each clip that might be returned from the web server.
(This differs from how the CatDV Pro client application normally handles previews. Because the previews are available to it via the file system the client application can efficiently construct a movie for display using portions of one or more preview movies, based on tape name and timecode value. For example, the preview directory might contain a single preview for the whole of one tape, and separate previews for each shot on another tape. If the user tries to display a short 5 second clip from within the first tape a reference movie referring just to the required portion of the tape is created within the client application. Similarly, if a sequence (or composition) or clips is being shown, a single reference movie combining portions of several preview files is assembled automatically, giving the client application the ability to assemble and display a cuts only version of a imported EDL on the fly. The HTML publisher, on the other hand, will only display previews if they directly match the start timecode and duration of the clip being shown.)
Configuring Tomcat to act as a media server
The CatDV client application uses two mechanisms to locate media for a clip. Original media files are accessed via the source media file path, and preview movies are looked up using tape name and timecode values of the clip being displayed.
The Live HTML Publisher is similar, so to play media you need to configure the file path either to media files (media.dir) or the preview root directory (preview.dir) respectively, or both. Because the media path for clips as stored in the database may be different from the local path the server uses to access the same files you may also need to set the media.equiv property.
Once the Live HTML Publisher has determined via the file system that a media or preview file is available it then translates this to a URL that the browser can use to access the file. As part of the HTML Publisher configuration you therefore need to tell it what URL to present to the web browser by setting the corresponding media.url and preview.url properties.
You have a number of options as to how you serve the media and preview files:
- If you have an existing web server such as Apache httpd, or Microsoft IIS, then you can set up aliases to the relevant media directories and enter the URL prefix. This will likely be on a different port, and possibly even a different server, from the Live HTML Publisher itself.
- Alternatively, you can use the new getMedia servlet built in to Live HTML Publisher 5.1 to serve the media. Configuring this is very easy – just leave the media.url and preview.url fields blank.
- Finally, it’s also possible to configure directory aliases for the built-in web server included in the standalone Tomcat server. You do this by creating a configuration file for each directory mapping you want to set up. In the following example, tomcat is the Tomcat installation directory, eg. /Library/Tomcat or C:Program FilesApache Software FoundationTomcat 5.5.
Assume you have media files on /Volumes/XDrive/Media and want to make these available via a URL of the form http://server:8080/xmedia/ .
Create a file media.xml in tomcat/conf/Catalina/localhost containing the following line:
<Context path=”xmedia” docBase=”/Volumes/XDrive/Media” />
(You can also add this fragment of xml to the tomcat/conf/server.xml file). As with the case of an external web server you then need to tell the Live HTML Publisher which URL prefix to use.
While configuring an external web server to serve media files may provide better performance, using the built-in getMedia servlet is a simple and effective way to make previews and media files available with the minimum of configuration.