Return-Path: <tiff-bounces@lists.osgeo.org>
Received: from mailgate223.isp.belgacom.be ([195.238.22.55])
          by mailfep007.skynet.be
          (InterMail vM.8.04.03.28.4 201-2389-100-182-103-20180124)
          with ESMTP
          id <20200706135718.YTRJ61033.mailfep007.skynet.be@mailgate223.isp.belgacom.be>
          for <chris.lindelaan@skynet.be>; Mon, 6 Jul 2020 15:57:18 +0200
Received-SPF: None (mx201.skynet.be: no sender authenticity
  information available from domain of
  tiff-bounces@lists.osgeo.org) identity=pra;
  client-ip=140.211.15.3; receiver=mx201.skynet.be;
  envelope-from="tiff-bounces@lists.osgeo.org";
  x-sender="tiff-bounces@lists.osgeo.org";
  x-conformance=sidf_compatible
Received-SPF: Pass (mx201.skynet.be: domain of
  tiff-bounces@lists.osgeo.org designates 140.211.15.3 as
  permitted sender) identity=mailfrom; client-ip=140.211.15.3;
  receiver=mx201.skynet.be;
  envelope-from="tiff-bounces@lists.osgeo.org";
  x-sender="tiff-bounces@lists.osgeo.org";
  x-conformance=sidf_compatible; x-record-type="v=spf1";
  x-record-text="v=spf1 mx a:mail.osgeo.org a:lists.osgeo.org
  a:mail.osgeo.osuosl.org a:tracsvn.osgeo.osuosl.org -all"
Received-SPF: Pass (mx201.skynet.be: domain of
  postmaster@lists.osgeo.org designates 140.211.15.3 as
  permitted sender) identity=helo; client-ip=140.211.15.3;
  receiver=mx201.skynet.be;
  envelope-from="tiff-bounces@lists.osgeo.org";
  x-sender="postmaster@lists.osgeo.org";
  x-conformance=sidf_compatible; x-record-type="v=spf1";
  x-record-text="v=spf1 mx a:mail.osgeo.org a:lists.osgeo.org
  a:mail.osgeo.osuosl.org a:tracsvn.osgeo.osuosl.org -all"
Authentication-Results: mx201.skynet.be; spf=None smtp.pra=tiff-bounces@lists.osgeo.org; spf=Pass smtp.mailfrom=tiff-bounces@lists.osgeo.org; spf=Pass smtp.helo=postmaster@lists.osgeo.org; dkim=hardfail (body hash did not verify [final]) header.i=@gmail.com; dkim=hardfail (body hash did not verify [final]) header.i=@gmail.com; dmarc=fail (p=none dis=none) d=gmail.com
IronPort-SDR: 1nVyHbaXwlcfk0g8anemrPgljrh237qnbrrgehu+Myi0OemtMeooWvaneOJuzUkuQVHPE6CJLn
 0sJNwCztIQ1vanZRz+Y14cyd2QLDeOrU9QYK0UfkeHU5zB486MJZCZaHKuZxFzpYJJ/vEhDWVo
 2mLJMD8HdnBTEd66jAK8lGuBfXCZLYKDKayPXekGy0MgbeHmPRaYx+eqqB5mVQP+jW+lvkWLOo
 ng0f8NVpNK3wNdCRUtH9laMHKQIiqI5cqp3m9Gak9gsViLcQEZcajoWcJ5cFqP4ymtA8mSQNrH
 wF9Cv/fnCINIlqZS8tzh9J4t
IronPort-PHdr: =?us-ascii?q?9a23=3Aeflw5xMRkmZe4dlAY9Ql6mtUPXoX/o7sNwtQ0K?=
 =?us-ascii?q?IMzox0K/3/ocbcNUDSrc9gkEXOFd2Cra4d1ayP6Ou/ASRAuc/H7ClfNsQUFl?=
 =?us-ascii?q?cssoY/p0QYGsmLCEn2frbBThcRO4B8bmJj5GyxKkNPGczzNBX4q3y26iMOSF?=
 =?us-ascii?q?2kbVImbuv6FZTPgMupyuu854PcYxlShDq6fLh+MAi6oR/eu8ULgIZuMLs9xx?=
 =?us-ascii?q?XGrnZKZ+hd2GdkKU6Okxrm6cq84Z5u/z5Mt/498sJLTLn3cbk/QbFEFjotLn?=
 =?us-ascii?q?o75NfstRnNTAuP4mUTX2ALmRdWAAbL8Q/3UI7pviT1quRy1i+aPdbrTb8vQj?=
 =?us-ascii?q?St871rSB7zhygZMTMy7XzahdZxjKJfpxKhugB/zovJa4ybKPZyYqXQds4cSG?=
 =?us-ascii?q?FcXMheSjZBD5uzYIsBDeUPPehWoYrjqVUTtRuzBwuiCP7hxzNUmnD5w7Y63v?=
 =?us-ascii?q?8kEQ3axgEtBc4CvGjWodjzKawcUfq1zK7NzTjbdv1W3Tb96JbJch8/u/GHQK?=
 =?us-ascii?q?h+ftDIyUkyCQzFkkibpIviPzOR1+QNrWmb4PR6Ve61k24osRhxoiWxyccwkY?=
 =?us-ascii?q?TJiYcVxUrF9SV92oo6Odq4SEtibNOiDZBfuD2UOZFsTcM+X2Fnpjw6yrsetJ?=
 =?us-ascii?q?O4YiUH1IkqyhDeZvCbb4WG7Q/vWeWVLDtmmH9oZbKxigis/EWixeDyWcq53l?=
 =?us-ascii?q?hXoidKjNTBuXAA2gHP58WZRfZw+Fqq1zWX1w3L9+1JLlw4mbDFJ5I837I8jI?=
 =?us-ascii?q?cfvETZEiL4gEn6krOae0E+9uWr6+nreKjqq56dOoNuigzzPKIjkdGlD+siKA?=
 =?us-ascii?q?gBRW2b9Py81LL9+U35R61Hjvk3kqnCrJDaPt4XpqmiAw9azIkj7AyzDzC80N?=
 =?us-ascii?q?QXhXUHLVRFdwybj4XxJl3DL+z0Ae2hj1ixjTtn3e3KM737DpjDNnTDla3ufb?=
 =?us-ascii?q?d5605S0gozytVf6opICrEALvLzVFb9u8ffDh8kNQy73/joCM5m24MaWGKPGb?=
 =?us-ascii?q?OZMLjIvV+P/eIvLPeDZIgPtDb6Mfgl6ObijWUlll8FYampwZwXZWikEfRmOU?=
 =?us-ascii?q?WZYGHsjs0FEWcLuAoxUfLliFmYXjFJYXa/RLk85jI7CYKgE4jDWpqhj6ef03?=
 =?us-ascii?q?TzI5tNe2oTCkyQCWy6MMKAWuwQc2SVOcBslXoDT7fmToYg0RSnskj906ZmKe?=
 =?us-ascii?q?zPvTEZu5yw6d5u+ueGkBgz8SBzXdic3W/IVWxtg24TWxcy3btjugp60ViO1u?=
 =?us-ascii?q?5/mfMPDsFZ5f5CTlInM4XBxfdxEdH4V1H8eMyUQnarS9mrG2QxUs4p2I1JJE?=
 =?us-ascii?q?J8AMm5yBfY0CetRbgPmPuODZ0w96vamH/pO8d6zW2ByKgvgQobRNBSP02rj6?=
 =?us-ascii?q?Jy7V3WDo/Nj0LLi6eke+EG0TfQ+Xyf5W6Pp11DFglrXqjCG3cFaRzNsN7760?=
 =?us-ascii?q?jeGqKoEqktKQBbyMSPeZdNP//0gE9JSfGrA8jDZnq80zOyHgqVw6uBKortU2?=
 =?us-ascii?q?oY1STZTkMDllZA02yBMF0ZAia/om/ERARnDE/ifwu49u1/tnK2VAksxhiXYl?=
 =?us-ascii?q?FJ2L+8+xpTjvuZHaBAlokYsTss/m0nVG222MjbXoLZ+lhNX4R5JP4j6VNa3H?=
 =?us-ascii?q?7YsAojZcDyMfU71RYXJh5stgb11xwtV9sT2cN/tn4uxRp/JeWC3VdIZz6Ujt?=
 =?us-ascii?q?j8b7LSI2j2uhuobv2ewQSEiI/Io/9VtaddyR3j6QSoE0dn7Xh9yNhS1SmG65?=
 =?us-ascii?q?vHFgcUWp/qAEcxsgJ3v7XLJzU6tY3O0ng+PaCov23H1skyDeQojxesLcxCOq?=
 =?us-ascii?q?GJHxOgD8p/ZYD8I+d501KpOwlVB9xUz7AuEsK6a8ee2P6qf6FNvhH83D1g46?=
 =?us-ascii?q?ciyHvW/QR1RMvyhssd36nNjW7lHz2pg0ynufKwnYVDIh4iNVC47DnrVKppPI?=
 =?us-ascii?q?NuYak7WTb3HfOMz41ltpr/ckF5rX6RAWsl+5SMcwrMZG3g11Bo62o3+0aL/E?=
 =?us-ascii?q?nwwh5oix13raaDgiDl0+vbbRM5IXZEdURNqlbJE7nqpcoKemiEMBkxkwP9ol?=
 =?us-ascii?q?zmnpEAla9edkeOcVVnZBfMKlxnY4WKhIvnAYYXw7wUvTt6W/TnTWmDErDP/D?=
 =?us-ascii?q?g5ixzFQkAD+js8bjeDmMTJzxMjoniEc0ws70DFQ59T9xb5y9vnRed15CFBdX?=
 =?us-ascii?q?Ynp2KNDD3ed/+WwImuu77ykcORUlmhX81wUXfsz4m+6Wy0/V1DBiKtzv+uiu?=
 =?us-ascii?q?DAUi4IyAr88OM7eirNokzeb4XEy4HgELJfZHZKLg7VjqgyGbNsibkKnLsdnm?=
 =?us-ascii?q?NEici3pyUhtGzKNtVg2/n1fXcNVD4UzO+K/0+73lx7NGqzgLuiUVXHzMlaO4?=
 =?us-ascii?q?aBbmAL5QZnxMZmOfvxjvRDjDlM9w/r5RKUYOJ6mC8a0+dr8nMBnuUV7Qok1C?=
 =?us-ascii?q?mTC7EWTgFIeC32kBKQ6Mqi6ahNfmG1JLK32Fs2ndm6DPmOow0UXnHlMokvBy?=
 =?us-ascii?q?5+/41MPlPK2XnGudy2VPz5V/lK70PGy1PsiuFPI6g8nf0QiXgvITf7unsoj6?=
 =?us-ascii?q?YjhgA7hMni+MCcMzB04aujCxhENzv4I4sa9jLsiPNE2o6fxJihS48lUi8WVc?=
 =?us-ascii?q?7bDb2tGTMWvOn7N0OUHSU7sGuAMbXYGgCb5QFtqHeAV9jyby3HeSZHlZRXAB?=
 =?us-ascii?q?+aIkEF2lI9QSk6k5glFwuj2M3mdgJD6ysM4kLj8UcRmOd4bUGmFHzctQGldn?=
 =?us-ascii?q?E+RcvXNwJYuydF4UqdKsmC9qRrBSgN4pyvokmHLXGdbAlTJWUIQVCfQVf4Mb?=
 =?us-ascii?q?Spo97a/LvQHfKwesPHeq7GsulCT7GNzJOr3JFh+mOQN8uBe3NlEvsw11FrWX?=
 =?us-ascii?q?FiB9+fnC4ARitRkDjCPIaAvBnpwiRstYik9ejzHgLi4YzaE7xJLdBm4Ay7m4?=
 =?us-ascii?q?+HNvWMn2B+MjlV0dUL33CbgLQc3VtHiyh0ezekELBI9STKQLOYmqZMD1YXai?=
 =?us-ascii?q?87MsxUp7wxxAhDKIbohNLz37pNz7Y1Bl5JWEanm5SBaskDImX7P1TCVw6HN7?=
 =?us-ascii?q?WDcD3C2c35aKK4Af1ai+lF/x25ojbTH07vdjKEi3H3WgquP/AEvy+aOhVajc?=
 =?us-ascii?q?D1chtkBWX5CtOzQhK+Od5zyzYxxO58inbDL2VJPzF9dwsNtuiW6iVVyvl+AD?=
 =?us-ascii?q?lH6XxobKGIzimc5ujcbJ0RtKIxUB55nO9b/nk2joBtwnodHa5Tny3f5p5rsw?=
 =?us-ascii?q?v+y6+UySthXQYIoDsZzISM9V5vP6nU7NFJRGrE8RQR7G6RFwVvxZMtC9vhvL?=
 =?us-ascii?q?pVw8TOk6S7ISlL8tbd988RT8bOL8fPPH0kOBvvUDnaaWlNBSKqO2+ajUtAlv?=
 =?us-ascii?q?qf7VWRr4Mmsd7rg5UDTflcTlN0XvIWB0J5HcATdY9tV2BB8/bTh8oJ6Hyi6R?=
 =?us-ascii?q?jJEZwG5tadD6vUWKipc2XRl7RPahoWzKmtKJRJbtS9wE9zbFRm2o7HSC+yFZ?=
 =?us-ascii?q?hApDNsaggsrQBD6n97Gycv2kzrLwmq/XkYGOWcmh8tlhA4Zv8i+TCq5E04bA?=
 =?us-ascii?q?mvxmN4gAwqlNPpjCrEOiLwIqn1V4ZLDSH5rGA1M4jnWEBydgK/mgpjLjiOFN?=
 =?us-ascii?q?czx/NwMGtsjgHbo55GH/VRGLZFbBEnzvaSf/w00F5Yp3z9l3VK7ubEF5Zu0T?=
 =?us-ascii?q?ASX8Lx/yB40hl4JJ4wNfaIfexSzUlWi77ItCL6nuw2xQYfIQ4K/gbwMGYUuU?=
 =?us-ascii?q?IGc7MhOiyj8/dE7Q2ZhyAFf3MDWv1spehlvk8wIOWPySv83qULcxzpcbbGdu?=
 =?us-ascii?q?XA5i6b3ceTJzF4nlsFjUxE4aR73Y84fkyYWlpuhLqdGhIVNNbTfARcbs5c7n?=
 =?us-ascii?q?/WLm6FteTAx44wPp3oT7ywC7XX7eBN3wT/T2NLV8wW488MH4ehyhTdPZ2/df?=
 =?us-ascii?q?geygQr6RitLljWaZYBMB+NjjoDpNmyiZFt2owIbC0cD2s4OyKq4L3avScuge?=
 =?us-ascii?q?GfR5ExeXgXWc0DLH18C6jY02ZJ+m9NCjW6yLdT1AmM4Xr2oTnWBzTnR95if+?=
 =?us-ascii?q?uPIxR3B9yxvzIl/OLl7DyfuoWbLGb8O9N4v9bJ4u5PvJeLBcRfSrxlulvdkY?=
 =?us-ascii?q?1VFDS6FnTCGtmvK93sepEhOJbqX22iXAX12FdXB4/hecygJa+SjUT0SJZI5c?=
 =?us-ascii?q?OFiSs7O5b1EyFWEkV1ruAHoqVnagAEJZ0hblbh5QA/LLCkZgCD3dipBWG3Jl?=
 =?us-ascii?q?40B7FWn+CzZrgRyDEjY+j8z2A9SYo+ie6t/gYEFo0QhxrF2/DlYJJRXC+1HW?=
 =?us-ascii?q?dAfB7L4y0jmCAkP+I2iL5lkinFulQdLT2HMddRRjAZ54MEDEiJaTVzGjBgHh?=
 =?us-ascii?q?mHjpvF7xLq1b1Atydamt9V16VCvh2c9tfHZymwXaWwtZjPmy4hdsQ95apqPo?=
 =?us-ascii?q?HkZMycu9vSkyfeQ5/ZrgCeGHfmT7wAw4EWeX8eG7FBggRHcYQetJBE6FYtW8?=
 =?us-ascii?q?t2PLFJBKQ25/irZTdiES8O3HoZWoeHj3QJhuax3aeflw/FKch6dkZd6dMb35?=
 =?us-ascii?q?1GAEsUKmsEqaSuVpvbjTqBWjJTeUEI7hVK6R5GnIIjG4KtqIfOUpJIzCZb5v?=
 =?us-ascii?q?xuVS6eXIVp+VW+QGaLh1P1U92lkve1xkRV1/3h1Z8cQhE1Wi0/j65G01AlLr?=
 =?us-ascii?q?16MfxaponRrjqBbl/3pkrpyfC6Px9W0sLZcBv/FoWP5g+eGmUMvHYTQ4FI0n?=
 =?us-ascii?q?TWE58fxhF4ZKgcr1JJOIm6e0z66m9s18FzErK/T8zu20c9oCNMWXKxC9QYQb?=
 =?us-ascii?q?ID0hqfSHh/bpusspmgJ5hCXjoa5siGs1kA2EB9eyfrzJNdL4dK+TEBW35Iuz?=
 =?us-ascii?q?rVtYm2SdZfwolxFJABJZF4oXiYeusMMcqUqnwy/Lv0xXLevTcnrVChwHO0Aa?=
 =?us-ascii?q?DwRrBF5WQVARsvYWOFpUQoSew372DJ9hbKqF88uu5fAvLW3BdB5Q1lF5ULPQ?=
 =?us-ascii?q?5nkHWsLlB9Vn5D6roILKXOb9caROI9aBjpPAYxR6d/gx65uHpslHK8WBRc8x?=
 =?us-ascii?q?NA8nmCDQ01TjUOxLD2ljAZ7Ma9Nm1CEs8aXXAady7Abjmjt2VXsRJYMh44X5?=
 =?us-ascii?q?ECHs0D/KoU0IwS+dDNGx+h?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0GWAAAKLQNfhwMP04xgHAEBAQEBAQc?=
 =?us-ascii?q?BARIBAQQEAQGBeQQBAQsBgiIBFwFdVQEfAwcfFYQyiQGIExSTW4gKFgEBAgE?=
 =?us-ascii?q?BAQEBCBgBCgwEAQEBAYReghAeBgEEMwYOAgECAQEBAwIFAQEBBAEBAQIBAQI?=
 =?us-ascii?q?DAgIBAQIQAQEBCgsJCCkqBn4DAT0EYgZbBIFpDAIxDII3BQIDGA5qgQIBAQE?=
 =?us-ascii?q?BAQEBAQEBAQEBAQEBAQEBARUCDVQgKQEBHgEBAQIBAQEBDxEdAQUKDBIEBwE?=
 =?us-ascii?q?CAQEBAQIGAQEFBQQHAywEBAICAgEBHQEBBAEMAQUBHAYTBR2DBAGCSgEDDiA?=
 =?us-ascii?q?FCpxKgQQ9iyiBFQUBF4MCBYQ+ChkoDWIDgTQCAQYSgSYBgRGLZ4FMP4ERNoI?=
 =?us-ascii?q?sLj6CGkIBBIRygmAEkjaIC5l8JSgHgl+BBwQLhzWKS4FFhG8ggnOOUo1Ym3W?=
 =?us-ascii?q?CWZIEDyOBRiMqgS0zGiNQMYI4TQECAQINAgEBAQMBAgICAQECAgEBAo4bCRq?=
 =?us-ascii?q?DToUUhV4lATI3AgYBBwEBAwmPFoFtAQE?=
X-IPAS-Result: =?us-ascii?q?A0GWAAAKLQNfhwMP04xgHAEBAQEBAQcBARIBAQQEAQGBe?=
 =?us-ascii?q?QQBAQsBgiIBFwFdVQEfAwcfFYQyiQGIExSTW4gKFgEBAgEBAQEBCBgBCgwEA?=
 =?us-ascii?q?QEBAYReghAeBgEEMwYOAgECAQEBAwIFAQEBBAEBAQIBAQIDAgIBAQIQAQEBC?=
 =?us-ascii?q?gsJCCkqBn4DAT0EYgZbBIFpDAIxDII3BQIDGA5qgQIBAQEBAQEBAQEBAQEBA?=
 =?us-ascii?q?QEBAQEBARUCDVQgKQEBHgEBAQIBAQEBDxEdAQUKDBIEBwECAQEBAQIGAQEFB?=
 =?us-ascii?q?QQHAywEBAICAgEBHQEBBAEMAQUBHAYTBR2DBAGCSgEDDiAFCpxKgQQ9iyiBF?=
 =?us-ascii?q?QUBF4MCBYQ+ChkoDWIDgTQCAQYSgSYBgRGLZ4FMP4ERNoIsLj6CGkIBBIRyg?=
 =?us-ascii?q?mAEkjaIC5l8JSgHgl+BBwQLhzWKS4FFhG8ggnOOUo1Ym3WCWZIEDyOBRiMqg?=
 =?us-ascii?q?S0zGiNQMYI4TQECAQINAgEBAQMBAgICAQECAgEBAo4bCRqDToUUhV4lATI3A?=
 =?us-ascii?q?gYBBwEBAwmPFoFtAQE?=
X-MGA-submission: =?us-ascii?q?MDHKo7h+yQbmhzFJVtcxRJKHThY0OIQCHCnEgY?=
 =?us-ascii?q?X3vYPyukERY7zSr9/Iy9Ji0fXDmXLXp6QheE0vT3jmtC/jOmfiFxPeXc?=
 =?us-ascii?q?GMXFoiKMX8sx8O+rCmUgmRVggZ49fQBadoGcY=3D?=
Received: from osgeo6.osgeo.osuosl.org (HELO lists.osgeo.org) ([140.211.15.3])
  by mx201.skynet.be with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Jul 2020 15:57:16 +0200
Received: from osgeo6.osgeo.osuosl.org (localhost [127.0.0.1])
	by lists.osgeo.org (Postfix) with ESMTP id 0584D61449AE;
	Mon,  6 Jul 2020 06:57:07 -0700 (PDT)
Received: from mail-io1-f53.google.com (mail-io1-f53.google.com
 [209.85.166.53])
 by lists.osgeo.org (Postfix) with ESMTPS id 0BCC861449A1
 for <tiff@lists.osgeo.org>; Mon,  6 Jul 2020 06:57:05 -0700 (PDT)
Received: by mail-io1-f53.google.com with SMTP id o5so39313269iow.8
 for <tiff@lists.osgeo.org>; Mon, 06 Jul 2020 06:57:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=s9STnSvrEittTph8i+/EJK291OkO7rQ2bFafMR15pt0=;
 b=gsncZ/lmo/GXCRoMyg8LP2FttGX891VVSa0sYlzAWI1HZnPKK3Mbx6cYub5PVFH2RD
 eJtpD6kdt6dCxgQqaVspgYEGOiMZY6BrxNHD7ypop0/rt1Q3YcI1F5XzGsWRmUmYFRZY
 0CGTdvEcx3DQq0fZ7KK0WN5C5VcoqnAJ9X8g1Brq7R7+RtR6KZiNGoShqLRs/Y77F32b
 NWU4RDAYKKGmSha8KH6ojbV5/gpXAoWz9guxUO+NZqMoOR9Ggmf2JedGtM2I8PrWJB9A
 kZzsZRpBe/s6g5J27NMcQohSj3cyehyhwgY7w/6nyprpR/Q3oH2fjS47SdkuWL2CnDY4
 oyzQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=s9STnSvrEittTph8i+/EJK291OkO7rQ2bFafMR15pt0=;
 b=sNflXVRohlIVGUOt7MlC8tY3xvvIdjtqjqJIEDVKsagNPqI2LY4uN4A2MzgQ8RMbag
 0A3bx+oGnTzwD+tYjiYEuBKD+PjDeJlJoXLCNHqA7ksBcNkHf3oJl0HoJdg68wx0CtZX
 tW587ZB0eGKz7QieLOGoLcHsQBk3gb0a2AxF3eQC0/+zIeY8I5zmKC/PwGR9EDW9Hu2X
 w4BFTwQfH0SbpkcCg0nfnMNVIPcwYwc15B3kzBE5b5cqLSr3TgmXvkYJaQjJrJxBEmM0
 iRm55jnT9Pov8Bw3iKNQBD9x4meFibuFF4baII1J/IM8IAxhIksFvHHzVcYTqyAWdjY2
 OM0w==
X-Gm-Message-State: AOAM5332u3ECtrfvvB09WcqjP543yXgJHS8YqYIiTr00a5zxoJP96XxW
 y7MVnVkk4khWQ/EyvHfPvF5Qp23W/jzl6VVVlnQ=
X-Google-Smtp-Source: ABdhPJyuZNIdhiP/9MnEQAAHi+l0XnQnv1MpzKtLvB0NvyStzqhdRwAhE6H51y1o0ZeHeNRVxXn87ld9/hZCx0lUi5Y=
X-Received: by 2002:a05:6602:2c45:: with SMTP id
 x5mr24921295iov.80.1594043824398; 
 Mon, 06 Jul 2020 06:57:04 -0700 (PDT)
MIME-Version: 1.0
References: <CAG4Z10YfzCDZoKmiFBvKyRK5fL__aOFBD4zn5Bt1sKU8NcgHUA@mail.gmail.com>
In-Reply-To: <CAG4Z10YfzCDZoKmiFBvKyRK5fL__aOFBD4zn5Bt1sKU8NcgHUA@mail.gmail.com>
From: Olivier Paquet <olivier.paquet@gmail.com>
Date: Mon, 6 Jul 2020 09:56:53 -0400
Message-ID: <CAAcuQeaLb-mdAt=uK84N5NDD_zjAZqh+48VeHk9xbhHdQeYGmg@mail.gmail.com>
To: Juergen Stumpe <jstumpe.ho@gmail.com>
Subject: Re: [Tiff] TIFF Tile Size and TileByteCounts
X-BeenThere: tiff@lists.osgeo.org
X-Mailman-Version: 2.1.20
Precedence: list
List-Id: TIFF and libtiff discussion <tiff.lists.osgeo.org>
List-Unsubscribe: <https://lists.osgeo.org/mailman/options/tiff>,
 <mailto:tiff-request@lists.osgeo.org?subject=unsubscribe>
List-Post: <mailto:tiff@lists.osgeo.org>
List-Help: <mailto:tiff-request@lists.osgeo.org?subject=help>
List-Subscribe: <https://lists.osgeo.org/mailman/listinfo/tiff>,
 <mailto:tiff-request@lists.osgeo.org?subject=subscribe>
Cc: tiff@lists.osgeo.org
Content-Type: multipart/mixed; boundary="===============5438482824451657257=="
Errors-To: tiff-bounces@lists.osgeo.org
Sender: "Tiff" <tiff-bounces@lists.osgeo.org>

--===============5438482824451657257==
Content-Type: multipart/alternative; boundary="000000000000e8e3f405a9c63fce"

--000000000000e8e3f405a9c63fce
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi,

Le lun. 6 juil. 2020 =C3=A0 06:19, Juergen Stumpe <jstumpe.ho@gmail.com> a
=C3=A9crit :

> I have a question regarding the relation of tile size (TileWidth x
> TileLength) and the number of bytes to be read from file (TileByteCounts)=
.
> According the tags as listed below, the size of each tile is  256 x 256 =
=3D
> 65536 bytes. But the number of bytes per tile ( TileByteCounts ) are
> either smaller (e.g. 149, 6930, ... bytes) or bigger (e.g. 74613, 128520,
> ..... bytes).
>

Your file also has:
2: '258 (0x102: BitsPerSample): 16 (1 Short)'
which means 2 bytes per pixel. So 256 x 256 x 2 =3D 131072.

Hence, my question is what e.g. the value 149 means exactly and how to
> create a 256 x 256 bytes tile out of only 149 bytes.
>

It is the size of the data for the tile in the file, on disk. In your case,
with:

3: '259 (0x103: Compression): 8 (1 Short)'

the tiles are compressed, which is why they are smaller than you expect.
They could probably also be slightly larger if they compress really poorly.
How much depends on the specific compression algorithm. The data needs to
be decompressed after being read, which should yield the expected 131072
bytes. Libtiff can do all of that for you so you normally shouldn't have to
care about the tile offset and tile byte count tags. You do need to figure
out the uncompressed tile size to provide a large enough buffer for it, and
generally to know how to interpret the data (eg. in 16-bit chunks in your
case).

Olivier

--000000000000e8e3f405a9c63fce
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hi,</div><br><div class=3D"gmail_quote"><div dir=3D"l=
tr" class=3D"gmail_attr">Le=C2=A0lun. 6 juil. 2020 =C3=A0=C2=A006:19, Juerg=
en Stumpe &lt;<a href=3D"mailto:jstumpe.ho@gmail.com">jstumpe.ho@gmail.com<=
/a>&gt; a =C3=A9crit=C2=A0:<br></div><blockquote class=3D"gmail_quote" styl=
e=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);paddin=
g-left:1ex"><div dir=3D"ltr"><div>I have a question regarding the relation =
of tile size (<span id=3D"gmail-m_8154557216909928538:15d.1">TileWidth</spa=
n> x <span id=3D"gmail-m_8154557216909928538:15d.2">TileLength</span>) and =
the number of bytes to be read from file (<span id=3D"gmail-m_8154557216909=
928538:15d.3">TileByteCounts</span>). According the tags as listed below, t=
he size of each tile is=C2=A0
256 x 256

=3D=C2=A0 65536 bytes. But the number of bytes per tile (
<span id=3D"gmail-m_8154557216909928538:15d.4">TileByteCounts</span> ) are =
either smaller (e.g. 149, 6930, ... bytes) or bigger (e.g. 74613, 128520, .=
.... bytes).<br></div></div></blockquote><div>=C2=A0</div><div>Your file al=
so has:</div><div>2: &#39;258 (0x102: <span id=3D"gmail-m_81545572169099285=
38:15d.8">BitsPerSample</span>): 16 (1 Short)&#39;<br></div><div>which mean=
s 2 bytes per pixel. So 256 x 256 x 2 =3D 131072.</div><div><br></div><bloc=
kquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:=
1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div></div><d=
iv>Hence, my question is what e.g. the value 149 means exactly and how to c=
reate a 256 x 256 bytes tile out of only 149 bytes.</div></div></blockquote=
><div><br></div><div>It is the size of the data for the tile in the file, o=
n disk. In your case, with:</div><div><br></div><div>3: &#39;259 (0x103: Co=
mpression): 8 (1 Short)&#39;</div><div><br></div><div>the tiles are compres=
sed, which is why they are smaller than you expect. They could probably als=
o be slightly larger if they compress really poorly. How much depends on th=
e specific compression algorithm. The data needs to be decompressed after b=
eing read,=C2=A0which should yield the expected 131072 bytes. Libtiff can d=
o all of that for you so you normally shouldn&#39;t have to care about the =
tile offset and tile byte count tags. You do need to figure out the uncompr=
essed tile size to provide a large enough buffer for it, and generally to k=
now how to interpret the data (eg. in 16-bit chunks in your case).</div><di=
v><br></div><div>Olivier=C2=A0</div></div></div>

--000000000000e8e3f405a9c63fce--

--===============5438482824451657257==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KVGlmZiBtYWls
aW5nIGxpc3QKVGlmZkBsaXN0cy5vc2dlby5vcmcKaHR0cHM6Ly9saXN0cy5vc2dlby5vcmcvbWFp
bG1hbi9saXN0aW5mby90aWZmCg==

--===============5438482824451657257==--
