README
1 open-vcdiff is an encoder and decoder for the VCDIFF format, as described in
2 RFC 3284 : The VCDIFF Generic Differencing and Compression Data Format
3 (http://www.ietf.org/rfc/rfc3284.txt)
4 A library with a simple API is included, as well as a command-line executable
5 that can apply the encoder and decoder to source, target, and delta files.
6 For further details, please refer to:
7 http://code.google.com/p/open-vcdiff/wiki/HowToUseOpenVcdiff
8
9 See INSTALL for (generic) installation instructions for C++: basically
10 ./configure && make && make install
11
12 This should compile the unit tests as well as "vcdiff", a simple command-line
13 utility to run the encoder and decoder. Typical usage of vcdiff is as follows
14 (the "<" and ">" are file redirect operations, not optional arguments):
15 vcdiff encode -dictionary file.dict < target_file > delta_file
16 vcdiff decode -dictionary file.dict < delta_file > target_file
17 To see the command-line syntax of vcdiff, use "vcdiff --help" or just "vcdiff".
18
19 To call the encoder from C++ code, assuming that dictionary, target, and delta
20 are all std::string objects:
21 #include <google/vcencoder.h> // Read this file for interface details
22 [...]
23 open_vcdiff::VCDiffEncoder encoder(dictionary.data(), dictionary.size());
24 encoder.SetFormatFlags(open_vcdiff::VCD_FORMAT_INTERLEAVED);
25 encoder.Encode(target.data(), target.size(), &delta);
26
27 Calling the decoder is just as simple:
28 #include <google/vcdecoder.h> // Read this file for interface details
29 [...]
30 open_vcdiff::VCDiffDecoder decoder;
31 decoder.Decode(dictionary.data(), dictionary.size(), delta, &target);
32
33 When using the encoder, the C++ application must be linked with the library
34 options -lvcdcom and -lvcdenc; when using the decoder, it must be linked with
35 -lvcdcom and -lvcddec.
36
37 To verify that the package works on your system, especially after making
38 modifications to the source code, please run the unit tests using
39 make check
40
41 For further details, please refer to:
42 http://code.google.com/p/open-vcdiff/wiki/HowToUseOpenVcdiff
43
44