diff --git a/ChangeLog b/ChangeLog index b6120bf..2d87c48 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,5 @@ v1.2.0 -* Added support for stills taken in rotated orientation +* Added support for stills taken in rotated orientation (in GUI as well) * Add full support for crop FOV in M20 and SJ5000x * Add support for non-zero stride * Some slight performance optimizations diff --git a/gui/converter.py b/gui/converter.py index d1793a4..f76f6c8 100755 --- a/gui/converter.py +++ b/gui/converter.py @@ -127,6 +127,7 @@ def __init__(self, *args, **kwds): self.tiff_checkbox = wx.CheckBox(self, wx.ID_ANY, _("TIFF")) self.dng_checkbox = wx.CheckBox(self, wx.ID_ANY, _("DNG")) self.thumb_checkbox = wx.CheckBox(self, wx.ID_ANY, _("Thumbnail")) + self.rotate_checkbox = wx.CheckBox(self, wx.ID_ANY, _("Rotation")) self.convert_button = wx.Button(self, wx.ID_ANY, _("Convert")) self.status_text_ctrl = wx.TextCtrl(self, wx.ID_ANY, "", style=wx.TE_MULTILINE | wx.TE_READONLY) self.abort_button = wx.Button(self, wx.ID_ANY, _("Abort")) @@ -156,13 +157,14 @@ def __set_properties(self): self.dng_checkbox.SetToolTip(wx.ToolTip(_("Convert to DNG"))) self.dng_checkbox.SetValue(1) self.thumb_checkbox.SetToolTip(wx.ToolTip(_("Create thumbnail (needed by some editors e.g. darktable)"))) + self.rotate_checkbox.SetToolTip(wx.ToolTip(_("Check if images were taken with rotation enabled in camera"))) self.abort_button.Enable(False) # end wxGlade def __do_layout(self): # begin wxGlade: MainFrame.__do_layout grid_sizer_1 = wx.FlexGridSizer(5, 2, 0, 0) - grid_sizer_2 = wx.GridSizer(1, 3, 0, 0) + grid_sizer_2 = wx.GridSizer(1, 4, 0, 0) grid_sizer_1.Add((20, 20), 0, 0, 0) grid_sizer_1.Add(self.logo_bitmap, 0, wx.ALIGN_CENTER, 0) grid_sizer_1.Add(self.src_dir_text_ctrl, 0, wx.EXPAND, 0) @@ -172,6 +174,7 @@ def __do_layout(self): grid_sizer_2.Add(self.tiff_checkbox, 0, 0, 0) grid_sizer_2.Add(self.dng_checkbox, 0, 0, 0) grid_sizer_2.Add(self.thumb_checkbox, 0, 0, 0) + grid_sizer_2.Add(self.rotate_checkbox, 0, 0, 0) grid_sizer_1.Add(grid_sizer_2, 1, 0, 0) grid_sizer_1.Add(self.convert_button, 0, wx.ALL | wx.EXPAND, 2) grid_sizer_1.Add(self.status_text_ctrl, 0, wx.EXPAND, 0) @@ -218,6 +221,9 @@ def OnConvert(self, event): # wxGlade: MainFrame. if self.thumb_checkbox.IsChecked(): args.append('-m') + if self.rotate_checkbox.IsChecked(): + args.append('-r') + if not self.dest_dir_text_ctrl.IsEmpty(): args.append('-o') args.append(self.dest_dir_text_ctrl.GetValue()) diff --git a/gui/converter.wxg b/gui/converter.wxg index 5faba84..dda515a 100644 --- a/gui/converter.wxg +++ b/gui/converter.wxg @@ -99,7 +99,7 @@ 0 1 - 3 + 4 0 0 @@ -126,6 +126,14 @@ Create thumbnail (needed by some editors e.g. darktable) + + 0 + + + + Check if images were taken with rotation enabled in camera + + diff --git a/gui/locale/en/LC_MESSAGES/converter.mo b/gui/locale/en/LC_MESSAGES/converter.mo index 45bcd79..3c26e29 100644 Binary files a/gui/locale/en/LC_MESSAGES/converter.mo and b/gui/locale/en/LC_MESSAGES/converter.mo differ diff --git a/gui/locale/en/LC_MESSAGES/converter.po b/gui/locale/en/LC_MESSAGES/converter.po index 3f76436..f7fc659 100644 --- a/gui/locale/en/LC_MESSAGES/converter.po +++ b/gui/locale/en/LC_MESSAGES/converter.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-04-13 17:19+0300\n" -"PO-Revision-Date: 2017-04-13 17:19+0300\n" +"POT-Creation-Date: 2017-05-07 10:25+0300\n" +"PO-Revision-Date: 2017-05-07 10:26+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: en\n" @@ -30,7 +30,7 @@ msgstr "" msgid "&Help" msgstr "" -#: converter.py:132 +#: converter.py:133 msgid "Abort" msgstr "" @@ -38,27 +38,31 @@ msgstr "" msgid "About" msgstr "" -#: converter.py:194 +#: converter.py:160 +msgid "Check if images were taken with rotation enabled in camera" +msgstr "" + +#: converter.py:197 msgid "Choose destination folder" msgstr "" -#: converter.py:187 +#: converter.py:190 msgid "Choose source folder" msgstr "" -#: converter.py:130 +#: converter.py:131 msgid "Convert" msgstr "" -#: converter.py:156 +#: converter.py:157 msgid "Convert to DNG" msgstr "" -#: converter.py:155 +#: converter.py:156 msgid "Convert to TIFF" msgstr "" -#: converter.py:158 +#: converter.py:159 msgid "Create thumbnail (needed by some editors e.g. darktable)" msgstr "" @@ -74,7 +78,7 @@ msgstr "" msgid "E&xit\tCtrl-Q" msgstr "" -#: converter.py:204 converter.py:226 +#: converter.py:207 converter.py:232 msgid "Error!" msgstr "" @@ -82,15 +86,19 @@ msgstr "" msgid "Exit" msgstr "" -#: converter.py:204 +#: converter.py:207 msgid "Must select at least one output format (DNG/TIFF)" msgstr "" -#: converter.py:226 +#: converter.py:232 msgid "Must select source folder" msgstr "" -#: converter.py:152 +#: converter.py:130 +msgid "Rotation" +msgstr "" + +#: converter.py:153 msgid "SJCAM RAW Converter" msgstr "" diff --git a/gui/locale/he/LC_MESSAGES/converter.mo b/gui/locale/he/LC_MESSAGES/converter.mo index 6e8a766..881ce18 100644 Binary files a/gui/locale/he/LC_MESSAGES/converter.mo and b/gui/locale/he/LC_MESSAGES/converter.mo differ diff --git a/gui/locale/he/LC_MESSAGES/converter.po b/gui/locale/he/LC_MESSAGES/converter.po index 41d28af..ea629bb 100644 --- a/gui/locale/he/LC_MESSAGES/converter.po +++ b/gui/locale/he/LC_MESSAGES/converter.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-04-13 17:20+0300\n" -"PO-Revision-Date: 2017-04-13 17:27+0300\n" +"POT-Creation-Date: 2017-05-07 10:27+0300\n" +"PO-Revision-Date: 2017-05-07 10:29+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: he\n" @@ -30,7 +30,7 @@ msgstr "&קובץ" msgid "&Help" msgstr "&עזרא" -#: converter.py:132 +#: converter.py:133 msgid "Abort" msgstr "הפסק" @@ -38,27 +38,31 @@ msgstr "הפסק" msgid "About" msgstr "אודות" -#: converter.py:194 +#: converter.py:160 +msgid "Check if images were taken with rotation enabled in camera" +msgstr "יש לבחור אם רוטציה הופעלה במצלמה" + +#: converter.py:197 msgid "Choose destination folder" msgstr "בחר תיקיית יעד" -#: converter.py:187 +#: converter.py:190 msgid "Choose source folder" msgstr "בחר תיקיית מקור" -#: converter.py:130 +#: converter.py:131 msgid "Convert" msgstr "המר" -#: converter.py:156 +#: converter.py:157 msgid "Convert to DNG" msgstr "המר ל-DNG" -#: converter.py:155 +#: converter.py:156 msgid "Convert to TIFF" msgstr "המר ל-TIFF" -#: converter.py:158 +#: converter.py:159 msgid "Create thumbnail (needed by some editors e.g. darktable)" msgstr "ייצר thumbnail (דרוש ע\"י תוכנות מסוימות כגון darktable )" @@ -74,7 +78,7 @@ msgstr "תיקיית יעד" msgid "E&xit\tCtrl-Q" msgstr "&יציאה\tCTRL-Q" -#: converter.py:204 converter.py:226 +#: converter.py:207 converter.py:232 msgid "Error!" msgstr "שגיאה!" @@ -82,15 +86,19 @@ msgstr "שגיאה!" msgid "Exit" msgstr "יציאה" -#: converter.py:204 +#: converter.py:207 msgid "Must select at least one output format (DNG/TIFF)" msgstr "יש לבחור לפחות פורמט אחד (DNG/TIFF)" -#: converter.py:226 +#: converter.py:232 msgid "Must select source folder" msgstr "תיקיית מקור לא נבחרה" -#: converter.py:152 +#: converter.py:130 +msgid "Rotation" +msgstr "רוטציה" + +#: converter.py:153 msgid "SJCAM RAW Converter" msgstr "ממיר SJCAM RAW" @@ -108,7 +116,7 @@ msgstr "" #: converter.py:129 msgid "Thumbnail" -msgstr "" +msgstr "תמונה ממוזערת" #~ msgid "Convert to TIFF as well as DNG" #~ msgstr "המר ל-TIFF בנוסף ל-DNG" diff --git a/gui/locale/messages.pot b/gui/locale/messages.pot index ce9571c..04e2692 100644 --- a/gui/locale/messages.pot +++ b/gui/locale/messages.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-04-13 17:17+0300\n" +"POT-Creation-Date: 2017-05-07 10:24+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -29,7 +29,7 @@ msgstr "" msgid "&Help" msgstr "" -#: converter.py:132 +#: converter.py:133 msgid "Abort" msgstr "" @@ -37,27 +37,31 @@ msgstr "" msgid "About" msgstr "" -#: converter.py:194 +#: converter.py:160 +msgid "Check if images were taken with rotation enabled in camera" +msgstr "" + +#: converter.py:197 msgid "Choose destination folder" msgstr "" -#: converter.py:187 +#: converter.py:190 msgid "Choose source folder" msgstr "" -#: converter.py:130 +#: converter.py:131 msgid "Convert" msgstr "" -#: converter.py:156 +#: converter.py:157 msgid "Convert to DNG" msgstr "" -#: converter.py:155 +#: converter.py:156 msgid "Convert to TIFF" msgstr "" -#: converter.py:158 +#: converter.py:159 msgid "Create thumbnail (needed by some editors e.g. darktable)" msgstr "" @@ -73,7 +77,7 @@ msgstr "" msgid "E&xit\tCtrl-Q" msgstr "" -#: converter.py:204 converter.py:226 +#: converter.py:207 converter.py:232 msgid "Error!" msgstr "" @@ -81,15 +85,19 @@ msgstr "" msgid "Exit" msgstr "" -#: converter.py:204 +#: converter.py:207 msgid "Must select at least one output format (DNG/TIFF)" msgstr "" -#: converter.py:226 +#: converter.py:232 msgid "Must select source folder" msgstr "" -#: converter.py:152 +#: converter.py:130 +msgid "Rotation" +msgstr "" + +#: converter.py:153 msgid "SJCAM RAW Converter" msgstr "" diff --git a/gui/locale/ru/LC_MESSAGES/converter.mo b/gui/locale/ru/LC_MESSAGES/converter.mo index d0ee32b..394a6cb 100644 Binary files a/gui/locale/ru/LC_MESSAGES/converter.mo and b/gui/locale/ru/LC_MESSAGES/converter.mo differ diff --git a/gui/locale/ru/LC_MESSAGES/converter.po b/gui/locale/ru/LC_MESSAGES/converter.po index ed336af..e4c8f19 100644 --- a/gui/locale/ru/LC_MESSAGES/converter.po +++ b/gui/locale/ru/LC_MESSAGES/converter.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-04-13 17:20+0300\n" -"PO-Revision-Date: 2017-04-13 17:28+0300\n" +"POT-Creation-Date: 2017-05-07 10:29+0300\n" +"PO-Revision-Date: 2017-05-07 10:33+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: ru\n" @@ -31,7 +31,7 @@ msgstr "&Фаил" msgid "&Help" msgstr "&Помошь" -#: converter.py:132 +#: converter.py:133 msgid "Abort" msgstr "Остановить" @@ -39,30 +39,33 @@ msgstr "Остановить" msgid "About" msgstr "О программе" -#: converter.py:194 +#: converter.py:160 +msgid "Check if images were taken with rotation enabled in camera" +msgstr "Выбрать есле вращение было выбрано в камере" + +#: converter.py:197 msgid "Choose destination folder" msgstr "Выбрать папку назначения" -#: converter.py:187 +#: converter.py:190 msgid "Choose source folder" msgstr "Выбрать папку источник" -#: converter.py:130 +#: converter.py:131 msgid "Convert" msgstr "Конвертировать" -#: converter.py:156 +#: converter.py:157 msgid "Convert to DNG" msgstr "Конвертировать в DNG" -#: converter.py:155 +#: converter.py:156 msgid "Convert to TIFF" msgstr "Конвертировать в TIFF" -#: converter.py:158 +#: converter.py:159 msgid "Create thumbnail (needed by some editors e.g. darktable)" -msgstr "" -"Добавить thumbnail (нужно для некоторых программ, на пример darktable)" +msgstr "Добавить thumbnail (нужно для некоторых программ, на пример darktable)" #: converter.py:128 msgid "DNG" @@ -76,7 +79,7 @@ msgstr "Папка назначения" msgid "E&xit\tCtrl-Q" msgstr "&Выход\tCTRL-Q" -#: converter.py:204 converter.py:226 +#: converter.py:207 converter.py:232 msgid "Error!" msgstr "Ошибка!" @@ -84,15 +87,19 @@ msgstr "Ошибка!" msgid "Exit" msgstr "Выход" -#: converter.py:204 +#: converter.py:207 msgid "Must select at least one output format (DNG/TIFF)" msgstr "Необходимо выбрать хотя бы один выходной формат (DNG/TIFF)" -#: converter.py:226 +#: converter.py:232 msgid "Must select source folder" msgstr "Папка источник не выбранна" -#: converter.py:152 +#: converter.py:130 +msgid "Rotation" +msgstr "Вращение" + +#: converter.py:153 msgid "SJCAM RAW Converter" msgstr "Конвертер SJCAM RAW" @@ -110,7 +117,7 @@ msgstr "" #: converter.py:129 msgid "Thumbnail" -msgstr "" +msgstr "Миниатюрами" #~ msgid "Convert to TIFF as well as DNG" #~ msgstr "Конвертировать в TIFF в добавок к DNG" diff --git a/src/sjcam_raw2dng.cpp b/src/sjcam_raw2dng.cpp index e90036b..5a51a5d 100644 --- a/src/sjcam_raw2dng.cpp +++ b/src/sjcam_raw2dng.cpp @@ -87,7 +87,7 @@ static void usage(const char *prog, Config &conf) "\t-m, --thumb Add JPEG thumbnails (disabled by default to save disk space and conversion time)\n" "\t-o, --output Output dir (must exist)\n" "\t-t, --tiff Write TIFF image to \".tiff\" (false by default)\n" - "\t-d, --dng Write DNG image to \".dng\" (used by default if no output is supplied)\n", + "\t-d, --dng Write DNG image to \".dng\" (used by default if no output is supplied)\n" "\t-r, --rotated Image was taken in rotated orientation (false by default)\n", prog, conf.m_iThreads);