From aaa136e25dfa473c7cf76e9074611af9048d65a6 Mon Sep 17 00:00:00 2001 From: Kalle Sommer Nielsen Date: Fri, 5 Aug 2016 07:45:02 +0200 Subject: [PATCH] Added support for Sony pictures in EXIF as per requested in bug #72735 Sony is a little more interesting, as it is have a large range of tags it support in different models. For now I have added all the tags found within the Exif.Sony1 namespace. --- ext/exif/exif.c | 59 ++++++++++++++++++++++++++++++++++++++- ext/exif/tests/sony.jpg | Bin 0 -> 62048 bytes ext/exif/tests/sony.phpt | 23 +++++++++++++++ 3 files changed, 81 insertions(+), 1 deletion(-) create mode 100644 ext/exif/tests/sony.jpg create mode 100644 ext/exif/tests/sony.phpt diff --git a/ext/exif/exif.c b/ext/exif/exif.c index 2a6804720d..75ff992cf7 100644 --- a/ext/exif/exif.c +++ b/ext/exif/exif.c @@ -1109,6 +1109,62 @@ static tag_info_array tag_table_VND_DJI = { TAG_TABLE_END }; +static tag_info_array tag_table_VND_SONY = { + { 0x0102, "Quality"}, + { 0x0104, "FlashExposureComp"}, + { 0x0105, "Teleconverter"}, + { 0x0112, "WhiteBalanceFineTune"}, + { 0x0114, "CameraSettings"}, + { 0x0115, "WhiteBalance"}, + { 0x0116, "0x0116"}, + { 0x0e00, "PrintIM"}, + { 0x1000, "MultiBurstMode"}, + { 0x1001, "MultiBurstImageWidth"}, + { 0x1002, "MultiBurstImageHeight"}, + { 0x1003, "Panorama"}, + { 0x2000, "0x2000"}, + { 0x2001, "PreviewImage"}, + { 0x2002, "0x2002"}, + { 0x2003, "0x2003"}, + { 0x2004, "Contrast"}, + { 0x2005, "Saturation"}, + { 0x2006, "0x2006"}, + { 0x2007, "0x2007"}, + { 0x2008, "0x2008"}, + { 0x2009, "0x2009"}, + { 0x200a, "AutoHDR"}, + { 0x3000, "ShotInfo"}, + { 0xb000, "FileFormat"}, + { 0xb001, "SonyModelID"}, + { 0xb020, "ColorReproduction"}, + { 0xb021, "ColorTemperature"}, + { 0xb022, "ColorCompensationFilter"}, + { 0xb023, "SceneMode"}, + { 0xb024, "ZoneMatching"}, + { 0xb025, "DynamicRangeOptimizer"}, + { 0xb026, "ImageStabilization"}, + { 0xb027, "LensID"}, + { 0xb028, "MinoltaMakerNote"}, + { 0xb029, "ColorMode"}, + { 0xb02b, "FullImageSize"}, + { 0xb02c, "PreviewImageSize"}, + { 0xb040, "Macro"}, + { 0xb041, "ExposureMode"}, + { 0xb042, "FocusMode"}, + { 0xb043, "AFMode"}, + { 0xb044, "AFIlluminator"}, + { 0xb047, "JPEGQuality"}, + { 0xb048, "FlashLevel"}, + { 0xb049, "ReleaseMode"}, + { 0xb04a, "SequenceNumber"}, + { 0xb04b, "AntiBlur"}, + { 0xb04e, "LongExposureNoiseReduction"}, + { 0xb04f, "DynamicRangeOptimizer"}, + { 0xb052, "IntelligentAuto"}, + { 0xb054, "WhiteBalance2"}, + TAG_TABLE_END +}; + typedef enum mn_byte_order_t { MN_ORDER_INTEL = 0, MN_ORDER_MOTOROLA = 1, @@ -1142,7 +1198,8 @@ static const maker_note_type maker_note_array[] = { { tag_table_VND_OLYMPUS, "OLYMPUS OPTICAL CO.,LTD", NULL, "OLYMP\x00\x01\x00", 8, 8, MN_ORDER_NORMAL, MN_OFFSET_NORMAL}, { tag_table_VND_SAMSUNG, "SAMSUNG", NULL, NULL, 0, 0, MN_ORDER_NORMAL, MN_OFFSET_NORMAL}, { tag_table_VND_PANASONIC, "Panasonic", NULL, "Panasonic\x00\x00\x00", 12, 12, MN_ORDER_NORMAL, MN_OFFSET_NORMAL}, - { tag_table_VND_DJI, "DJI", NULL, NULL, 0, 0, MN_ORDER_NORMAL, MN_OFFSET_NORMAL} + { tag_table_VND_DJI, "DJI", NULL, NULL, 0, 0, MN_ORDER_NORMAL, MN_OFFSET_NORMAL}, + { tag_table_VND_SONY, "SONY", NULL, "SONY DSC \x00\x00\x00", 12, 12, MN_ORDER_NORMAL, MN_OFFSET_NORMAL} }; /* }}} */ diff --git a/ext/exif/tests/sony.jpg b/ext/exif/tests/sony.jpg new file mode 100644 index 0000000000000000000000000000000000000000..865157032c33483fd1a890dce228dec5003e64f2 GIT binary patch literal 62048 zcmeEv30xD`xBnd$6H}#%N(%_$)}Z1NP-{k1q%IBO7BMyr-~tgeA>tC3ATC%Nr55Uf z+S*!ekuFgYqG+LFbrM^~h(^Xi#+EkXsKr!K!CG78e=Z4@-|yG<{od~_|M&U4cZW0g zJ9q9q_uTE=bMMTM<}1xVpiVIpWD^iU5a?AnQ1eeHaa!u4Ws8=kE=muH7&HWph?Y(E z@eD6a?!@cJGqCSO9M*2pf~D%YdJLamK3A)yK2wJz>qFw^F45sI z(F!$&;X@=5&5l(Q#;;s3A0e5nKN14dj>w1bKp}uW2YMc`H~2JAC%_``F9P`zo`?V+ zQvl)J;&Xrl-S`^dP;z!FH?0sMNPaKK%`e+bmY!^H>3*`4Kq+JP?urVET-Ej+^j zAFv2ecL?tU*drC8kiT|l#?&cFgvQNyWuW{u$&ewq8e4d^`V(c7r-g(M8a_x8j-U>P zl0ziqkf9+%B1p+_a@YtoPOV$86ir*QK(|ab84Za57RUn*TvpsL2=zkmWx2{sgWw;y z@g=~$HvL{6u^VSX3iOTu;YJ%09x=r89as4|i0|dbcK{PxU2zDg6OXMf{s58ZHc?C7 zBEVj5>RP=CO00*-?F@29|N zpIc6-IAY)LZS1kn)gFNYkjIU2fxO-LI!^nsphZq#i3m4tsk3|+9|%SsZLnt>?3M2- z%eTPC+Z{d*;Xkf|9y z#9uSTov_uz4F@-`w?_!7tfha2K=%p(JOz1n@p{5k#qqodR}a4daeUq35RAID!Nd_)+516e&$TJLkGoEA{O8+*cXs1u zaK3GDmo~VYJ8g3_j0BJkSJNGk!LJR^D0jY?|JXJ-x($A%4IbA9k8gt~w80bI7}wjY zM}*J%gRD)Qm^OHl8{@i)J>qKLhal(VHgTr3i8HlL__Q{7dK)ZngJ-nCacwZ#Awcg! zo=+h!0x<40yJ1Lq0DcFA-yHyL>Bga;qP+lzfsiMHpl<{24@s`~0PO@g3i$YlK|2Ay z1?@itaC;mMDr@)v7^#4D; zakm9zSqFF;Xj&)&>M#SL&Jh0xkoijm#Q#6{Pt^d{n3!6fOqK{^^^bI@u)~~g2wi%v zHD;^d7ma)6<%l5>5#d9^!^4N*=@XpMuVysv?`>Vrwio}0|DpzFESsxKp1TB3KP@iG z2O(VhBVaVFgHeW^tJOjY^rEZY$3Jx~^8D%Df9b|Qk?X(2_b(H**5`k}-_qKD zpDmq$&@nASElhA*!RVO-aaSR92=3Qd5xNcce}m>-38a8H zqbDNtE2K|>X59~Q-h-wd1AN9nJO=#wE(m=J@v8NZ-$CGW7om9&cMMQZBgBU|%L@_u zrU)TD$Tb?`Y9QYurH~)w-5Ju%0XowGp;0iI`@m%T_$ETvfOt?(bHMjaM`(f;x>_Pa zqz^2afC>PQ1nLWTBgB~xQxPkDvN*-ZL
7SrRhRKo)fbAE&R$w{L9L!7 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

CiH7)f|1t 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 c^oB)6zApSQ9@y +--FILE-- + +--EXPECT-- +SonyModelID was found +Panorama was found +AntiBlur was found -- 2.40.0