The LiVES Video Editor and VJ Tool Turns 1.0

LiVES is a video editing and VJ tool for Linux and BSD systems and today it celebrates its version 1.0 birthday. LiVES provides realtime video performance and non-linear editing for all classes of video editors and VJs (VJ is the Video equivalent of a DJ).

The LiVES project was started in 2002 by me, the author, and I continue to manage and enhance the project. At the time I had just bought a digital camera that was capable of taking short video clips of 10 seconds or so. Although I could play these clips perfectly well in mplayer, I was unable to find any editor on Linux which was capable of editing this format. So I thought - if I can play the clips, then I should be able to save the frames and edit them. I looked at the manpage for mplayer and noted that it could output multiple image files. From this the LiVES editor was born.

The other thing that was going on at the time, which is just as important today, was the beginning of DRM, and companies were attempting to lock down video and prevent people from copying and thus being able to edit clips. So I was interested in the new, open formats which were coming along as an alternative - today most people have heard of and even used ogg/theora. LiVES was one of the very first applications to support that format. True to the spirit of open source, the LiVES code does not contain any proprietary or patented codecs, although these can be added through external libraries.

There has never really been a roadmap for LiVES, it started as a personal program for me, and it's the only video editor or VJ tool that I've used. My first goal was to edit the small clips from my camera as I mentioned, and maybe to join 2 or 3 together and add some music. But as the program developed, as is always the case, there have been numerous "wouldn't that be interesting" ideas that have occured to me. One big one for me was being invited to the pixel workshops in Norway where I met for the first time with a group of other video developers. We planned a performance, and I realised it would be nice to perform with LiVES. So I spent a couple of days adding some realtime effects. At first these were built in to the main code, later they would be converted into plugins. The end result was I was able to give a pleasing perfomance with LiVES, and so were born the dual roles of LiVES: video editing and VJ tool. In fact what I realised was that VJs and video editors go through much the same processes, just that the timescales are different.

LiVES has grown enormously in popularity over this time, from one user in 2002 to now having an estimated 10,000+ downloads per month. There are still no official Ubuntu or Debian packages for it, however there are unofficial packages for most distributions of Linux and BSD. LiVES has also been translated into 13 languages, thanks to the work of a few dedicated individuals.

The aim of LiVES now is to be a high quality video editor and VJ tool, kind of an equivalent of Premier or Final Cut, mixed in with say Arkaos or Isadora. A lofty goal no doubt, but with the release of the 1.0 code, we already have a high quality product that is almost infinitely extendible, so we are well on the way to reaching that goal.

As I have mentioned, I have never used any other video editor, and this was deliberate because I did not want to be influenced by what was already in existence. I simply wanted to build the best tool for the jobs I had in mind. Through my work on LiVES, I also now work professionally as a video editor and VJ. If I need a feature, I have to build it into LiVES, so the software gets better, and my work gets easier - it's a virtuous cycle.

So, what features can you find currently in LiVES? LiVES can make use of a huge variety of video and audio sources, in fact any format which mplayer can handle can be imported into LiVES. However, using mplayer is now a fall-back, LiVES has its own decoders for ogg/theora and dv, which allow instant opening of video. Decoders for mpeg and dirac (a new free standard from the BBC) are planned.

You can import a limitless number of clips, and each of these clips can be edited independently in the clip editor. LiVES has two main interfaces, the clip editor and the multitrack window. In the clip editor you can cut and paste between clips, merge one clip with another and apply various effects. Audio and video can be trimmed and resampled, and clips can be resized and rotated. LiVES is frame and sample accurate.

clip-editor.jpg

The LiVES Clip Editor

From the clip editor you can encode any of the clips - there is a choice of over 50 different formats and quality levels. Encoding is done via the encoder plugins, which can be written in any language, and this means it is simple to expand and customise the encoding output.

For the VJ part, from the keyboard you can switch clips, adjust the playback speed and direction, and activate and deactivate effects, all in realtime. LiVES has a system which allows you to map the various realtime effects to different keys, and the mapping can be saved as your personal default. The range of effects includes filters, transitions which mix two clips into one, and generators. Effects are also made through plugins, and LiVES is compatible with frei0r (the author was one of the developers of livido, on which frei0r was based).

For more advanced video editing, LiVES has a multitrack window, where the various clips can be laid out and fine tuned. There is support here for one audio track per video track, plus a separate backing audio track, with automatic mixing and gain controls.

multitrack-window.png

The LiVES Multitrack Window

LiVES also has a full manual which was created specially for the 1.0 release, and is available via the LiVES website.

More advanced features of LiVES include the ability to control all elements of playback remotely via OSC, a MIDI and joystick learning interface to control LiVES, a batch processing utility, and a tool to help build new effect plugins. You can also record yourself in real time - great for quickly creating a music video.

Now that the 1.0 release has arrived, the project is interested in taking on more developers. More plugins are needed - encoders, decoders, effects, and video output. Core developers are now being actively sought instead of being asked to "wait for the 1.0 release" ! If anybody wants to get involved with the development of this exciting and growing project, please get in touch with the author!

Plans for the future include: subtitle support, effect masks, simplified task support, more plugins, instant opening for more file types, audio streaming, more audio effects, support for more "plugable" frame sources, such as gstreamer and MLT, an on screen display, and much more.

And of course, now that 1.0 is here, I might start looking at other video editors and VJ tools - with the aim of emulating what they do, only better!


Other free software projects that I am working on include:

  • videojack - an unofficial patch of the jack audio connection kit, patched to handle video. LiVES has support for this.
  • OMC - open media control - an attempt to devise a common remote command syntax for all multimedia applications
  • frei0r - a standardised, cross-platform set of video effect plugins. LiVES can use these via a wrapper plugin.
AttachmentSize
clip-editor.jpg31.92 KB
multitrack-window.png88.03 KB
______________________

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Hmm...some comments on this

David Nolen's picture

Hmm...some comments on this program so far from what I've seen.

I use a modern video camera. Specifically a Panasonic HDC-SD9. Records video onto an SDHC card in the AVCHD (H.264) format. This has become the defacto standard for most, if not all, consumer and prosumer video camera offerings to date.

I also record video for several hours at a time. This means that the video files are broken up into 4 GB chunks due to the insane use of the FAT32 filesystem for this standard (SDXC uses xFAT...go figure). This requires that the files be combined back together to be of any real use. tsMuxeR performs this task with no problems. However, that leaves us with a file that can be up to 32GB in size (larger if you have a camera that can use dual cards or just don't care about that sudden jarring shift where you combine the files from two different cards). Given this the frame size is going to be pushed to the max resolution and quality (Highest quality 1920 x 1080 one can get) this is an issue with this software.

Without the ability to just open this sort of file, the software attempts to decode it frame by frame. This drops a 1.2MB or higher (I've seen up to 3 MB) PNG into the temporary directory per frame. A 45 minute file of about 5GB can result in about 70,0000 frames. It takes about 5 minutes for 600 frames. You can do the math.

While functional it's not feasible to use this program in any meaningful capacity for modern video files unless I'm doing something horribly wrong. I would have to ask if there are any plans to address this situation?

such a short explanation

Anonymous's picture

such a short explanation about the project
and really interesting.
development...it grows and growz.
thanx

Looks like an impressive

Curious's picture

Looks like an impressive video editor.

Is this program used for the Linux Journal tech tip videos?

White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState