XJADEO(1)

NAME
xjadeo - display a video-clip in sync with an external time source

SYNOPSIS

xjadeo [-aAbcCDhIkKlLnNPqQRsStvV] [-d <midi-driver>] [-f <fps>] [-F <fps>] [-i <int>] [-m <midi-port>] [-M <num>] [-o <frames|SMPTE>] [-O <osc-port>] [-W <rpc-id>] [-x <dpy-mode>] <videofile>

xjadeo -R [options] [<videofile>]

xjadeo -Q [options] [<videofile>]

DESCRIPTION

Xjadeo is a software video player that displays a video-clip in sync with an external time source (MTC, LTC, JACK-transport).

It has applications in soundtrack composition, video monitoring or any task that requires synchronizing movie frames with audio events.

Xjadeo supports different video file formats, video output libraries and sync sources.

OPTIONS

-a, --ontop
    Start Xjadeo 'always-on-top' of other windows (this option requires support from your window manager).

-A, --avverbose
    Enable verbose ffmpeg messages (format/codec debugging).

-b, --letterbox
    Retain aspect ratio and draw a letterbox around the video-frame if necessary.

-c, --no-midiclk
    Do not use MIDI quarter-frames for more exact sync.

-c, --midiclk
    Use MIDI quarter-frame timing for more exact sync (this is enabled by default since version 0.4.11).

-d <midi-driver>, --midi-driver <midi-driver>
    Choose MIDI back-end to use. <midi-driver> can be either one of "JACK", "ALSA" or "portmidi" - depending on the operating-System and compile-time configuration.

-D, --debug, --debug
    Enable debug mode. Print development related information.

-f <n>, --fps <n>
    Desired refresh-rate of the video display in frames per second. Non-integer values are possible. Default: -1.

    If this value is set to zero (or less), Xjadeo will use the FPS of the video-file as its screen update frequency.

-F <n>, --filefps <n>
    Override the (auto-detected) frame-rate of the video-file.

-h, --help
    Prints usage help and exits.

-i <n>, --info <n>
    Displays information using the OSD (on-screen display.)

    0
        Off.

    1
        Frame number.

    2
        SMPTE time code.

    3
        Both frame number and SMPTE.

    The remote control interface allows more complete control over the OSD.

-I, --ignorefileoffset
    This option is only useful for video files with a start-offset, such as split vob files. Per default Xjadeo will honor offsets specified in the video-file header and the file's PTS/DTS. -I allows you to override and subtract this offset and makes the file start at SMPTE position 00:00:00:00 (although you can archive the same result, this option is not related to -o.)

-k, --keyframes
    Instructs the internal algorithm to seek only to key-frames. This option may improve the performance for certain video encodings.

    The default behavior (without -k and -K arguments) is to search any ANY frame.

-K, --continuous
    Decode video frame by frame starting from previous key-frame. This particularly useful for reading files where not every frame is a key-frame at the cost of increased CPU usage. Note that this option adds some extra latency when seeking. Combine it with -f -1: it makes sense to set Xjadeo's screen-update frequency to match the frame-rate of the video file.

-l, --ltc
    Use LTC as sync-source instead of JACK-transport.

-L, --nolash
    Disable LASH support.

-m <midi-port>, --midi <midi-port>
    Get sync from MTC (MIDI Time Code) instead of JACK or LTC.

    If using JACK-MIDI driver, <midi-port> is the JACK-MIDI port to use as input - use an empty value ("") to not auto-connect

    If using ALSA MIDI back-end, <midi-port> is the ALSA sequencer-id to be used as the MTC source. A value of -1 will leave Xjadeo unconnected.

    If using portmidi, <port> is the port-number of the MIDI input device to use. The value -1 will attempt auto-connect. Use -v -m -1 to list MIDI ports during auto-detection.

-M <n>, --midifps <n>
    Conversion between MTC SMPTE and frame number.

    0 (default)
        Use MTC clock frame rate.

    1
        Use video-file's frame-rate.

    1
        Resample video frame rate / MTC.

-n, --nodropframes
    Prevent Xjadeo from detecting drop-frame-timecode (usually files with 29.97 fps)

-N, --dropframes
    Force Xjadeo to use drop-frame-timecode (drop-frame-timecode is only valid for files with 29.97 fps but your milage may vary)

-o <n>, --offset <n>
    Offset the video playback a certain number of (video) frames relative to the sync master time base. Admits negative values. <n> can be specified either as integer frame-number or SMPTE text.

-P, --genpts
    This option passed on to ffmpeg and has no effect on older versions of libavformat.

    it can be used to generate "presentation time stamps" if they are missing in the file, even if it requires parsing future frames.

-q, --quiet, --silent
    Suppresses normal output messages.

-Q, --mq
    Enable POSIX message queues. Set up a communication channel for use with xjremote(1). See the the section called “Remote Control Interface” in the online documentation for more information.

-R, --remote
    Enable interactive (stdin/stdout) remote control mode. Options --quiet and --verbose have no effect in remote mode.

-s, --fullscreen
    Start Xjadeo in full-screen mode.

-S, --nosplash
    Skip the on-screen-display startup sequence.

-t, --try-codec
    Check if the video file is encoded in a format suitable for use with Xjadeo and exit. If the video format is not supported the exit code is 1.

-v, --verbose
    Print additional information.

-V, --version
    Display version and compile-time configuration information and exit.

-W <rpc-id>, --ipc <rpc-id>
    Set-up IPC message queues for xjremote. <rpc-id> specifies a file-path used to identify the message-queue.

-x <dpy-mode>, --vo <dpy-mode>, --videomode <dpy-mode>
    Selects the video output driver. Defaults to 0 (auto-detect). A value of -1 lists the available modes and exits.

SYNC SOURCES

xjadeo currently supports the following synchronization sources:

    • JACK-transport.

    • LTC (Linear/Longitudinal Time Code) - via JACK audio.

    • MTC (MIDI Time Code) via JACK-MIDI.

    • MTC (MIDI Time Code) via ALSA sequencer.

    • MTC (MIDI Time Code) via portmidi.

    • remote-ctrl manual seeks (not really a sync source).

VIDEO FORMATS

Xjadeo uses ffmpeg to decode video files, so a wide range of formats and codecs are supported. Note, however, that not all the formats support seeking. To transcode a video-file into a suitable format we recommend:

    mencoder -idx -ovc lavc -lavcopts keyint=1 -nosound input_file.xxx -o output_file.avi

This creates from your input-file.xxx an AVI mpeg4 encoded video file with no sound, an index (-idx) and no compression between frames (every frame is a keyframe). The file thus can become really BIG, so watch your disk space!

You may want also to shrink the size of the file's video frames by scaling down its geometry. This uses fewer system resources while decoding and displaying it and leaves more space in the screen for your audio software.

    -vf scale=width:height

    Important

    Also note Xjadeo's -K option which allows to seek to frames other than key-frames and enables Xjadeo to play back any file without transcoding it. It comes at the expense of increased CPU usage and possibly increased seek latency. The latter depends on the key-frame interval and video-codec.

    The same can be achieved by adding seek=continuously to ~/.xjadeorc.

USER INPUT

xjadeo window accepts the following input:

    • Pressing mouse button 1 will resize the window to the original movie size.

    • Mouse button 2 and 3 resize the window to match the movie aspect ratio.

    • Scroll Wheel (buttons 4,5) stepwise decreases/increases the window size maintaining the original aspect ratio.

    • Xjadeo ≥ v0.3.8 supports keyboard events. Pressing Esc and q will end the program. f toggles full-screen, a togglesalways-on-top. Press m to hide mouse cursor. v, s, o, C and b control on-screen-display and l toggles the letter-box mode. The time-offset can be modified with +, -, {, } and window-size with <, >, ,, .. SPACE and BACKSPACE can be used to control JACK-transport. See the section called “Monitor Window - Key bindings” in the online documentation for a complete list.

REMOTE MODE

When started in remote mode (option -R or --remote) Xjadeo will interactively accept commands and issue responses through its standard input/output mechanism.

Use the remote command help to get a quick overview of all available commands. Please refer to the online documentation for a complete description of the remote commands.

xjadeo -Q enables remote control by message-queues; use xjremote to connect.

FILES

Xjadeo reads the following resource configuration files in this order:

    1. /@SYSCONFDIR@/xjadeorc (usually /etc/xjadeorc or /usr/local/etc/xjadeorc, which depends on your distribution and on the configuration when building xjadeo)

    2. $HOME/.xjadeorc

    3. ./xjadeorc

Each line in the configuration file must be in in the format:

    KEY=VALUE

If the first character on a line is either # or ; the line is ignored. KEYS are not case sensitive. Some VALUES are case sensitive (e.g. filenames) and are parsed identical to the corresponding command-line arguments (e.g. -x SDL is equivalent to the config-file option videomode=SDL). Boolean values are specified as yes or no (e.g. quiet=yes).

currently supported RC-KEYS: fps, fontfile, lash, letterbox, midiclk, mididriver, midiid, midismpte, mq, nosplash, quiet, seek, verbose and videomode. Which are documented in the example xjadeorc[1]

ENVIRONMENT

JACK_DEFAULT_SERVER
    Set the jack-server-name to connect to (used by JACK-transport, JACK-MIDI and LTC)

SEE ALSO

qjadeo(1)

xjremote(1)

xjinfo(1)

online-manual[2]

AUTHORS

Robin Gareus <robin@gareus.org>
    linuxaudio.org

Luis Garrido <luisgarrido@users.sourceforge.net>
    luisgarrido.users.sourceforge.net

COPYRIGHT
Copyright © 2005, 2006, 2007, 2009, 2010, 2011 Robin Gareus, Luis Garrido

NOTES

1.  xjadeorc
    http://xjadeo.git.sourceforge.net/git/gitweb.cgi?p=xjadeo/xjadeo;a=blob_plain;f=doc/xjadeorc

2.  online-manual
    http://xjadeo.sourceforge.net/