Vooya YUV/RGB Player - Usage Guide

Quick Start

Drag & Drop is supported, or use CTRL-O to open a file. Unless you have to specify the format due to improper file naming, hit Space to start playback. Common shortcuts like LEFT, RIGHT, PageUp, PageDown, Pos1/Home, End work as expected. Press F11 to toggle full screen mode, and N to step through color channels. Resize the window as you like with the mouse, or use +/-. Toggle a timecode overlay with T. You can always alter the format (color space, width, height etc.) with CTRL-F.

You can draw with the right mouse button, enable the Magnifier with the middle mouse button, and drop a bitmap to wherever you like (a skype chat for instance) with the left mouse button. You can also hit CTRL-C to copy a frame as bitmap, or SHIFT-CTRL-S to save it. Clear a drawing with double click or DEL, enable advanced deinterlacing wit I.

If you drag two files onto a vooya window, you will see the difference. More files will open more player instances.

Command Line Usage

The basic syntax is

vooya [options] path/to/my/file_720x480.yuv

Currently, the following options are supported:

  • -p, --play Start playing automatically
  • -l, --link <<file name>> Link this player to another one playing the file specified. File path must be absolute if directories are not equal.
  • -d, --diff <<file name>> Show difference and MSE/PSNR between the input file and the file specified.

Menu Options

File

Open File(s)... You can load multiple files at once, opening multiple player instances. As a special case, if you open two files at once, the difference mode will be enabled. Note that you can also simply drag files over the playing area and drop them there with the same results.

Next/Prev File play next or previous file in the current directory.

Reload File Reload the file and update the frame count. The current seeking position is maintained if possible.

Close File Closes the current file and displays the startup panel.

Format shows the format dialog.

Copy Frame copies the current frame (including timestamp overlays and drawing annotations) to the clipboard. Note that you can also drag a frame with the mouse off the display into a folder or something that accepts bitmap clipboard data.

Save Frame Save a frame as image (PNG, JPG or BMP) to a user-specified folder.

On the bottom of the file menu, a list of recently used sequences should be displayed.

Control

Should be pretty self-explanatory, except for the Sync dialog (look at Synchronization to read about coupling several players). And the Goto-dialog lets you pick a frame to seek to.

View

Most of the player's features are available here.

Size Display the video at greater or smaller size. Using "+" and "-", you can also do this with keyboard shortcuts, or even resize the window with the mouse, as usual.

Maintain Aspect Ratio Upon resizing the window, the video can be set to maintain its actual aspect ratio.

Fullscreen As it tells, enables fullscreen mode. Use F11 to activate and deactivate, or double-click in the full screen window.

Deinterlace Turn on deinterlacing. The frame rate is halved.

Difference Against... Turn on diff mode. A file dialog will pop up and let you choose the second reference file. It is assumed that this file has exactly the same format settings as the current one. On the bottom panel, PSNR and MSE values per color channel are displayed.

Time Code Display a time code on the bottom left corner of every frame. This includes the frame number and the current time stamp based on the FPS given in the format dialog, in the format mm'ss''ms.

Next Component Cycle through the color channels. The order of channels depends on the current color format.

Clear Drawing lets you clear all mouse drawings on the display. Note that you can draw with the right mouse button.

Enable Magnifier Show a magnifying rectangle around the pointer, showing the current position and the respective values of all color channels.

Video Formats

Vooya supports the follwoing formats:

  • UYVY, YUY2, YUYV (interleaved 4:2:2 YUV formats)
  • P420. P422, P444 (4:2:0, 4:2:2, 4:4:4 planar formats in YUV)
  • RGB24, RGB32, RGB48 (interleaved 4:4:4 RGB, I444 in file names)
  • BGR24, BGR32, BGR48 (interleaved 4:4:4 RGB)
  • BW (Gray only)
Aside from interleaved YUV formats, also 16bit data is supported. Note that the exact bit depth can be configured in the format dialog. Vooya supports skipping header bytes at the beginning of a file - thus it is even possible to read e.g. bitmap files.
Videos can be marked flipped, indicating that they should be played upside-down.

File Names

To avoid entering formats every time, it is convenient to name raw data files appropriately. A file name Vooya can handle should at least contain the video's resolution, e.g.
     myfile_720x480.yuv                         hisfile_1920x1080.rgb

More generically, a valid file name looks like

youNameIt_WIDTHxHEIGHT[_FPS[Hz|fps]][_BITSbit][_(P420|P422|P444|UYVY|YUY2|YUYV|I444)].[rgb|yuv|bw|rgba|bgr|bgra]

Fallback is P420, 8bit YUV. Some examples:

  • foo_720x480_25Hz_8bit_P420.yuv
  • foo_720x480_16bit_P422.yuv
  • foo_720x480_25Hz_YUY2.yuv
  • foo_720x480_25Hz_I444.bgr
  • foo_720x480_29.97Hz.rgba
  • foo.vix
Kakadu's '.vix' files are essentially planar YUV files cat'd to a text file like 

vix
>VIDEO<
25.000000 055
>COLOUR<
YCbCr
>IMAGE<
unsigned char 8 little-endian
1280 720 3
1 1
2 2
2 2

with frame rate and count in a >VIDEO< section, and resolution, color channel count and x/y chroma subsampling in an image header. There was also a version for RGB data, but I don't remember how that one worked - presumably similar.

Since Rev 482, also YUVPlayer Deluxe ".hdr"-files can be read. These are plain text files residing in the same directory as their corresponding raw data video file and have the same name, except for the suffix, which is '.hdr'. The content of an example hdr-file is given below:

width = 832; width of a video frame, in pixels
height = 480; height of a video frame, in pixels
framerate = 50; frames per second
format = "YUV444"; pixel format
offset = 0; file header bytes to be skipped
interlaced = true; bit depth as per channel 
anamorph = false; use anamorphic pixel stretch
flipped = true; flip upside-down

supported color formats for '.hdr' files are

  • YUV420, YUV422, YUV444, YUV410, YUV411
  • UYVY, YUYV, YUY2
  • Y
  • RGB24, RGB32, BGR24, BGR32

File associations

For politeness, no file associations are set during install. Instead, you might want to do that yourself by selecting "Open With ..." on the respective file type and check that this will happen always then.

 

Synchronization

Synchronization of multiple YUV / RGB players on Window 7Vooya has the capability to couple several players and to play and seek in a synchronized manner. To do so, just go to Control→Sync and the synchronization dialog shows up. If you have multiple instances of Vooya open, each one will be listed with a number in the dialog, while all other players shall display a huge green number on their display port. Check the one(s) you would like to link to and hit OK. The players are now linked and start/stop/pause alltogether. Also synchronized seeking should work flawlessly.