Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(110)

Unified Diff: webkit/fileapi/media/picasa/pmp_constants.h

Issue 12704024: Simple PMP reader to parse Picasa's metadata (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix memory issue. Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webkit/fileapi/media/picasa/pmp_constants.h
diff --git a/webkit/fileapi/media/picasa/pmp_constants.h b/webkit/fileapi/media/picasa/pmp_constants.h
new file mode 100644
index 0000000000000000000000000000000000000000..5cc223da73a08f20de618148447ce018cd17e3af
--- /dev/null
+++ b/webkit/fileapi/media/picasa/pmp_constants.h
@@ -0,0 +1,55 @@
+// Copyright (c) 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef WEBKIT_FILEAPI_MEDIA_PICASA_PMP_CONSTANTS_H_
+#define WEBKIT_FILEAPI_MEDIA_PICASA_PMP_CONSTANTS_H_
+
+#include "base/basictypes.h"
+
+namespace fileapi {
+
+// PMP file format.
+// Info derived from: http://sbktech.blogspot.com/2011/12/picasa-pmp-format.html
+
+// values look "flipped" because serialized as little-endian
+
+// Total header size: 4+2+2+4+2+2+4 = 20 bytes
+const size_t kPmpHeaderSize = 20;
+
+// [0] - 4 Bytes - cd cc cc 3f
+const uint8 kPmpMagicO0S4[] = { 0xcd, 0xcc, 0xcc, 0x3f };
+
+// [4] - 2 Bytes - Field type
+const int kPmpFieldTypeFirstOffset = 4;
+
+// [6] - 2 Bytes - 32 13
+const uint8 kPmpMagicO6S2[] = { 0x32, 0x13 };
+
+// [8] - 4 Bytes - 02 00 00 00
+const uint8 kPmpMagicO8S4[] = { 0x02, 0x00, 0x00, 0x00 };
+
+// [12] - 2 bytes - Field type. Same as above.
+const int kPmpFieldTypeSecondOffset = 12;
+
+// [14] - 2 bytes - 32 13
+const uint8 kPmpMagicO14S2[] = { 0x32, 0x13 };
+
+// [16] - 4 bytes - Row count as uint32.
+const int kPmpRowCountOffset = 16;
+
+// [20] - * bytes - Rest of the entries.
+
+// Field types:
+// 0x00 - cstrings
+// 0x01 - uint32
+// 0x02 - double (Microsoft variant time)
+// 0x03 - uint8
+// 0x04 - uint64
+// 0x05 - uint16
+// 0x06 - cstrings
+// 0x07 - uint32
+
+} // namespace fileapi
+
+#endif // WEBKIT_FILEAPI_MEDIA_PICASA_PMP_CONSTANTS_H_

Powered by Google App Engine
This is Rietveld 408576698