Video

Video[file]

represents video stored in the given file.

Video[url]

represents video stored in the given URL.

Details and Options

  • Video[file] is a representation of a video file stored on the disk. The file may consist of multiple video, audio and subtitle tracks.
  • The reference file file can be specified as a string or as a File object, referring to a supported video file such as AVI, MP4, Ogg, QuickTime.
  • Video[Manipulate[]] exports a Manipulate object into a video file and constructs a Video object from it.
  • Supported video containers and decoders are listed in $VideoDecoders.
  • Video is treated as a raw object by functions like AtomQ and for purposes of pattern matching.
  • The following options can be specified:
  • AppearanceAutomaticappearance of the generated player
    AudioOutputDevice$DefaultAudioOutputDeviceaudio output device to use for playback
    ImageSizeAutomaticdisplay size of the video frames
    RasterSizeAutomaticdimensions of video frames
    SoundVolume1sound volume
  • Possible settings for Appearance are "Thumbnail", "Minimal" and "Basic".
  • Information for Video may include the following properties:
  • "Duration"duration of the longest track
    "FrameRate"frame rate for each video track
    "RasterSize"image dimensions to use for video tracks
    "ResourcePath"path to the audio file
    "SampleRate"sampling rate for each audio track

Examples

open allclose all

Basic Examples  (1)

Create a Video object linking to a local file:

Check that the created video is valid:

Get general information about the video:

Scope  (4)

Create a Video object from a file:

Create a video from a URL:

Create a video from a Manipulate:

Create a video from a Manipulate with some audio:

Options  (3)

Appearance  (1)

By default, a thumbnail appearance that opens the video in an external player is used:

Use the "Minimal" appearance that plays the video in the notebook:

Use the "Basic" appearance that provides some controls for playback position, track selection and more:

ImageSize  (1)

By default, an automatic display size is used:

Specify the display size:

RasterSize  (1)

By default, the video is at its full resolution:

Compare to the original frame dimensions:

Specify the pixel dimensions of each frame to be returned from the created video:

Video functions such as VideoExtractFrames respect the RasterSize setting:

Applications  (2)

Create a collage of video frames to show a summary of a video:

Analyze a video to find transitions from one scene to another:

Plot the result, showing times with significant scene change:

Properties & Relations  (3)

A valid Video expression is considered a raw object for pattern-matching purposes:

This does not apply to invalid expressions:

The video content is not actually stored in the Video expression:

By default, Import uses the "Video" element, which makes a Video object from a video file:

Introduced in 2020
 (12.1)