Video Contact Sheet *NIX
aka vcs

Projects index

Index

  1. Details
  2. Updates / WiP
  3. Description
  4. Default behaviour
  5. Documentation
  6. Samples
    1. A standard/simple sample (not yet written)
    2. A slightly more complex sample
    3. A complex sample
  7. Tips & tricks
    1. Manually setting width
  8. Known issues
    1. Unreproducible bugs
  9. TODO / Features of future versions
  10. ChangeLog

Details

Updates / WiP

2008-04-16: 1.0.12 released.

New version released, it fixes highlights, which were broken in the last version and a couple of long-standing cosmetic bugs.

Also now requires minimum length before using the "end offset" i.e.: will only ignore a bit off the end of the video if it's long enough, by default 19'30'' (the default value was chosen based on the fact that most series are at least 20' long, and since the automatic end offset is intended to skip credits, it's most useful with series and films). Your input is welcome as always.

To change the minimum length set the desired value to variable MIN_LENGTH_FOR_END_OFFSET in your configuration file, e.g.:
echo MIN_LENGTH_FOR_END_OFFSET=\'1h30m\' >> ~/.vcs.conf # for 1h 30'

I just noticed a bug while editing this page :/ and it's been there for quite awhile... great... whatever, most probably few people, if anyone suffered it, since it required a pretty specific timestamp format being used in the command-line.

Finally I've also re-added the black border after the highlights, which was removed a long time ago due to it breaking vcs back then.

See the changelog as usual for full details.

2008-04-08: 1.0.11 released.

New version released with a couple fixes and cosmetic touches.
Fixes include a workaround for cases in which mplayer outputted all-black (or all-equal) captures. Also slightly better support for older/tighter systems (e.g. Damn Small Linux).
Most notably in the cosmetic side is better thumbnail alignment in extended mode (-e), slightly less padded captures and drop of milliseconds when using mplayer (since they aren't meaningful at all).
See the changelog as usual for full details and credits.

I'm also providing a debian package now.

I was holding off a bit this release since there's still some known stuff to fix or refine but I'll rather publish now what I've since, well, who knows when will be the next release ;)

Important note: this version's support for highlights (-l) is broken, This version is deprecated for this reason, use the last version instead. I'll update ASAP but if you need them (does anyone use them anyway?) please use 1.0.10.

2007-11-08: 1.0.10 released.

New version released wth a bugfix and a couple new features: allow disabling timestamps and/or shadows. See the changelog below.

I've also published a bit of information on the future of VCS and comments would be very welcome (in short, most probably, I'll be rewriting it in a different language than bash).

Finally, I'm moving the documentation into a wiki and filling in a bit more, will be live soonish I hope.

previous updates

Description

This is a bash script meant to create video contact sheets (previews) of videos. Any video supported by mplayer and ffmpeg can be used.
A note of warning: Unlike most similar tools it, by default, makes screenshots the same size as the video, see below for details on how to change this.

Currently it's in beta status, it works quite well but has a handful of annoying quirks, I'll try to fix as much of it I can though.
Any contribution, suggestion or bug report is welcome.

Take a look at the documentation page (currently unfinished) and use the --help option to learn how to use it.

Notes

Default behaviour

By using configuration files and/or command line options the default behaviour can be tweaked to your needs, this are the defaults, followed by a link with the explanation on how to change it:

Documentation

Documentation can be found in a separate page, but you might also want to take a look at the tips in this page.

Samples

A standard/simple sample

TBA

A slightly more complex sample (720p)

For this sample I used the Heavy Rain PS3 techdemo, downloaded from GameSpot.

This video is 720p (1280x720) so a two column contact sheet would be very wide, I used one column with -c 1.
The video is shorter than the default interval (which is 3 mins), so I used a lower interval (1 minute) with -i 1m.
I also wanted the title screen and the ending credits to appear, so I located a second in which they're shown with a video player and added them with -S 1 -S 4m38. (This is second 1 and 4mins 38secs).

Command used:
$ vcs -E0 -S 2 -S 4m38 -i 1m 169_heavyrain_om_ps3_051906_hd.avi
-E0 is required in newer versions to produce the same output, command in 1.0.2b: $ vcs -S 2 -S 4m38 -i 1m 169_heavyrain_om_ps3_051906_hd.avi

Result: Slightly complex sample
(previous sample from version 1.0.2b).

A complex sample (1080p)

For this sample I used one of the nice videos of mariposaHD.

Problem #1: HD video: output would be huge
Workaround: use output height (-H)
Problem #2: Anamorphic WMV9 video
Workaround: Use -a to set the correct aspect ratio.
Problem #3: Problematic file/media player: It won't play upto the end (might be corrected in newer player versions)
Workaround: Set an ending time manually (with -t).

Command line used:
$ vcs -t 28m24 -n6 -a 16/9 -H 540 mariposaHD.S01E05.1080p.en.wmv
This was the commandline required before 1.0.4b: $ vcs -n7 --shoehorn="-s 960x540" -H 540 -t 30m mariposaHD.S01E05.1080p.en.wmv

Result: Complex sample
(previous sample from version 1.0.4b).

Tips & tricks

Manually setting width

This might not be obvious at first glance but you can set the width manually in a very simple way.

Although capture width cannot be set directly it can in an easy enough way:
Let's say you want your captures from a 640x480 source to be 1024x300, using -H300 would lead to captures being 400x300, you would need to do some numbers to adjust the aspect ratio to match the desired 1024x300 (that would be -a3.41 or -a256/75)... but you don't need to set a canonical aspect ratio, just remember aspect ratio is the same as width / height and you can simply use:
-H 300 -a 1024/300.
Yep, not as straightforward as an hypothetical -W 1024 would have been but, oh well :P

Known Issues

Remember this is a work in progress in beta stage.

Unreproducible bugs

Bugs that were reported but I cannot reproduce in my system. Any help would be appreciated, and any further reports might be really helpful. Pointed by Aleksandar Urošević.

TODO / Features of future versions

Done / Cancelled

ChangeLog

This is a selection of the changes, only listing those of some interest to end users. The full changelog is in a separate file (also gzipped).
Contributors are listed there too.

1.0.12 (Published April 16th 2008)

1.0.11 (Published April 8th 2008)

1.0.10 (Published November 8th 2007)

1.0.9a (Published June 10th 2007)

Bugfix release

1.0.8a (Published June 2nd 2007)

Bugfix release

1.0.7a (Published May 12th 2007)

An even more informal changelog with this release's highlights and samples of the new features is near the start of the page.

1.0.6b (Published Apr 21st 2007)

Bugfix release. Previous versions probably failed on non-debian derived systems.

1.0.5b (Published Apr 20th 2007)

1.0.4b (Published Apr 17th 2007)

1.0.3b (Published Apr 14th 2007)

1.0.2b (Published Apr 14th 2007)

1.0.1a (Published Apr 13th 2007)

1.0a (Published Apr 10th 2007)


© 2007, 2008 Toni Corvera <outlyer at gmail dot com>

All dates/times in this page are UTC.

Valid XHTML 1.0 Strict Valid CSS!