updates for version bump
[asdcplib.git] / README
diff --git a/README b/README
index 2885d7820cd5a2c78fbb4a2cedac6a8c0b027c1d..3684f70933497a12d581c385a84562b50c3310fa 100755 (executable)
--- a/README
+++ b/README
@@ -60,31 +60,26 @@ is simple AS-DCP support.
 
 Build Instructions
 
-GNU make is required to build asdcplib. The makefile will work
-on win32 systems that have Cygwin and MSVC. Other win32 gmake
-packages may or may not work depending upon the availability
-of standard POSIX shell commands. You will need gcc to rebuild
-the dep.make file.
-
-OpenSSL is also required. See http://www.openssl.org/
-
-If you are building on win32 or a unix with no OpenSSL library
-support, you will have to also obtain and build OpenSSL.  Unpack
-it into the same parent directory as asdcplib/, and rename (or make
-a symlink to) the directory as 'openssl':
-
-myhost$ ls -l
-total 1761
-drwxr-xr-x    1 jhurst   None         0 Feb  3 16:37 asdcplib
-drwxr-xr-x   56 jhurst   None         0 Feb  2 16:35 openssl
-
-Expat is optionally required for writing Timed Text Track Files. See
-http://expat.sourceforge.net/
-
-To build, type 'make'. There are several test targets but you
-need to assemble a set of test files to use them.
-
-I have tested this build on win32, Linux, OpenBSD and Darwin
+On more-or-less POSIX systems (OS X, Linux, and BSD), GNU make is
+required to build asdcplib. The same configure script will also
+build this package on Windows machines with Cygwin and
+MinGW installed. For those Windows users who would prefer to build
+this natively, an "nmake" build file and instructions can be found
+in the win32 subdirectory.
+
+OpenSSL is also required, version 0.9.8k is recommended. See 
+http://www.openssl.org/ for more information and download 
+instructions.
+
+Optional support for writing Timed Text Track Files is supported by
+either Xerces-C or Expat. See http://xerces.apache.org/xerces-c/ or
+http://expat.sourceforge.net/ for source and build instructions.
+
+To configure and build, type './configure' followed by 'make'. There
+are several test targets on the POSIX side, but you need to assemble
+a set of test files to use them.
+
+I have tested this build on win32, Linux, OpenBSD, and Darwin
 platforms. Others may work as well.
 
 
@@ -109,13 +104,152 @@ blackwave - Write a WAVE file full of zeros,  Used to make filler
 
 Documentation
 
-Currently, the API documentation is mostly in AS_DCP.h. Read
-that file for a detailed description of the library's capabilities.
-Read asdcp-test.cpp for library usage examples. The command-line
+The API documentation is mostly in AS_DCP.h. Read that file for
+a detailed description of the library's capabilities. Read
+asdcp-test.cpp for library usage examples. The command-line
 utilities all respond to -h.
 
 
 Change History
+
+2010.07.20 -  bug fixes, v1.6.37
+ o Fixed TimedTextResourceSubDescriptor UL value.
+
+
+2010.06.16 -  bug fixes, v1.6.36
+ o Added support for new Edit Rates to asdcp-test.cpp.
+ o Expanded timed-text file reader in asdcp-test.cpp.
+ o Fixed large BER value encoding (plaintext) and decoding
+   (plaintext and ciphertext). This feature was introduced in
+   v1.5.31).
+ o Fixed AvgBps value for multi-channel Wave input.
+
+
+2010.05.13 -  bug fixes, enhancements, v1.6.34
+ o ST 429-5 files have corrected ULs for DCTimedTextDescriptor and
+   GenericStream DataElement. Files made with previous versions of
+   the library are incompatible with this and future versions.
+ o Fixed File Package TrackNumber values. Thanks to Sankar.
+ o Added edit rate constants to AS_DCP.h (25, 30, 50, 60).
+ o Changed AudioDescriptor "SampelRate" element name to "EditRate"
+   to make it consistent with the other types.
+ o Now builds with XercesC 3.x.
+ o KM_memio.h has better const behavior.
+ o Fixed a bug in KM_memio.h string archiving.
+
+
+2010.01.05 -  bug fixes, enhancements, v1.5.32
+ o Re-fixed swapped Interop and SMPTE OP Atom UL values. The swap
+   introduced in v1.5.31 was done in error.
+ o Added -z,-Z options to asdcp-test (j2c parameter checking)
+ o Reformed jp2k-test as j2c-test, added help and list processing,
+   added to standard install target.
+
+
+2009.12.31 -  bug fixes, enhancements, v1.5.31
+ o Fixed swapped Interop and SMPTE OP Atom UL values.
+ o Added get_BER_length_for_value() subroutine.
+ o Modified ASDCP::h__Writer::WriteEKLVPacket() to allow larger BER
+   lengths for KLV packets larger than 16 MB. This was required to
+   support large font files in the SMPTE 429-5 implementation.
+
+
+2009.11.06 - bug fixes, enhancements, v1.5.29
+ o Fixed a bug that could cause HMAC values to be incorrectly
+   stored in MXF files.  Files created with versions of asdcplib
+   prior to this version may have incorrect HMAC values. 
+ o Improved handing of XML files for MXF wrapping.  
+ o Jpeg2000 codestream EditRate and SampleRate mismatches
+   now warns instead of returning an error. 
+ o Improved error handling in Jpeg2000 sequence parsing routines.  
+ o Added two methods to Kumu::Timestamp, AddSeconds(), to add (or
+   subtract) seconds to a time value, and GetSecondsSinceEpoch()
+   to get the number of seconds since the unix epoch.
+ o Added new option to asdcp-test, '-a', to specify a UUID when
+   creating MXF files.
+ o Added support for specifying the intrinsic duration of MXF files
+   containing timed text.
+ o Added new option to wavesplit, '-i', to display WAV file metadata.
+
+
+2009.05.21 - bug fixes, v.1.4.24
+ o Fixed a bug that caused incorrect SubDescriptors UL values to be 
+   written into interop format MXF track files.  Note that this involved
+   a substantial reorganization of MXF internals.  Please test thoroughly
+   in your application before using in production.  Note that this is a 
+   significant bug fix and track files created with 1.4.22 may be incompatible
+   with other systems.  
+
+
+2009.04.09 - SMPTE format fixes, enhancements and bug fixes, v.1.4.22
+ o asdcplib now uses GNU autotools on POSIX systems to configure 
+   and build.  See "./configure" for details.  Note that two options, 
+   --enable-freedist and --with-python are not enabled in the free
+   version of asdcplib and should not be used.  
+ o Added build option (CONFIG_RANDOM_UUID) to enable mixed case UUID
+   generation when environment variable KM_USE_RANDOM_UUID is defined.
+ o Fixed a condition that could cause an error to occur when wrapping 
+   SMPTE format timed text track files that do not define a starting 
+   frame.
+ o Updated ULs for SMPTE format track files.
+ o SampleRate added to JP2K metadata
+ o Support for wrapping 96kHz WAV files added.
+ o Updated ULs for audio channel formats  (ChannelFormat)  
+ o Updated font subdescriptor MIME Types for TimedText Trackfiles.
+ o Changed time implementation to support dates beyond Jan 19th, 2038.
+ o Xerces-C XML parser support added.  
+ o New build method for Windows (see win32/README.txt for details).
+ o Added new functionality in Kumu to recursively create and delete files 
+   and directories, and get free disk space for a given volume path.
+ o Added a method to Kumu::Timestamp, AddMinutes(), to add (or subtract) 
+   minutes to a time value.  
+ o Improved how Kumu::Timestamp parses timestamps with offsets. 
+ o Fixed a bug that caused incorrect HMAC values to be calculated.
+
+
+2008.02.16 - SMPTE format fixes, bug fixes v.1.3.18
+ o Added correct SMPTE UL for StereoscopicPictureSubDescriptor.
+ o Exposed JP2K metadata parser as ParseMetadataIntoDesc().
+ o Added simple stereoscopic framebuffer to support paired ReadFrame()
+   and WriteFrame() methods (allows simpler integration with other
+   single-buffer code).
+ o Improved detection of JPEG Interop stereoscopic files.
+ o Win32 build fixes (Thanks to Mike Crowe at DTS).
+ o Added the WITH_MD macro to the makefile. Set this value to one
+   to build Win32 with /MD[d] instead of /MT[d].
+ o The Generic Container UL has been added to the EssenceContainers
+   set in the header partition pack for encrypted files. It has always
+   been there in plaintext files.
+ - Below this point the changes are internal and should not affect you
+   unless you use Kumu directly.
+ o Major refactoring of KM_log.[h|cpp].
+ o Fixed buffer re-sizing issue in Kumu::ByteString.
+ o Replaced type IdentifierList with ArchivableList.
+ o Added COPYING file to the release bundle.
+
+
+2007.12.13 - Bug fixes v.1.2.17
+ o Changed Result_t implementation to use int instead of long, which
+   was causing trouble on some 64 bit platforms.
+ o Fixed EKLV HMAC. NOTE: Breaks backward compatibility with older
+   Interop files. To validate these files, use asdcplib-1.1.14. This
+   should not cause too much trouble since files with broken and
+   non-broken HMAC have been in the wild for years without issue.
+ o Fixed HMAC sequence numbering in encrypted stereoscopic files.
+ o Finished stereoscopic test targets in the makefile.
+ o Fixed the win32 build, now expects VS2005 compiler by default,
+   use WITH_VC6=1 top get VC6 flags.
+ o Stereoscopic and Timed Text modes now have SMPTE UL values.
+   NOTE: SMPTE 429-5 and 429-10 are not yet published. It is possible
+   that these UL values may change before publication. Please use
+   caution when using these features for production work.
+ o Changed a bunch of symbol names in the 429-5 implementation to
+   better match the spec.
+ o Added -U option to asdcp-test to dump the UL library to stdout.
+ o Fixed erroneous placement of the PictureEssenceCoding UL in JP2K
+   files (Interop and SMPTE modes).
+
+
 2007.10.22 - Timed Text, Stereoscopic Picture and Bug fixes v.1.2.16
  o Significant API changes have been made. Please read all entries
    in this changelog to be sure you understand the changes. Also