The Switchblade Video Encoder has been updated to 3.1. It is nearly 3 times as fast as 3.0 and quality has improved too. It also now includes a front-end written in Visual Basic so it's noticeably easier to use, and an MPEG-1 video converter for Linux users.
NB: The author has developed the front-end using (supposedly) a beta version of Visual Basic 2005. Hence, you will need to install Microsoft .NET Framework 2 Beta 1 before you can use it.
SwitchBlade 3.1 DropROQ - GUI-based encoder. You can still set options via the command-line though. roqcmd - Command-line version of DropROQ. roqmux - Utility for merging audio into RoQs. roqplay - Not here any more. ONLY AVIFILE-COMPATIBLE CODECS WILL BE ACCEPTED BY THE UTILITIES. VIDEOS ENCODED WITH DIRECTSHOW-ONLY CODECS WILL FAIL, PERIOD. DivX and Indeo Video are both AVIFile-compatible codecs. By the way, default settings are 16.7:1 compression on keyframes, 50:1 compression on every other frame, and a keyframe every 120 frames, a.k.a. 4 seconds. Unix/Linux users, I did not include a makefile, but I have created a rudimentary mpeg2roq converter. You must demux videos before you can encode them with it, so use something like MPGTX to do that. It's the best I could do given how insanely difficult it was to find a decent MPEG decoder library. You can also use -stdout and -nevercache to send all output to stdout. Sorry, input from stdin is NOT supported. DropROQ is pretty self-explanitory. Run it from the command-line for full customization, or just drop a file on it to compress it in one go. It produces 2 files with 2 extensions: One with .RoQ, which is the resulting video, and one with .cbc, which is the codebook cache, a file used to accelerate future encodes of the same video. If you change the video, then you should delete the .cbc file. If you run with the -nomux option, then the .RoQ file will be video-only, and a .wav file will be outputted as well. You can combine the two with the ROQMUX program. RoQ videos are split into two frame types, which I'll refer to as I frames and P frames since MPEG uses those terms as well. I frames are independent, and contain only image data. Since image data is far less efficient than motion and skip coding, you should allocate a significantly higher amount of data to them. P frames are previous-referencing frames, and use the previous 2 frames to optimize itself. P frames use motion searching and skip testing to minimize their size, and are far more efficient. You can set the I/P frame size relative to the real size by using a number representing a fraction over 10000, or manually set the bit rates. Bit limits are PER-FRAME, not per second!! Framerates are always 30fps, a limitation of the RoQ format, so just divide your desired BPS by 30 for per-frame limits. Unlike SwitchBlade2, version 3 is VERY good with meeting the target bitrate, will never exceed it (unless it has no choice), and will generally come within 1% of the target bitrate. Audio is compressed with 2:1 lossy compression, with 240 bytes per second added on for markers. This CAN NOT BE CHANGED, so be sure to adjust your bitrates accordingly. avi2roq encodes audio AFTER it encodes all video. The reason for this is that RoQ tends to be very picky about sound timing and reading multiple streams from an AVI file at once is a pain in the ass. So instead, avi2roq will automatically dump the sound track of the AVI file to a WAV file when it finishes encoding the video, then will multiplex the two files together. You can prevent multiplexing by using the -nomux command-line option. If you want to multiplex later, use the roqmux utility. Version 3.1 and later use NeuQuant, which nearly triples the speed of encodes while actually IMPROVING quality. You can use the old STDVQ generator by using -stdvq at the command-line, but I really don't know why you would do that. It's still pretty slow.
There are no comments yet. Be the first!