oops
[asdcplib.git] / README
diff --git a/README b/README
index 6b248f041e98ddad5db62204484e5424d5a61786..3d91c8845432c3dd5f13f37e596641775cffdd75 100755 (executable)
--- a/README
+++ b/README
@@ -7,22 +7,20 @@ picture track file formats proposed by the SMPTE working
 group DC-28.20.
 
 This work was originally funded by Digital Cinema
 group DC-28.20.
 
 This work was originally funded by Digital Cinema
-Initiatives, LLC. Subsequent efforts have been funded by
-Deluxe Laboratories, Doremi Labs, and others.
+Initiatives, LLC (DCI). Subsequent efforts have been funded
+by Deluxe Laboratories, Doremi Labs, CineCert, LLC, Avica
+Technology and others.
 
 
-**The asdcplib project is housed on SourceForge. The project
-home page is at http://sourceforge.net/projects/asdcplib.
-There is not much there other than CVS because I don't
-really have the time to master SourceForge administration.
-Feel free to email with questions or to request a tar file.
+**The asdcplib project was housed on SourceForge. The project
+will be moving to a new home, to be announced here soon.
 
 
-The project used to depend upon the mxflib project. Because
-of the focus on covering the whole of the MXF spscifications,
+The project formerly depended upon the mxflib project. Because
+of its focus on covering the whole of the MXF specifications,
 mxflib is considerably larger and more complex that what I
 require for this application. For this reason I have created
 mxflib is considerably larger and more complex that what I
 require for this application. For this reason I have created
-a dedicated MXF interface that is now part of this library.
-Special thanks to Matt Beard and Oliver Morgan for their great
-work and support.
+a dedicated MXF implementation that is now part of this
+library. Special thanks to Matt Beard and Oliver Morgan for
+their great work and support.
 
 Thanks also to the members of the SMPTE DC-28.20 packaging
 ad-hoc group and the members of the MXF Interop Initiative
 
 Thanks also to the members of the SMPTE DC-28.20 packaging
 ad-hoc group and the members of the MXF Interop Initiative
@@ -55,7 +53,9 @@ objects which provide those services.
 AS_DCP.h contains the entire API.  You do not need to read
 any of the other files, except maybe asdcp-test.cpp which
 contains detailed usage examples of each of the API's
 AS_DCP.h contains the entire API.  You do not need to read
 any of the other files, except maybe asdcp-test.cpp which
 contains detailed usage examples of each of the API's
-services.
+services. The KM_* files may be of interest for general
+development support, but may be ignored if all you want
+is simple AS-DCP support.
 
 
 Build Instructions
 
 
 Build Instructions
@@ -66,8 +66,7 @@ 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.
 
 of standard POSIX shell commands. You will need gcc to rebuild
 the dep.make file.
 
-OpenSSL is required if you want to read and write encrypted
-AS-DCP files. See http://www.openssl.org
+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 (I'm
 
 If you are building on win32 or a unix with no OpenSSL library
 support, you will have to also obtain and build OpenSSL (I'm
@@ -84,24 +83,19 @@ I have tested this build on win32, Linux and Darwin platforms.
 Others may work as well.
 
 
 Others may work as well.
 
 
-Build Versions
+Utilities
 
 
-There are two flavors of build: the default build and the
-"SMPTE_LABELS" build. Unless you are specifically  working on
-emerging SMPTE standards for D-Cinema content, you will certainly
-want the default build. If you are developing support for the MXF
-Interop Initiative standards, the default build is for you!
+asdcp-test - Writes, reads and verifies AS-DCP (MXF) track files.
 
 
-If you are not aiming for MXF Interop and if you are working
-on developing support for the very latest versions of the SMPTE
-draft standards, then you want the SMPTE_LABELS build:
+asdcp-lf-test - Writes and verifies large files using a platform-
+independent format. Use it to test issues related to large files.
 
 
-  make SMPTE_LABELS=1
+wavesplit - Splits a WAVE file into two or more output files. Used
+  to untangle incorrectly-paired DCDM sound files.
 
 
-NOTE: If you choose the SMPTE_LABELS build, you will be creating
-files that may not work on MXF Interop systems. In the case of
-encryption, incompatibility with MXF Interop is guaranteed! You
-have been warned!
+blackwave - Write a WAVE file full of zeros,  Used to make filler
+  tracks (though you would be better off modifying asdcp-test if
+  this is a common use case).
 
 
 Documentation
 
 
 Documentation
@@ -113,8 +107,53 @@ examples. More detailed documentation will be written RSN.
 
 
 Change History
 
 
 Change History
-2006.01.04 - full read-write
+2006.04.05 - Bug fixes and new stuff
+ o Fixed a bug in the MPEG parser that caused it to fail when
+   handling start codes spanning buffer boundaries
+ o Added wavesplit and blackwave utility programs
+ o Added support for revised SMPTE HMAC key derivation when
+   using LS_MXF_SMPTE
+ o Refactored platform compatibility and general utilities
+   into a new sub-library "Kumu". There are no new build
+   steps or dependencies, but some important things have
+   changed:
+   + Result_t is no longer an enum, it is now a class.
+     Library result codes are now declared as const objects
+     like this:
+
+     const Kumu::Result_t RESULT_FORMAT (-101, "The file...");
+
+     The macros ASDCP_SUCCESS and ASDCP_FAILURE still work
+     the same thanks to an operator overload for long. See
+     KM_error.h for more information.
+   + The logging interface has been moved out of AS_DCP.h
+     and into KM_log.h
+ o Some of the command line utilities that were using headers
+   other than AS_DCP.h have been changed to us the Kumu
+   equivalents. If you have code based on those utilities, you
+   will have to update by hand.
+ o Added new types to the EssenceType_t enum.
+ o The guard macro for Win32 code has changed from WIN32 to
+   KM_WIN32.
+
+
+2006.03.2x - new stuff
+ o Proper handling of stream-id byte of essence UL values
+ o writes 3-partition files, reads 2-part or 3-part
+
+
+2006.03.16 - bug fixes plus
+ o Removed SMPTE_LABELS compile-time option. The reader will now
+   silently accept either SMPTE or MXF Interop labels, the writer
+   can be instructed which to use at runtime. Default is Interop.
+ o Added an AIFF reader. Support is preliminary, it works with the
+   AIFF files I have on hand.
+ o More code refactoring. More to come.
+
+
+2006.03.09 - full read-write
  o Removed ASDCP_WITHOUT_OPENSSL compile-time option.
  o Removed ASDCP_WITHOUT_OPENSSL compile-time option.
+ o Full read/write now working on new MXF library
 
 
 2005.00.00 - A New Hope
 
 
 2005.00.00 - A New Hope