Index: branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncCfg.cpp
===================================================================
--- branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncCfg.cpp	(revision 566)
+++ branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncCfg.cpp	(revision 567)
@@ -921,6 +921,6 @@
   ("SEIGradualDecodingRefreshInfo",  m_gradualDecodingRefreshInfoEnabled,      0, "Control generation of gradual decoding refresh information SEI message")
   ("SEIDecodingUnitInfo",             m_decodingUnitInfoSEIEnabled,                       0, "Control generation of decoding unit information SEI message.")
-#if M0043_LAYERS_PRESENT_SEI
-  ("SEILayersPresent",               m_layersPresentSEIEnabled,                0, "Control generation of layers present SEI message")
+#if LAYERS_NOT_PRESENT_SEI
+  ("SEILayersNotPresent",            m_layersNotPresentSEIEnabled,             0, "Control generation of layers not present SEI message")
 #endif
   ("SEISOPDescription",              m_SOPDescriptionSEIEnabled,              0, "Control generation of SOP description SEI messages")
Index: branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncCfg.h
===================================================================
--- branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncCfg.h	(revision 566)
+++ branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncCfg.h	(revision 567)
@@ -280,6 +280,6 @@
   Int       m_gradualDecodingRefreshInfoEnabled;
   Int       m_decodingUnitInfoSEIEnabled;
-#if M0043_LAYERS_PRESENT_SEI
-  Int       m_layersPresentSEIEnabled;
+#if LAYERS_NOT_PRESENT_SEI
+  Int       m_layersNotPresentSEIEnabled;
 #endif
   Int       m_SOPDescriptionSEIEnabled;
Index: branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncTop.cpp
===================================================================
--- branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncTop.cpp	(revision 566)
+++ branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncTop.cpp	(revision 567)
@@ -483,6 +483,6 @@
     m_acTEncTop[layer].setGradualDecodingRefreshInfoEnabled( m_gradualDecodingRefreshInfoEnabled );
     m_acTEncTop[layer].setDecodingUnitInfoSEIEnabled( m_decodingUnitInfoSEIEnabled );
-#if M0043_LAYERS_PRESENT_SEI
-    m_acTEncTop[layer].setLayersPresentSEIEnabled( m_layersPresentSEIEnabled );
+#if LAYERS_NOT_PRESENT_SEI
+    m_acTEncTop[layer].setLayersNotPresentSEIEnabled( m_layersNotPresentSEIEnabled );
 #endif
     m_acTEncTop[layer].setSOPDescriptionSEIEnabled( m_SOPDescriptionSEIEnabled );
@@ -797,6 +797,6 @@
   m_cTEncTop.setGradualDecodingRefreshInfoEnabled( m_gradualDecodingRefreshInfoEnabled );
   m_cTEncTop.setDecodingUnitInfoSEIEnabled( m_decodingUnitInfoSEIEnabled );
-#if M0043_LAYERS_PRESENT_SEI
-  m_cTEncTop.setLayersPresentSEIEnabled( m_layersPresentSEIEnabled );
+#if LAYERS_NOT_PRESENT_SEI
+  m_cTEncTop.setLayersNotPresentSEIEnabled( m_layersNotPresentSEIEnabled );
 #endif
   m_cTEncTop.setSOPDescriptionSEIEnabled( m_SOPDescriptionSEIEnabled );
Index: branches/SHM-5.0-dev/source/Lib/TLibCommon/SEI.h
===================================================================
--- branches/SHM-5.0-dev/source/Lib/TLibCommon/SEI.h	(revision 566)
+++ branches/SHM-5.0-dev/source/Lib/TLibCommon/SEI.h	(revision 567)
@@ -72,6 +72,6 @@
     SCALABLE_NESTING                     = 133,
     REGION_REFRESH_INFO                  = 134,
-#if M0043_LAYERS_PRESENT_SEI
-    LAYERS_PRESENT                       = 137,
+#if LAYERS_NOT_PRESENT_SEI
+    LAYERS_NOT_PRESENT                   = 137,
 #endif
 #if N0383_IL_CONSTRAINED_TILE_SETS_SEI
@@ -319,16 +319,16 @@
 };
 
-#if M0043_LAYERS_PRESENT_SEI
-class SEILayersPresent : public SEI
-{
-public:
-  PayloadType payloadType() const { return LAYERS_PRESENT; }
-
-  SEILayersPresent() {}
-  virtual ~SEILayersPresent() {}
+#if LAYERS_NOT_PRESENT_SEI
+class SEILayersNotPresent : public SEI
+{
+public:
+  PayloadType payloadType() const { return LAYERS_NOT_PRESENT; }
+
+  SEILayersNotPresent() {}
+  virtual ~SEILayersNotPresent() {}
 
   UInt m_activeVpsId;
   UInt m_vpsMaxLayers;
-  Bool m_layerPresentFlag[MAX_LAYERS];
+  Bool m_layerNotPresentFlag[MAX_LAYERS];
 };
 #endif
Index: branches/SHM-5.0-dev/source/Lib/TLibCommon/TypeDef.h
===================================================================
--- branches/SHM-5.0-dev/source/Lib/TLibCommon/TypeDef.h	(revision 566)
+++ branches/SHM-5.0-dev/source/Lib/TLibCommon/TypeDef.h	(revision 567)
@@ -178,5 +178,5 @@
 
 #define VIEW_ID_RELATED_SIGNALING        1      ///< Introduce syntax elements view_id and view_id_val
-#define M0043_LAYERS_PRESENT_SEI         0      ///< JCTVC-M0043: add layers present SEI. Macro shall be equal to 0 according to the JCTVC-N0174 discussion. The code is to be removed.
+#define LAYERS_NOT_PRESENT_SEI           1      ///< JCTVC-M0043: add layers not present SEI.
 #define N0383_IL_CONSTRAINED_TILE_SETS_SEI  1
 #define N0065_LAYER_POC_ALIGNMENT        1
Index: branches/SHM-5.0-dev/source/Lib/TLibDecoder/SEIread.cpp
===================================================================
--- branches/SHM-5.0-dev/source/Lib/TLibDecoder/SEIread.cpp	(revision 566)
+++ branches/SHM-5.0-dev/source/Lib/TLibDecoder/SEIread.cpp	(revision 567)
@@ -93,6 +93,6 @@
     fprintf( g_hTrace, "===========Tone Mapping Info SEI message ===========\n");
     break;
-#if M0043_LAYERS_PRESENT_SEI
-  case SEI::LAYERS_PRESENT:
+#if LAYERS_NOT_PRESENT_SEI
+  case SEI::LAYERS_NOT_PRESENT:
     fprintf( g_hTrace, "=========== Layers Present SEI message ===========\n");
     break;
@@ -119,5 +119,5 @@
  * unmarshal a single SEI message from bitstream bs
  */
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
 void SEIReader::parseSEImessage(TComInputBitstream* bs, SEIMessages& seis, const NalUnitType nalUnitType, TComVPS *vps, TComSPS *sps)
 #else
@@ -130,5 +130,5 @@
   do
   {
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
     xReadSEImessage(seis, nalUnitType, vps, sps);
 #else
@@ -145,5 +145,5 @@
 }
 
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
 Void SEIReader::xReadSEImessage(SEIMessages& seis, const NalUnitType nalUnitType, TComVPS *vps, TComSPS *sps)
 #else
@@ -254,14 +254,14 @@
       xParseSEIToneMappingInfo((SEIToneMappingInfo&) *sei, payloadSize);
       break;
-#if M0043_LAYERS_PRESENT_SEI
-    case SEI::LAYERS_PRESENT:
+#if LAYERS_NOT_PRESENT_SEI
+    case SEI::LAYERS_NOT_PRESENT:
       if (!vps)
       {
-        printf ("Warning: Found Layers present SEI message, but no active VPS is available. Ignoring.");
+        printf ("Warning: Found Layers not present SEI message, but no active VPS is available. Ignoring.");
       }
       else
       {
-        sei = new SEILayersPresent;
-        xParseSEILayersPresent((SEILayersPresent&) *sei, payloadSize, vps);
+        sei = new SEILayersNotPresent;
+        xParseSEILayersNotPresent((SEILayersNotPresent&) *sei, payloadSize, vps);
       }
       break;
@@ -279,5 +279,5 @@
     case SEI::SCALABLE_NESTING:
       sei = new SEIScalableNesting;
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
       xParseSEIScalableNesting((SEIScalableNesting&) *sei, nalUnitType, payloadSize, vps, sps);
 #else
@@ -741,6 +741,6 @@
 }
 
-#if M0043_LAYERS_PRESENT_SEI
-Void SEIReader::xParseSEILayersPresent(SEILayersPresent &sei, UInt payloadSize, TComVPS *vps)
+#if LAYERS_NOT_PRESENT_SEI
+Void SEIReader::xParseSEILayersNotPresent(SEILayersNotPresent &sei, UInt payloadSize, TComVPS *vps)
 {
   UInt uiCode;
@@ -752,9 +752,9 @@
   for (; i < sei.m_vpsMaxLayers; i++)
   {
-    READ_FLAG( uiCode,         "layer_present_flag"   ); sei.m_layerPresentFlag[i] = uiCode ? true : false;
+    READ_FLAG( uiCode,         "layer_not_present_flag"   ); sei.m_layerNotPresentFlag[i] = uiCode ? true : false;
   }
   for (; i < MAX_LAYERS; i++)
   {
-    sei.m_layerPresentFlag[i] = false;
+    sei.m_layerNotPresentFlag[i] = false;
   }
   xParseByteAlign();
@@ -830,5 +830,5 @@
 #endif
 
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
 Void SEIReader::xParseSEIScalableNesting(SEIScalableNesting& sei, const NalUnitType nalUnitType, UInt payloadSize, TComVPS *vps, TComSPS *sps)
 #else
@@ -876,5 +876,5 @@
   // read nested SEI messages
   do {
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
     xReadSEImessage(sei.m_nestedSEIs, nalUnitType, vps, sps);
 #else
Index: branches/SHM-5.0-dev/source/Lib/TLibDecoder/SEIread.h
===================================================================
--- branches/SHM-5.0-dev/source/Lib/TLibDecoder/SEIread.h	(revision 566)
+++ branches/SHM-5.0-dev/source/Lib/TLibDecoder/SEIread.h	(revision 567)
@@ -56,5 +56,5 @@
   SEIReader() {};
   virtual ~SEIReader() {};
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
   Void parseSEImessage(TComInputBitstream* bs, SEIMessages& seis, const NalUnitType nalUnitType, TComVPS *vps, TComSPS *sps);
 #else
@@ -62,5 +62,5 @@
 #endif
 protected:
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
   Void xReadSEImessage                (SEIMessages& seis, const NalUnitType nalUnitType, TComVPS *vps, TComSPS *sps);
 #else
@@ -83,6 +83,6 @@
   Void xParseSEIInterLayerConstrainedTileSets (SEIInterLayerConstrainedTileSets &sei, UInt payloadSize);
 #endif
-#if M0043_LAYERS_PRESENT_SEI
-  Void xParseSEILayersPresent         (SEILayersPresent &sei, UInt payloadSize, TComVPS *vps);
+#if LAYERS_NOT_PRESENT_SEI
+  Void xParseSEILayersNotPresent      (SEILayersNotPresent &sei, UInt payloadSize, TComVPS *vps);
   Void xParseSEIScalableNesting       (SEIScalableNesting& sei, const NalUnitType nalUnitType, UInt payloadSize, TComVPS *vps, TComSPS *sps);
 #else
Index: branches/SHM-5.0-dev/source/Lib/TLibDecoder/TDecTop.cpp
===================================================================
--- branches/SHM-5.0-dev/source/Lib/TLibDecoder/TDecTop.cpp	(revision 566)
+++ branches/SHM-5.0-dev/source/Lib/TLibDecoder/TDecTop.cpp	(revision 567)
@@ -1656,5 +1656,5 @@
     }
 #endif
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
     m_seiReader.parseSEImessage( bs, m_pcPic->getSEIs(), nalUnitType, m_parameterSetManagerDecoder.getActiveVPS(), m_parameterSetManagerDecoder.getActiveSPS() );
 #else
@@ -1664,5 +1664,5 @@
   else
   {
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
     m_seiReader.parseSEImessage( bs, m_SEIs, nalUnitType, m_parameterSetManagerDecoder.getActiveVPS(), m_parameterSetManagerDecoder.getActiveSPS() );
 #else
@@ -1684,5 +1684,5 @@
   if(nalUnitType == NAL_UNIT_SUFFIX_SEI)
   {
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
     m_seiReader.parseSEImessage( bs, m_pcPic->getSEIs(), nalUnitType, m_parameterSetManagerDecoder.getActiveVPS(), m_parameterSetManagerDecoder.getActiveSPS() );
 #else
@@ -1692,5 +1692,5 @@
   else
   {
-#if M0043_LAYERS_PRESENT_SEI
+#if LAYERS_NOT_PRESENT_SEI
     m_seiReader.parseSEImessage( bs, m_SEIs, nalUnitType, m_parameterSetManagerDecoder.getActiveVPS(), m_parameterSetManagerDecoder.getActiveSPS() );
 #else
Index: branches/SHM-5.0-dev/source/Lib/TLibEncoder/SEIwrite.cpp
===================================================================
--- branches/SHM-5.0-dev/source/Lib/TLibEncoder/SEIwrite.cpp	(revision 566)
+++ branches/SHM-5.0-dev/source/Lib/TLibEncoder/SEIwrite.cpp	(revision 567)
@@ -87,6 +87,6 @@
     fprintf( g_hTrace, "=========== Tone Mapping Info SEI message ===========\n");
     break;
-#if M0043_LAYERS_PRESENT_SEI
-  case SEI::LAYERS_PRESENT:
+#if LAYERS_NOT_PRESENT_SEI
+  case SEI::LAYERS_NOT_PRESENT:
     fprintf( g_hTrace, "=========== Layers Present SEI message ===========\n");
     break;
@@ -150,7 +150,7 @@
     xWriteSEIToneMappingInfo(*static_cast<const SEIToneMappingInfo*>(&sei));
     break;
-#if M0043_LAYERS_PRESENT_SEI
-  case SEI::LAYERS_PRESENT:
-    xWriteSEILayersPresent(*static_cast<const SEILayersPresent*>(&sei));
+#if LAYERS_NOT_PRESENT_SEI
+  case SEI::LAYERS_NOT_PRESENT:
+    xWriteSEILayersNotPresent(*static_cast<const SEILayersNotPresent*>(&sei));
     break;
 #endif
@@ -536,11 +536,11 @@
 }
 
-#if M0043_LAYERS_PRESENT_SEI
-Void SEIWriter::xWriteSEILayersPresent(const SEILayersPresent& sei)
+#if LAYERS_NOT_PRESENT_SEI
+Void SEIWriter::xWriteSEILayersNotPresent(const SEILayersNotPresent& sei)
 {
   WRITE_UVLC( sei.m_activeVpsId,           "lp_sei_active_vps_id" );
   for (UInt i = 0; i < sei.m_vpsMaxLayers; i++)
   {
-    WRITE_FLAG( sei.m_layerPresentFlag[i], "layer_present_flag"   );
+    WRITE_FLAG( sei.m_layerNotPresentFlag[i], "layer_not_present_flag"   );
   }
   xWriteByteAlign();
Index: branches/SHM-5.0-dev/source/Lib/TLibEncoder/SEIwrite.h
===================================================================
--- branches/SHM-5.0-dev/source/Lib/TLibEncoder/SEIwrite.h	(revision 566)
+++ branches/SHM-5.0-dev/source/Lib/TLibEncoder/SEIwrite.h	(revision 567)
@@ -64,6 +64,6 @@
   Void xWriteSEIGradualDecodingRefreshInfo(const SEIGradualDecodingRefreshInfo &sei);
   Void xWriteSEIToneMappingInfo(const SEIToneMappingInfo& sei);
-#if M0043_LAYERS_PRESENT_SEI
-  Void xWriteSEILayersPresent(const SEILayersPresent& sei);
+#if LAYERS_NOT_PRESENT_SEI
+  Void xWriteSEILayersNotPresent(const SEILayersNotPresent& sei);
 #endif
   Void xWriteSEISOPDescription(const SEISOPDescription& sei);
Index: branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncCfg.h
===================================================================
--- branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncCfg.h	(revision 566)
+++ branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncCfg.h	(revision 567)
@@ -305,6 +305,6 @@
   Int       m_gradualDecodingRefreshInfoEnabled;
   Int       m_decodingUnitInfoSEIEnabled;
-#if M0043_LAYERS_PRESENT_SEI
-  Int       m_layersPresentSEIEnabled;
+#if LAYERS_NOT_PRESENT_SEI
+  Int       m_layersNotPresentSEIEnabled;
 #endif
   Int       m_SOPDescriptionSEIEnabled;
@@ -748,7 +748,7 @@
   Void  setDecodingUnitInfoSEIEnabled(Int b)                { m_decodingUnitInfoSEIEnabled = b;    }
   Int   getDecodingUnitInfoSEIEnabled()                     { return m_decodingUnitInfoSEIEnabled; }
-#if M0043_LAYERS_PRESENT_SEI
-  Void  setLayersPresentSEIEnabled(Int b)                { m_layersPresentSEIEnabled = b; }
-  Int   getLayersPresentSEIEnabled()                     { return m_layersPresentSEIEnabled; }
+#if LAYERS_NOT_PRESENT_SEI
+  Void  setLayersNotPresentSEIEnabled(Int b)             { m_layersNotPresentSEIEnabled = b; }
+  Int   getLayersNotPresentSEIEnabled()                  { return m_layersNotPresentSEIEnabled; }
 #endif
   Void  setSOPDescriptionSEIEnabled(Int b)                { m_SOPDescriptionSEIEnabled = b; }
Index: branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncGOP.cpp
===================================================================
--- branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncGOP.cpp	(revision 566)
+++ branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncGOP.cpp	(revision 567)
@@ -167,20 +167,20 @@
 }
 
-#if M0043_LAYERS_PRESENT_SEI
-SEILayersPresent* TEncGOP::xCreateSEILayersPresent ()
+#if LAYERS_NOT_PRESENT_SEI
+SEILayersNotPresent* TEncGOP::xCreateSEILayersNotPresent ()
 {
   UInt i = 0;
-  SEILayersPresent *seiLayersPresent = new SEILayersPresent(); 
-  seiLayersPresent->m_activeVpsId = m_pcCfg->getVPS()->getVPSId(); 
-  seiLayersPresent->m_vpsMaxLayers = m_pcCfg->getVPS()->getMaxLayers();
-  for ( ; i < seiLayersPresent->m_vpsMaxLayers; i++)
-  {
-    seiLayersPresent->m_layerPresentFlag[i] = true; 
+  SEILayersNotPresent *seiLayersNotPresent = new SEILayersNotPresent(); 
+  seiLayersNotPresent->m_activeVpsId = m_pcCfg->getVPS()->getVPSId(); 
+  seiLayersNotPresent->m_vpsMaxLayers = m_pcCfg->getVPS()->getMaxLayers();
+  for ( ; i < seiLayersNotPresent->m_vpsMaxLayers; i++)
+  {
+    seiLayersNotPresent->m_layerNotPresentFlag[i] = true; 
   }
   for ( ; i < MAX_LAYERS; i++)
   {
-    seiLayersPresent->m_layerPresentFlag[i] = false; 
-  }
-  return seiLayersPresent;
+    seiLayersNotPresent->m_layerNotPresentFlag[i] = false; 
+  }
+  return seiLayersNotPresent;
 }
 #endif
@@ -363,8 +363,8 @@
   }
 
-#if M0043_LAYERS_PRESENT_SEI
-  if(m_pcCfg->getLayersPresentSEIEnabled())
-  {
-    SEILayersPresent *sei = xCreateSEILayersPresent ();
+#if LAYERS_NOT_PRESENT_SEI
+  if(m_pcCfg->getLayersNotPresentSEIEnabled())
+  {
+    SEILayersNotPresent *sei = xCreateSEILayersNotPresent ();
     m_pcEntropyCoder->setBitstream(&nalu.m_Bitstream);
     m_seiWriter.writeSEImessage(nalu.m_Bitstream, *sei, sps); 
Index: branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncGOP.h
===================================================================
--- branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncGOP.h	(revision 566)
+++ branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncGOP.h	(revision 567)
@@ -181,6 +181,6 @@
 
   SEIActiveParameterSets* xCreateSEIActiveParameterSets (TComSPS *sps);
-#if M0043_LAYERS_PRESENT_SEI
-  SEILayersPresent*       xCreateSEILayersPresent ();
+#if LAYERS_NOT_PRESENT_SEI
+  SEILayersNotPresent*    xCreateSEILayersNotPresent ();
 #endif
   SEIFramePacking*        xCreateSEIFramePacking();
