65.1 Overview

Hollywood's video library provides functions for loading and playing video objects. Video objects are Hollywood objects which contain a video stream that may be bundled with an audio stream. When playing a video object, Hollywood will make sure that video and audio streams are perfectly synchronized with each other.

You can open a video file from disk using the @VIDEO preprocessor command or the OpenVideo() command. To play a video, use the PlayVideo() command.

Hollywood's video library supports two different renderers:

  1. Inbuilt video renderer: This is a platform-independent video renderer supported on all platforms. It is the most flexible video renderer and supports advanced features like video layers and plugins. The disadvantage is that decoding is done completely in software which is why large videos (or videos that use 50fps or more) might be stuttering. In that case, you can use the native video renderer instead (see below). The native video renderer is often hardware-accelerated which is why video playback will still be smooth even in very high resolutions or with lots of frames per second. Note that the only video format supported by the inbuilt video renderer is the CDXL video format developed by Commodore in the early 90s. CDXL isn't very useful for today's video requirements, but the big advantage of the inbuilt video renderer is that it can load videos via Hollywood plugins. Installing video plugins can greatly enhance the functionality of the inbuilt video renderer and can enable Hollywood to play lots of different video formats.

  2. Native video renderer: This is only supported on Windows, macOS, and iOS. This renderer loads and plays videos through the operating system's video interface. On Windows video playback is done via Media Foundation and DirectShow whereas macOS and iOS use AV Foundation or QuickTime (on older systems). This renderer is not as flexible as the inbuilt video renderer. It doesn't support video layers and it also doesn't support video format loaders made available by Hollywood plugins. But it can be much faster because native video renderers are often hardware-accelerated. The number of video formats that can be played by the native video renderer is also limited. The best format to use with the native video renderer is MPEG4 because this is supported on all platforms except on very old macOS or Windows versions.

By default, Hollywood will first ask the inbuilt video renderer to open the video file. You can change this behaviour by using the Loader tag in your call to @VIDEO or OpenVideo(). See VIDEO for details.


Show TOC