From c5b3d91fab31fde4c21e1cc5bb5adb1d6d26fcca Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Tue, 3 Jun 2014 14:30:42 +0100 Subject: Include audio mapping in the digest used to distinguish different audio analyses so that the analyses are re-computed when the mapping changes. Reported-by: Matthias Damm --- src/lib/audio_mapping.cc | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/lib/audio_mapping.cc') diff --git a/src/lib/audio_mapping.cc b/src/lib/audio_mapping.cc index b1810c973..e35c1ae94 100644 --- a/src/lib/audio_mapping.cc +++ b/src/lib/audio_mapping.cc @@ -22,6 +22,7 @@ #include #include "audio_mapping.h" #include "util.h" +#include "md5_digester.h" using std::list; using std::cout; @@ -126,3 +127,20 @@ AudioMapping::as_xml (xmlpp::Node* node) const } } } + +/** @return a string which is unique for a given AudioMapping configuration, for + * differentiation between different AudioMappings. + */ +string +AudioMapping::digest () const +{ + MD5Digester digester; + digester.add (_content_channels); + for (int i = 0; i < _content_channels; ++i) { + for (int j = 0; j < MAX_DCP_AUDIO_CHANNELS; ++j) { + digester.add (_gain[i][j]); + } + } + + return digester.get (); +} -- cgit v1.2.3